知道密码,修改mysql数据库密码
使用 set password 命令修改密码;
set password for root@localhost = password('新密码')
用mysqladmin 命令修改密码; mysqladmin -u用户名 -p旧密码 password 新密码 命令在命令行中运行:
mysqladmin -uroot -p123 password 123456
验证:
直接修改mysql数据库中的user表的authentication_string列,因为用户信息存储在user表中;
mysql> use mysql
mysql> update user set authentication_string=password('新密码') where user='用户名' and host='localhost';
# 刷新用户权限
mysql> flush privileges;
重新登录界面: 注意:如果mysql版本为5.7以下,数据库user表中密码字段是password,所以将 authentication_string改为password。 我的数据库版本为5.7,使用password报错。
忘记root密码,修改mysql数据库密码
在windows系统下
关闭电脑上的mysql服务; 用键盘输入win+R,打开DOS窗口,使用cd命令跳转到mysql\bin目录; 在DOS命令行输入mysqld --skip-grant-tables 回车。其中**–skip-grant-tables** 是启动MySQL服务的时候跳过权限表认证,即不用输入密码进入mysql; 重新再打开一个DOS窗口(因为刚才那个DOS窗口已经不能动了)注意不能关闭,使用cd命令跳转到mysql\bin目录,输入mysql回车,如果成功,将出现MySQL提示符 >; 连接系统自带权限数据库mysql,并且修改数据库中user表的authentication_string列;
mysql> use mysql
Database changed
mysql> update user set authentication_string=password('123456') where user='root
' and host='localhost';
Query OK, 1 row affected, 1 warning (0.02 sec)
Rows matched: 1 Changed: 1 Warnings: 1
mysql> flush privileges;
Query OK, 0 rows affected (0.16 sec)
退出mysql,重新打开mysql服务,使用用户名root和刚才设置的新密码123456登录,验证。 注意:验证的时候不要忘记重新启动服务。
|