我的Mysql數(shù)據(jù)庫在云服務(wù)器上,很久沒有使用了,現(xiàn)在換了新的電腦 找不到原來的密碼。
我先用Xshell通過主機(jī)名(ip地址) +linux的用戶密碼連接到主機(jī)

找到MySQL配置文件,我的是MySQL5.7,在

打開之后需要在 [mysqld] 下面添加這樣一條命令
skip-grant-tables
?這大概是mysql的用戶權(quán)限表
vim操作就不詳細(xì)說了,相信大家都會(huì),:wq保存退出。
然后重啟數(shù)據(jù)庫,我的命令是
service mysql restart
輸入
mysql -u root -p?
然后他會(huì)叫你輸入密碼,直接敲回車就可以,不出意外就進(jìn)去了

然后use mysql 切換到mysql數(shù)據(jù)庫,沒錯(cuò)就是mysql數(shù)據(jù)庫的mysql數(shù)據(jù)庫,它里面有個(gè)user表 下面執(zhí)行sql語句
update user set authentication_string=password('123456') where user='root';
將authentication_string 設(shè)成 123456?大概是這意思,它說query ok ,1row affected 意思就是真的OK了 不信的話你可以select查詢一下

然后
flush privileges;
輸入這個(gè)刷新 一下權(quán)限。(很重要?。。。?/p>

然后
?vim /etc/mysql/mysql.conf.d/mysqld.cn

把配置文件改回去,保存退出之后,再次重啟數(shù)據(jù)庫
然后正常登錄發(fā)現(xiàn) 密碼123456能夠正常登錄,不輸入密碼的卻不行了。
借鑒:https://baijiahao.baidu.com/s?id=1598051082885355242&wfr=spider&for=pc
備注:(摘抄,如果有錯(cuò)誤的話)
如果出現(xiàn):ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
意思就是說你密碼現(xiàn)在的規(guī)則不行,規(guī)則什么不行呢?比如密碼長度啊,是否純數(shù)字啊 大小寫混用啊 等等。別急有辦法解決。這時(shí)候你只需要:
set global validate_password_policy=0; set global validate_password_mixed_case_count=2;
這下哈哈了吧 policy 0就是純數(shù)字OK的
case_count =2,就是最低8位密碼,如果是1或者小于1默認(rèn)最低4位密碼。