问题描述
在使用远程开发机上下载mysql后发现重新空密码连接时,会导致数据库表显示不全并且报错,查了相关问题,总结一下自己的解决方案。
解决办法
- 配置mysql
vim ${JUMBO_ROOT}/etc/mysql/my.cnf
(注意{JUMBO_ROOT}
是我安装mysql的路径,注意替换为自己的路径) - 修改配置文件
在[mysql]下增加skip-grant-tables
(跳过权限无密码登录,此时登录成功后再用show databases;
指令,可以看到原来所有的数据库) - 重启mysql
sh ${JUMBO_ROOT}/share/mysql/mysql.server restart
- 设置密码
重新进入mysql后,使用指令设置密码update user set password=password("新密码") where user="root"
- 删除空用户
delete from user where user='';
flush privileges;
并且刷新权限
quit
退出 - 修改配置文件
将步骤2中的修改后的配置文件恢复,删去skip-