這篇文章介紹了Linux系統MySQL忘記密碼,重設密碼,忽略表名、列名大小寫的方法,需要的朋友可以參考下
在linunx系統剛裝的MySQL,忘記曾經設定的密碼或安裝過程無法設定密碼時,試圖用常用的密碼猜測,如:1,11,111,1111,11111,111111,123456,000000,1234321等等最簡單的預設密碼來試探,結果試遍了也不對,還是無法進入mysql。原因可能是你當初設定的密碼比較複雜後來給忘了,更可能的原因是你安裝過程中沒允許設定密碼,這樣的密碼一般是MySQL隨機產生的一大串由大小寫字母、數字和符號組合成的複雜密碼。這樣的密碼不需要白費力去試探了,這就需要用特殊的方式來解決,就是改設定檔/etc/my.cnf。
步驟:
1.輸入su -及密碼,進入root權限。
2.停止MySQL,輸入service mysqld stop
3.輸入vi /etc/my.cnf,進入設定檔my.cnf進行編輯
4.找到[mysqld],在下面加入一行skip-grant-tables=1
5.Linux系統剛安裝的mysql一般對資料庫的表名大小寫是敏感的,可在[mysqld]下再加入一行
lower_case_table_names=1
,表示忽略大小寫,等於0則代表對大小寫敏感
#6.遊標移到最下,輸入:wq(有冒號)自動儲存退出
7.啟動mysql,輸入service mysqld start
8.輸入mysql -uroot -p,提示輸出密碼時,直接回車不管,就可以進入
9.輸入use mysql;
10.改密碼。輸入update user set password=PASSWORD('12345678') where user="root";
---將root密碼設定為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安裝完後是預設:區分錶名的大小寫,不區分列名的大小寫。
用root帳號登入後,在/etc/my.cnf 中的[mysqld]後面新增lower_case_table_names=1,重新啟動MYSQL服務,這時已設定成功:不區分錶名的大小寫。
其中0:區分大小寫,1:不區分大小寫
MySQL在Linux下資料庫名稱、表名、列名、別名大小寫規則是這樣的:
1、資料庫名稱與表名是嚴格區分大小寫的;
2、表的別名是嚴格區分大小寫的;
# 3、列名與列的別名在所有的情況下均是忽略大小寫的;
4、變數名稱也是嚴格區分大小寫的;
MySQL在Windows下都不區分大小寫。
以上是詳細介紹Linux系統MySQL忘記密碼,重設密碼,忽略表名、列名大小寫的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!