Ubuntu mysql5.7 root用户看不到数据库

做了一些privilege相关的操作,root用户突然找不到系统的数据库了,失去了root用户的权限,找了好久才解决:

  1. 关闭数据库

    sudo /etc/init.d/MysqL stop

  2. 启动安全模式数据库

    MysqLd_safe --skip-grant-tables &

  3. 登录数据库,此时已是root用户,查看root用户

    MysqL

    > use MysqL;

    > select user,host from user;

  4. 修改root用户权限

updateuserset
`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'
whereuser='root'andhost='localhost';

最后重启数据库 /etc/init.d/MysqL restart

如果碰到忘记root密码也可以采用上面的方式登录root账号,

update user set authentication_string=password('new password') where user='root';

相关文章

目录前言一、创建Hadoop用户二、更新apt和安装Vim编辑器三、...
原文连接:https://www.cnblogs.com/yasmi/p/5192694.html ...
电脑重启后,打开VirtualBox,发现一直用的虚拟机莫名的消失...
参见:https://blog.csdn.net/weixin_38883338/article/deta...
Ubuntu 18.04 LTS 已切换到 Netplan 来配置网络接口。Netpla...
介绍每个 Web 服务都可以通过特定的 URL 在 Internet 上访问...