Ubuntu服务器安装了mysql,但是忘记了密码,那么我们需要在/etc/mysql下的my.cnf(按个人配置文件目录决定,默认应该在同样的位置)添加kip-grant-tables这行代码。
添加后
1. 重新启动服务器
sudoservice mysql restart
2. 用空密码进入mysql
@ubuntu:~$ mysql
3. 切换到mysql库
mysql> use mysql
4. 修改数据库密码,毕竟没密码还是不安全。
update userset password=PASSWORD("你自己的密码") where user='root';
5. 成功后退出数据库
mysql>quit
6. 回到/etc/mysql/my.cnf,把刚加进去的kip-grant-tables代码删除或者注释掉。
7. 重启mysql服务,用新密码登录
sudo service mysql restart
-------------------------------------------------------------------------------
密码修改到此结束,pc级Navicat连接测试不成功,首先确保服务器开通了3306端口,如果没开通,进行相应方法开通。开通后还是连接不成功,主要是因为mysql没开放所有权限。进入mysql,输入
mysql> GRANT ALL PRIVILEGES ON *.* TO'root'@'localhost' IDENTIFIED BY '你的密码' WITH GRANTOPTION;
(允许所有操作权限)
代码执行成功后,重启一下mysql,连接成功。
Ps:如果有顾虑,可在使用后输入指令
mysql> GRANT ALLPRIVILEGES ON *.* TO ' root '@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;
还原为本地操作权限。