mysqladmin命令
mysqladmin -u username -h localhost -p password 'password'; #'password'为设置密码
。
注:mysqladmin即可修改root用户,也可修改普通用户,须带-h localhost
参数。
例:
SET PASSWORD命令
SET PASSWORD FOR 'username'@'localhost' = PASSWORD('passwrod');
或SET PASSWORD = PASSWORD('password'); #修改自身
注:password可为密文,密文修改SET PASSWORD FOR 'username'@'localhost' ='密文'
或SET PASSWORD = '密文';
。
例:
GRANT命令
GRANT USAGE ON *.* TO 'username'@'password' IDENTIFIED BY 'password';
或GRANT USAGE ON *.* TO 'username'@'password' IDENTIFIED BY PASSWORD '密文';
注:不影响用户的权限。
例:
修改mysql.user数据表
MySQL5.6:UPDATE mysql.user SET password = PASSWORD('@AAaa63473250') WHERE user = 'username';
MySQL5.7及以上:UPDATE mysql.user SET authentication_string = PASSWORD('password') WHERE user = 'username';
例:
忘记root密码
- 编辑MySQL配置文件my.cnf,在[mysqld]下添加
skip-grant-tables=1
配置项,使MySQL启动时跳过密码验证。
例:
- 重新启动MySQL服务
service mysqld restart
例:
- 使用root登录MySQL
mysql -uroot -p
注:不输入密码。
例:
- 采用
SET PASSWORD
或GRANT
或修改mysql.user表
方法修改密码。
例:
5. 删除my.cnf文件中的
skip-grant-tables=1
配置项,或将skip-grant-tables=1
修改为skip-grant-tables=0
。
例:
- 重启MySQL服务。
service mysqld restart
例:
注:本文根据优快云技能树整理。