Mysql数据库root密码管理四法
方法一:
管理员可以在系统命令行中使用mysqladmin命令设置mysql用户的密码。
使用mysqladmin设置密码的命令语法如下:
mysqladmin -u用户名 -p旧密码 password 新密码
如果数据库刚刚被初始化,root用户还没有密码,这种情况下,可以不指定旧密码,所以-p可以省略,直接指定新密码即可.
方法二:
使用root用户登录以后,使用SET PASSWORD命令设置用户密码,命令如下
#mysql -u root
mysql> SET PASSWORD FOR 'user'@'IPorHost' = PASSWORD('newpassword');
方法三:
注:使用如下方法修改用户密码时,需确定mysql的版本。
在mysql5.6以及之前的版本中,可以使用如下方法修改用户密码。
使用mysql的root用户登录以后,修改mysql.user表中对应用户的password字段,命令如下
mysql> update mysql.user set password = password('密码') where user='用户名';
注意,上述命令修改用户密码时,不会区分用户连接数据库时所在的host,什么意思呢,就是说,如果同时存在zsy@localhost与zsy@127.0.0.1,那么这两个用户的密码都会被更改,如果想要针对某个host下的某个用户设定密码需要在where字句中加入过滤条件。
在mysql5.7中,mysql.user表的password字段已经被更改为authentication_string字段,也就是说,mysql5.7中,将使用authentication_string字段保存用户的密码。
所以,如果想要在mysql5.7中使用上述方法修改用户的密码,则需要使用如下语句。
mysql> update mysql.user set authentication_string = password('密码') where user='用户名';
方法四:
如果忘记了mysql的root用户的密码,可以使用如下方法,重置root密码。
1.停止当前mysql进程。
2.mysql进程停止后,使用如下命令启动mysql,可以绕过用户验证。
# mysqld_safe --skip-grant-tables &
3.完成上述步骤后,使用如下命令登录数据库
# mysql -uroot
4.登录后使用之前说过的方法,修改root用户密码即可。
mysql> UPDATE mysql.user SET password=PASSWORD("new password") WHERE user='root';
5.刷新后退出
mysql> FLUSH PRIVILEGES;
6.停止数据库以后,按照正常的方式重启数据库,使用新密码登录即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)