這篇文章主要介紹了運維中lower_case_table_names是什么意思,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著(zhù)大家一起了解一下。
1 簡(jiǎn)介
在MySQL中,數據庫對應數據目錄中的目錄。數據庫中的每個(gè)表至少對應數據庫目錄中的一個(gè)文件(也可能是多個(gè),取決于存儲引擎)。因此,所使用操作系統的大小寫(xiě)敏感性決定了數據庫名和表名的大小寫(xiě)敏感性。
在大多數Unix中數據庫名和表名對大小寫(xiě)敏感,而在Windows中對大小寫(xiě)不敏感。一個(gè)顯著(zhù)的例外情況是Mac OS X,它基于Unix但使用默認文件系統類(lèi)型(HFS+),對大小寫(xiě)不敏感。然而,Mac OS X也支持UFS卷,該卷對大小寫(xiě)敏感,就像Unix一樣。
變量lower_case_file_system說(shuō)明是否數據目錄所在的文件系統對文件名的大小寫(xiě)敏感。ON說(shuō)明對文件名的大小寫(xiě)不敏感,OFF表示敏感。
例如在windows下查看:
說(shuō)明windows系統對大小寫(xiě)不敏感,mysql也默認設置為對大小寫(xiě)不敏感。
2 大小寫(xiě)區分規則
linux下:
數據庫名與表名是嚴格區分大小寫(xiě)的;
表的別名是嚴格區分大小寫(xiě)的;
列名與列的別名在所有的情況下均是忽略大小寫(xiě)的;
變量名也是嚴格區分大小寫(xiě)的;
windows下:
都不區分大小寫(xiě)
Mac OS下(非UFS卷):
都不區分大小寫(xiě)
3 參數說(shuō)明(lower_case_table_names)
unix下lower_case_table_names默認值為 0 .Windows下默認值是 1 .Mac OS X下默認值是 2 .
4 由大小寫(xiě)敏感轉換為不敏感方法
如果原來(lái)所建立庫及表都是對大小寫(xiě)敏感的,想要轉換為對大小寫(xiě)不敏感,主要需要進(jìn)行如下3步:
1.將數據庫數據通過(guò)mysqldump導出。
2.在my.cnf中更改lower_case_tables_name = 1,并重啟mysql數據庫。
3.將導出的數據導入mysql數據庫。
5 注意事項
為了避免大小寫(xiě)引發(fā)的問(wèn)題,一種推薦的命名規則是:在定義數據庫、表、列的時(shí)候全部采用小寫(xiě)字母加下劃線(xiàn)的方式,不使用任何大寫(xiě)字母
在任何系統中可以使用lower_case_tables_name=1。使用該選項的不利之處是當使用SHOW TABLES或SHOW DATABASES時(shí),看不出名字原來(lái)是用大寫(xiě)還是小寫(xiě)。
請注意在Unix中如果以前l(fā)ower_case_tables_name = 0將lower_case_tables_name設置為1之前,重啟mysqld之前,必須先將舊的數據庫名和表名轉換為小寫(xiě)。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站