概述
#此方法是基于5.7的版本 其他版本大致应该相同
2.修改MySQL的登录设置:
# vi /etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables
例如:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables
保存并且退出vi。
service mysqld restart
进入 mysql 此时已经没有密码
mysql -u root -p 直接进入
修改密码 5.7密码字段是authentication_string
特别注意 5.7版本密码必须有数字 大小写字母 特殊符号 例如 Yl19861212@
可以使用
ALTER USER USER() IDENTIFIED BY 'Yl19861212@'; 或者
update user set authentication_string=password('Yl19861212@') where user=root;
然后 flush privileges
退出mysql
exit
重启服务
service mysql restart
至此 密码修改完成
my.cnf里面需要把skip-grant-tables 注释
不然 重启时密码又会被置为空
将5.1的数据库还原到5.7环境,因为user表结构不一致,此时需要绕过用户验证
skip-grant-tables
否则 会无法启动服务
跨版本还原 推荐mysqldump 逻辑备份 然后导出用户信息,还原
使用第三方工具 会导致系统表结构出错
2.修改MySQL的登录设置:
# vi /etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables
例如:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables
保存并且退出vi。
service mysqld restart
进入 mysql 此时已经没有密码
mysql -u root -p 直接进入
修改密码 5.7密码字段是authentication_string
特别注意 5.7版本密码必须有数字 大小写字母 特殊符号 例如 Yl19861212@
可以使用
ALTER USER USER() IDENTIFIED BY 'Yl19861212@'; 或者
update user set authentication_string=password('Yl19861212@') where user=root;
然后 flush privileges
退出mysql
exit
重启服务
service mysql restart
至此 密码修改完成
my.cnf里面需要把skip-grant-tables 注释
不然 重启时密码又会被置为空
将5.1的数据库还原到5.7环境,因为user表结构不一致,此时需要绕过用户验证
skip-grant-tables
否则 会无法启动服务
跨版本还原 推荐mysqldump 逻辑备份 然后导出用户信息,还原
使用第三方工具 会导致系统表结构出错
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30127122/viewspace-2136935/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/30127122/viewspace-2136935/
最后
以上就是舒服老虎为你收集整理的mysql忘记密码skip-grant-tables的全部内容,希望文章能够帮你解决mysql忘记密码skip-grant-tables所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复