user 发表于 2024-1-7 21:27:50

Linux下修改Mysql密码的三种方式

本帖最后由 user 于 2024-1-7 21:35 编辑


一、知道原来的myql数据库的root密码;
1、 在终端命令行输入 mysqladmin -u root -p password "新密码" 回车 ,Enter password: 【输入原来的旧密码】
2、 登录mysql系统修改, mysql -uroot -p 回车 Enter password: 【输入原来的密码】
mysql>use mysql;

mysql> update user set password=password("新密码") where user='root';      

mysql> flush privileges;

mysql> exit;
然后使用刚才输入的新密码即可登录。
二、不知道原来的myql的root的密码;
首先,你必须要有操作系统的root权限了。需要先停止mysql服务,/etc/init.d/mysqld stop当提示mysql已停止后进行下一步操作Shutting down MySQL. SUCCESS!在终端命令行输入
mysqld_safe --skip-grant-tables &         【登录mysql系统】

输入mysql登录mysql系统
mysql> use mysql;
mysql> UPDATE user SET password=password("新密码") WHERE user='root';      【密码注意大小写】
mysql> flush privileges;
mysql> exit;

重新启动mysql服务这样新的root密码就设置成功了。三、修改root登录权限当你修改好root密码后,很有可能出现这种情况ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)这是因为root登录权限不足,具体修改方法如下需要先停止mysql服务,/etc/init.d/mysqld stop当提示mysql已停止后进行下一步操作Shutting down MySQL. SUCCESS!
在终端命令行输入mysqld_safe --skip-grant-tables &         【登录mysql系统】
输入mysql登录mysql系统mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
mysql> flush privileges;
mysql> exit;
然后重新启动mysql服务就可以了。备注:如果Mysql的版本是5.7及以上的话update语句如下:mysql> update user set authentication_string=passworD("test") where user='root';
页: [1]
查看完整版本: Linux下修改Mysql密码的三种方式