Linux中修改Mysql数据库root密码

ac6eddc451da81cb037c289d5366d016082431c3.jpg

一、拥有原来的myql的root的密码;
方法一:
在mysql系统外,使用mysqladmin

mysqladmin -u root -p password "newpasswd"Enter password: 【输入原来的密码】


方法二:
通过登录mysql系统,

mysql -uroot -pEnter password: 【输入原来的密码】mysql>use mysql;mysql> update user set password=passworD("newpasswd") where user='root';mysql> flush privileges;mysql> exit;

二、忘记原来的myql的root的密码;

首先,你必须要有Linux的root权限了,因为需要关闭密码登陆或者开启mysql safe哦~
类似于安全模式登录系统,有人建议说是pkill mysql,但是并不建议。

因为当你执行了这个命令后,会导致这样的状况:
/etc/init.d/mysqld status
mysqld dead but subsys locked
这样即使你是在安全模式下启动mysql都未必会有用的,所以一般是这样/etc/init.d/mysqld stop,如果你不幸先用了pkill,那么就start一下再stop咯。
mysqld_safe --skip-grant-tables &
&,表示在后台运行,不再后台运行的话,就再打开一个终端咯。

mysqlmysql> use mysql;mysql> UPDATE user SET password=password("newpasswd") WHERE user='root';   mysql> flush privileges;mysql> exit;

                      
##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。


跳过密码登录:

MySQL配置文件my.ini中,在[mysqld]下添加skip-grant-tables,关闭mysql服务并重新开启; 

输入命令:mysql -u root -p 回车后,要求输入密码,直接回车跳过,则直接进入MySQL

mysql -uroot -pEnter password: 【输入原来的密码】mysql>use mysql;mysql> update user set password=passworD("newpasswd") where user='root';mysql> flush privileges;mysql> exit;


Leave a Comment