MySQL密码管理与操作

MySQL密码操作:

从5.7开始,mysql是强制要求重新修改密码再操作!!!

刚登陆mysql时:会有随机密码,登录输入随机密码,然后修改密码

mysql -uroot -p“随机密码”

用户密码修改

·使用SET命令修改用户密码

set password=password('123123');  //修改当前登陆用户密码
set password for 'lisi'@'localhost'=password('123456');  //修改其他用户密码

方法1:

mysqladmin -uroot -p'123456' password # 是cmd或者shell命令 

方法2:

基于密码插件(mysql_secure_installation)完成修改 

方法3:

# 新版本
ALTER USER root@localhost identified by '123456';  
# 旧版本 
UPDATE USER SET PASSWORD = PASSWORD('新密码') WHERE USER = '用户名';

方法4:

mysql> update mysql.user set authentication_string=password('123456')
-> where user='root' and host='localhost'; 

方法5:

set password for 'root'@'localhost' = 新密码; 				# 新版本 
SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');	    # 旧版本 

方法6:

也可以使用grant这个综合性的命令完成。 
grant all privileges on *.* to root@'localhost' identified by "123456";

方法7:

通过SQL来修改密码:
set password for 'root'@'localhost' = 新密码;	
alter user 'root'@'localhost'  identified by '新密码';
grant all privileges on *.* to root@'localhost' identified by "123456";

遗忘root密码的解决方法

如果root密码忘记了
可以使用系统的root账号,来强制登录MySQL服务器中
在配置文件中启用:skip_grant_tables,重启MySQL服务器
表示该MySQL跳过权限校验
mysql命令直接进入到MySQL服务器

·先关闭正在运行中的MySQL进程
	systemctl stop mysqld.service 
	netstat -ntap | grep 3306     //查询不到3306端口信息,则表示mysql进程已结束
	killall mysqld    			 //**如果正常的停止命令无法关闭进程,则可使用该命令

·使用跳过user表验证的方式登陆
	mysqld --skip-grant-tables  

更改密码

输入上一条命令后重新打开新的终端登陆

mysql -u root   //新终端登陆
update mysql.user set authentication_string=password('abcabc') where user='root';
//更改用户表(user)中的密码项
flush privileges;    //刷新,刷新之后方能使用新密码登陆系统

删除 skip-grant-tables,重启数据库验证新密码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值