Linux MySQL 用户权限问题

来源:互联网 发布:知乎 剑侠叁 编辑:程序博客网 时间:2024/04/30 00:05

首先停止mysql服务:service mysqld stop

加参数启动mysql:/usr/bin/mysqld_safe --skip-grant-tables & 

root用户登陆系统:mysql -u root -p mysql

切换数据库:use mysql

显示所有的表:show tables;

查看user表中root用户的localhost权限:select * from user where user='root' and host='localhost'

在显示的列表中显示:root用户的localhost的权限都是'N',表示root用户本地登陆不具有权限

修改root用户的localhost权限:

update user set  
  `Select_priv` = 'Y',
  `Insert_priv` = 'Y',
  `Update_priv` = 'Y',
  `Delete_priv` = 'Y',
  `Create_priv` = 'Y',
  `Drop_priv` = 'Y',
  `Reload_priv` = 'Y',
  `Shutdown_priv` = 'Y',
  `Process_priv` = 'Y',
  `File_priv` = 'Y',
  `Grant_priv` = 'Y',
  `References_priv` = 'Y',
  `Index_priv` = 'Y',
  `Alter_priv` = 'Y',
  `Show_db_priv` = 'Y',
  `Super_priv` = 'Y',
  `Create_tmp_table_priv` = 'Y',
  `Lock_tables_priv` = 'Y',
  `Execute_priv` = 'Y',
  `Repl_slave_priv` = 'Y',
  `Repl_client_priv` = 'Y',
  `Create_view_priv` = 'Y',
  `Show_view_priv` = 'Y',
  `Create_routine_priv` = 'Y',
  `Alter_routine_priv` = 'Y',
  `Create_user_priv` = 'Y',
  `Event_priv` = 'Y',
  `Trigger_priv` = 'Y',
  `Create_tablespace_priv` = 'Y'
  where user='root' and host='localhost
更新一下:flush privileges;
然后重新启动下mysql service mysqld stop

可以解决问题了

0 0
原创粉丝点击