更新 MySQL root 的密码
大约 2 分钟
前言
最近在 ubuntu 系统上安装了 MySQL, 但是安装时没有提示输入 root 用户密码, 网上胡乱找了一通, 这才知道 MySQL 5.7 以上版本的 root 密码都是随机生成的, 所以这里提供解决 MySQL 5.7 版本的 root 用户重置密码问题。
安装 MySQL
apt-get install mysql-cilent mysql-server 解决MySQL 5.7版本的root用户重置密码问题
安装之后可以使用下面的命令来检查是否安装成功
sudo netstat -tap | grep mysql
netstat -tap | grep mysql
登录 MySQL
mysql -u root -p
输入密码, 如果可以进入则下面的不用看了;如果提示不能登入, 则我们尝试启用安全模式登入 MySQL, 这样可以绕过密码登入, 登入后再修改密码。
修改密码
修改配置文件
my.cnf
=> 不同系统的配置文件名以及存放路径不一致, 但一定能在 /etc/mysql
里找到
在 [mysqld] 小节下添加一行, 这一行配置让 mysqld 启动时不对密码进行验证
[mysqld]
skip - grant - tables = 1
修改完成之后保存重启 MySQL 服务
/etc/init.d/mysql restart
无密码登录 MySQL 修改密码
mysql -u root -p
执行以下操作
mysql> use mysql;
mysql> update user set authentication_string=PASSWORD("这里输入你要改的密码") where User='root';#更改密码
mysql> update user set plugin="mysql_native_password";#如果没这一行可能也会报一个错误,因此需要运行这一行
mysql> flush privileges;#更新所有操作权限
mysql> quit
完成配置重启
删掉或者注释 skip-grant-tables=1
该行配置
修改完成之后保存重启 MySQL 服务
/etc/init.d/mysql restart
之后使用设置的密码登录即可
mysql -u root -p
附上完全卸载 MySQL 命令
apt-get autoremove mysql-*
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P