我做開發時候是用windows 的 所以沒感覺
今天部署自己做的一個yii 項目到linux的時候發現的一個問題,
yii 的rbac 的表找不到 報錯如下 www.2cto.com
CDbCommand 無法執行 SQL 語句: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'si_manager.AuthAssignment' doesn't exist. The SQL statement executed was: SELECT * FROM `AuthAssignment` WHERE userid=:userid
但是我去看我linux的機器是有這個數據表的
www.2cto.com
仔細看提示,是大小寫略微不同,之後手工執行出錯的語句,同樣報錯,於是確定是大小寫問題
於是google 得知mysql在linux下表名是去分大小寫的 只不過有配置改成不區分 非常簡單
在/etc/my.cnf 裡的[mysqld] 下面增加lower_case_table_names=1 這一句話即可.