這篇文章介紹了linux系統(tǒng)linux忘記密碼,重置密碼,忽略表名、列名大小寫的方法,需要的朋友可以參考下
在linunx系統(tǒng)剛裝的MySQL,忘記曾經(jīng)設(shè)置的密碼或者安裝過程無法設(shè)置密碼時(shí),試圖用常用的密碼猜測,如:1,11,111,1111,11111,111111,123456,000000,1234321等等最簡單的默認(rèn)密碼來試探,結(jié)果試遍了也不對(duì),還是無法進(jìn)入mysql。原因可能是你當(dāng)初設(shè)置的密碼比較復(fù)雜后來給忘了,更可能的原因是你安裝過程中沒允許設(shè)置密碼,這樣的密碼一般是MySQL隨機(jī)生成的一大串由大小寫字母、數(shù)字和符號(hào)組合成的復(fù)雜密碼。這樣的密碼不需要白費(fèi)力去試探了,這就需要通過特殊的方式來解決,就是改配置文件/etc/my.cnf。
步驟:
1.輸入su -及密碼,進(jìn)入root權(quán)限。
2.停止MySQL,輸入service mysqld stop
3.輸入vi /etc/my.cnf,進(jìn)入配置文件my.cnf進(jìn)行編輯
4.找到[mysqld],在下面加入一行skip-grant-tables=1
5.Linux系統(tǒng)剛安裝的mysql一般對(duì)數(shù)據(jù)庫的表名大小寫是敏感的,可在[mysqld]下再加入一行
lower_case_table_names=1,表示忽略大小寫,等于0則代表對(duì)大小寫敏感
6.光標(biāo)移到最下,輸入:wq(有冒號(hào))自動(dòng)保存退出
7.啟動(dòng)mysql,輸入service mysqld start
8.輸入mysql -uroot -p,提示輸出密碼時(shí),直接回車不管,就可以進(jìn)入
9.輸入use mysql;
10.改密碼。輸入update user set password=PASSWORD(‘12345678’) where user=”root”;??? —將root密碼設(shè)置為12345678
11.輸入exit,退出
12.別忘了把skip-grant-tables=1注掉,再次輸入vi /etc/my.cnf,找到剛才加的skip-grant-tables=1前面加#注掉,:wq,退保存出。
13.重啟mysql,service mysql restart,
14.再次輸入mysql -uroot -p,輸入密碼12345678,登錄成功!
注:
linux下mysql安裝完后是默認(rèn):區(qū)分表名的大小寫,不區(qū)分列名的大小寫。
用root帳號(hào)登錄后,在/etc/my.cnf 中的[mysqld]后添加添加lower_case_table_names=1,重啟MYSQL服務(wù),這時(shí)已設(shè)置成功:不區(qū)分表名的大小寫。
其中 0:區(qū)分大小寫,1:不區(qū)分大小寫
MySQL在Linux下數(shù)據(jù)庫名、表名、列名、別名大小寫規(guī)則是這樣的:
1、數(shù)據(jù)庫名與表名是嚴(yán)格區(qū)分大小寫的;
2、表的別名是嚴(yán)格區(qū)分大小寫的;
3、列名與列的別名在所有的情況下均是忽略大小寫的;
4、linux也是嚴(yán)格區(qū)分大小寫的;
MySQL在Windows下都不區(qū)分大小寫。