Linux系統下MySql表名大小寫敏感問題(真的很坑!注意)

mysql是通過lower_case_table_names變量來處理大小寫問題的。 
首先查詢該變量

show Variables like '%table_names'

mysql在Linux下數據庫名、表名、列名、表別名大小寫規則如下:

1、數據庫名與表名嚴格區分大小寫;

2、表別名嚴格區分大小寫;

3、列名和列別名在所有情況下都是忽略大小寫的;

4、變量名也是嚴格區分大小寫的;

mysql在windows下都不區分大小寫。

Linux下設置mysql大小寫不敏感:

1、連接數據庫

例如:mysql -uroot  -p123

root@test:/home# mysql -uroot -proot   <uroot是用戶名,proot是密碼>

2.查看當前MYSQL字符集[在mysql命令行模式下執行]:

show variables like 'character%';

3.查詢大小寫敏感

show Variables like '%table_names'

查詢結果: 顯示0 是開啓大小敏感的  

lower_case_table_names=0(默認)區分大小寫,lower_case_table_names=1表示不區分大小寫

3.更改解決

修改/etc/my.cnf,在[mysqld]後邊添加lower_case_table_names=1 重啓mysql服務,這時已設置成功
 完了記得重新啓動mysql服務

一、啓動方式

1、使用 service 啓動:service mysqld start
2、使用 mysqld 腳本啓動:/etc/inint.d/mysqld start
3、使用 safe_mysqld 啓動:safe_mysqld&

二、停止

1、使用 service 啓動:service mysqld stop
2、使用 mysqld 腳本啓動:/etc/inint.d/mysqld stop
3、mysqladmin shutdown

三、重啓

1、使用 service 啓動:service mysqld restart
2、使用 mysqld 腳本啓動:/etc/inint.d/mysqld restart

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章