问题:Ubuntu服务器,输入 mysql -v
直接进入数据库,这是多么可怕的一件事!
解决:
- 修改root 用户密码为空
use mysql
然后 输入
update user set plugin='mysql_native_password',authentication_string='' where user='root';
- 修改配置文件
打开目录 /etc/mysql/mysql.conf.d ,编辑 mysqld.cnf 文件,将 skip-grant-tables
这行注释掉(前面加 #
)
保存后,重启mysql, 输入
sudo service mysql restart
- 重新设置root 密码
然后 输入
mysql -uroot
按回车键,直接进入。
输入
ALTER user 'root'@'localhost' IDENTIFIED BY '123456';
退出mysql 后,尝试无密码或者-v 的方式进入,被禁止。
输入密码登录,成功。
反思:mysqld.conf 配置文件中 skip-grant-tables 语句是之前忘了root 密码,重置密码时加的,修改配置文件后一定要修改回来。