my.cnf 新增如下:
sql_mode=only_full_group_by,strict_trans_tables,error_for_division_by_zero,no_auto_create_user,no_engine_substitution
1、檢視sql_mode
select @@sql_mode
查詢出來的值為:
only_full_group_by,strict_trans_tables,no_zero_in_date,no_zero_date,error_for_division_by_zero,no_auto_create_user,no_engine_substitution
2、去掉only_full_group_by,重新設定值。
set @@sql_mode ='strict_trans_tables,no_zero_in_date,no_zero_date,error_for_division_by_zero,no_auto_create_user
,no_engine_substitution';
3、上面是改變了全域性sql_mode,對於新建的資料庫有效。對於已存在的資料庫,則需要在對應的資料下執行:
set sql_mode ='strict_trans_tables,no_zero_in_date,no_zero_date,error_for_division_by_zero,no_auto_create_user,no_engine_substitution';
有同學提出上邊這種方式資料庫重啟後 設定會失效,確實是這樣的,上邊這種方式只是修改了記憶體中的值,不能永久改變。
想要永久解決問題需要在配置檔案中
[mysqld]下面新增這段
sql_mode=strict_trans_tables,no_zero_in_date,no_zero_date,error_for_division_by_zero,no_auto_create_user,no_engine_substitution
windows 在安裝目錄下的my.ini 檔案
mac 或者linux 在/ etc/my.cnf 下面
MySql版本問題sql mode設定
1 檢視sql mode select sql mode查詢出來的值為 only full group by,strict trans tables,no zero in date,no zero date,error for division by zero,no auto create user...
mysql版本公升級問題處理
之前是5.5的版本,因為要用到set optimizer trace enabled on 這個引數是5.6後才有的。所以公升級mysql 安裝新的mysql5.6 1 解壓官網的壓縮包後,修改my.ini檔案 沒有就新增 資料目錄對應修改mysql安裝目錄 client port 3306 def...
mysql版本公升級引發的問題
問題描述 1.ibatis 中 mysql語句 select d.qid,group concat epq.qid qids from table1 d,table2 epq where d.qid qid and d.pid epq.pid group by d.checkpid limit 1 ...