Linux中Mysql root用户看不到mysql库问题解决方式

mac2022-06-30  87

第一种方式:

1.首先停止MySQL服务:service mysqld stop2.加参数启动mysql:/usr/bin/mysqld_safe --skip-grant-tables & 然后就可以无任何限制的访问mysql了3.root用户登陆系统:mysql -u root -p mysql4.切换数据库:use mysql5.显示所有的表:show tables;这里就可以访问表了6.查看user表中root用户的localhost权限:select * from user where user='root' and host='localhost'7.在显示的列表中显示:root用户的localhost的权限都是'N',表示root用户本地登陆不具有权限8.修改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  9.更新一下:flush privileges;  10.然后重新启动下mysql,可以解决问题了

第一种不行 采用第二种:

删除data中Mysql文件:

 

删除 mysql之后执行: ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/mysql

就应该好了

转载于:https://www.cnblogs.com/owenma/p/7073297.html

最新回复(0)