忘记数据库密码怎么办?
第一种方式:
找到数据库的配置文件my.cnf,
vim /etc/my.cnf
#其实在生产环境中加第二条,如果是测试环境不用加第二条,第二条是防止数据库在无需密 码和用户的情况下黑客也能连进去
skip-grant-tables
skip-networking

重启mysqld
systemctl restart mysqld
然后修改密码
1)修改密码第一种方式
flush privileges; #刷新一下
alter mysql.user root@'localhost' identified by 'new_password';
2)修改密码第二种方法
8.0+版本
#可以看一下select user,host,plugin,authentication_string from mysql.user;
#如果root的plugin(加密工具)是caching_sha2_password或者sha256_password:
SELECT CONCAT('*', UPPER(SHA2('new_password', 256))) AS hashed_password;
#生成加密的密码哈希值
update mysql.user set authentication_string=' new_password' where user='root' and host='localhost';
#注意
authentication_string字段必须存储加密后的密码哈希值,不能直接写入明文密码flush privileges; #刷新一下
5.7及以下版本
UPDATE mysql.user SET password = PASSWORD('123456') WHERE user = 'root' AND host = 'localhost';
flush privileges; #刷新一下
然后回到配置文件把刚刚那两条命令删除重启
systemctl restart mysqld
第二种方式(适用于测试环境,部分版本mysql)
清空mysql的所有初始化的数据,然后重启就回到了初始安装状态。
systemctl stop mysqld
rm -rf /var/lib/mysql/*
systemctl restart mysqld

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐




所有评论(0)