MySQL大小寫敏感問題lower_case_table_names & lower_case_file_system
〇 lower_case_file_system
該引數是用於描述data目錄所在的作業系統是否為大小寫敏感,該引數為bool型別,但無法修改。
0 -- 大小寫敏感
1 -- 大小寫不敏感
比如跑在linux上的都是OFF或者0。
〇 lower_case_table_names
該引數為靜態,可設定為0、1、2。
0 -- 大小寫敏感。(Unix,Linux預設)
建立的庫表將原樣儲存在磁碟上。如create database TeSt;將會建立一個TeSt的目錄,create table AbCCC ...將會原樣生成AbCCC.frm。
SQL語句也會原樣解析。
1 -- 大小寫不敏感。(Windows預設)
建立的庫表時,MySQL將所有的庫表名轉換成小寫儲存在磁碟上。
SQL語句同樣會將庫表名轉換成小寫。
如需要查詢以前建立的Test_table(生成Test_table.frm檔案),即便執行select * from Test_table,也會被轉換成select * from test_table,致使報錯表不存在。
2 -- 大小寫不敏感(OS X預設)
建立的庫表將原樣儲存在磁碟上。
但SQL語句將庫表名轉換成小寫。
修改lower_case_table_names導致的常見不良隱患:
如果在lower_case_table_names=0時,建立了含有大寫字母的庫表,改為lower_case_table_names=1後,則會無法被查到。
注意事項:
將預設的lower_case_tables_name為0設定成1,需先將已經存在的庫表名轉換為小寫:
1)針對僅表名存在大寫字母的情況:
①、lower_case_tables_name=0時,執行rename table成小寫。
②、設定lower_case_tables_name=1,重啟生效。
2)針對庫名存在大寫字母的情況:
①、lower_case_tables_name=0時,使用mysqldump匯出,並刪除老的資料庫。
②、設定lower_case_tables_name=1,重啟生效。
③、匯入資料至例項,此時包含大寫字母的庫名已轉換為小寫。
轉換操作需要自行測試,不同作業系統,不同MySQL版本可能有不同的情況。
作者微信公眾號(持續更新)
該引數是用於描述data目錄所在的作業系統是否為大小寫敏感,該引數為bool型別,但無法修改。
0 -- 大小寫敏感
1 -- 大小寫不敏感
比如跑在linux上的都是OFF或者0。
〇 lower_case_table_names
該引數為靜態,可設定為0、1、2。
0 -- 大小寫敏感。(Unix,Linux預設)
建立的庫表將原樣儲存在磁碟上。如create database TeSt;將會建立一個TeSt的目錄,create table AbCCC ...將會原樣生成AbCCC.frm。
SQL語句也會原樣解析。
1 -- 大小寫不敏感。(Windows預設)
建立的庫表時,MySQL將所有的庫表名轉換成小寫儲存在磁碟上。
SQL語句同樣會將庫表名轉換成小寫。
如需要查詢以前建立的Test_table(生成Test_table.frm檔案),即便執行select * from Test_table,也會被轉換成select * from test_table,致使報錯表不存在。
2 -- 大小寫不敏感(OS X預設)
建立的庫表將原樣儲存在磁碟上。
但SQL語句將庫表名轉換成小寫。
修改lower_case_table_names導致的常見不良隱患:
如果在lower_case_table_names=0時,建立了含有大寫字母的庫表,改為lower_case_table_names=1後,則會無法被查到。
注意事項:
將預設的lower_case_tables_name為0設定成1,需先將已經存在的庫表名轉換為小寫:
1)針對僅表名存在大寫字母的情況:
①、lower_case_tables_name=0時,執行rename table成小寫。
②、設定lower_case_tables_name=1,重啟生效。
2)針對庫名存在大寫字母的情況:
①、lower_case_tables_name=0時,使用mysqldump匯出,並刪除老的資料庫。
②、設定lower_case_tables_name=1,重啟生效。
③、匯入資料至例項,此時包含大寫字母的庫名已轉換為小寫。
轉換操作需要自行測試,不同作業系統,不同MySQL版本可能有不同的情況。
作者微信公眾號(持續更新)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29773961/viewspace-2150669/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql 大小寫敏感 lower_case_table_namesMySql
- mysql 大小寫敏感問題MySql
- mysql大小寫敏感MySql
- PHP大小寫是否敏感問題PHP
- MySQL中的大小寫敏感MySql
- MySQL大小寫敏感說明MySql
- MySQL大小寫問題MySql
- 解決Linux系統下MYSQL資料表大小寫敏感問題LinuxMySql
- Mysql 表名大小寫問題MySql
- mysql大小寫問題解決MySql
- git Windows下重新命名檔案,大小寫敏感問題GitWindows
- sql server 大小寫敏感SQLServer
- mysql 5.X 在linux上,表名大小寫敏感問題解決辦法MySqlLinux
- 解決Mac OS X檔案系統大小寫不敏感問題Mac
- 在Linux下管理MySQL的大小寫敏感性LinuxMySql
- DM8 字串大小寫敏感字串
- 將現有MySQL資料庫改為大小寫不敏感MySql資料庫
- mysql表名忽略大小寫問題記錄MySql
- MySQL的where條件字串區分大小寫的問題MySql字串
- python中排序時對大小寫不敏感Python排序
- MySQL資料庫中庫、表名、欄位的大小寫問題MySql資料庫
- mysql查詢欄位內容無法區分大小寫問題MySql
- jQuery 操作 XML(解決大小寫問題)jQueryXML
- 在Oracle中進行大小寫不敏感的查詢Oracle
- oracle 11g新特性之密碼大小寫敏感Oracle密碼
- 資料庫使用者大小寫問題資料庫
- php一招搞定替換指定字元(大小寫不敏感)PHP字元
- 在Oracle中進行大小寫不敏感的查詢[zt]Oracle
- vue 元件(component)命名的小細節問題(大小寫問題)Vue元件
- 在 macOS 內使用大小寫敏感的 APFS 卷儲存程式碼Mac
- Oracle 12c 業務使用者密碼大小寫不敏感Oracle密碼
- ORACLE物件名大小寫敏感性相關的深入分析Oracle物件
- 10g、11g口令檔案密碼大小寫敏感密碼
- MySQL 8 忽略表名大小寫MySql
- 配置mysql不區分大小寫MySql
- mysql 表明不區分大小寫MySql
- MySQL binary 區分大小寫MySql
- MySQL表名區分大小寫MySql