解決mysql @@sql_mode問(wèn)題---only_full_group_by
運(yùn)行環(huán)境
- linux ubuntu 14.0.4.3
- 數(shù)據(jù)庫(kù) mysql 5.7.0
系統(tǒng)運(yùn)行出現(xiàn)的問(wèn)題
報(bào)錯(cuò)如下:
Expression #2 of SELECT list is not in GROUP BY clause and contains
nonaggregated column ‘sss.month_id’ which is not functionally
dependent on columns in GROUP BY clause; this is incompatible with
sql_mode=only_full_group_by
上度娘查詢的結(jié)果
問(wèn)題出現(xiàn)的原因:
MySQL 5.7.5及以上功能依賴檢測(cè)功能。
如果啟用了ONLY_FULL_GROUP_BY SQL模式(默認(rèn)情況下),MySQL將拒絕選擇列表,HAVING條件或ORDER BY列表的查詢引用在GROUP BY子句中既未命名的非集合列,也不在功能上依賴于它們。
(5.7.5之前,MySQL沒(méi)有檢測(cè)到功能依賴關(guān)系,默認(rèn)情況下不啟用ONLY_FULL_GROUP_BY。
有關(guān)5.7.5之前的行為的說(shuō)明,請(qǐng)參見(jiàn)“MySQL 5.6參考手冊(cè)”。)
提供兩個(gè)解決方案
方案一(只適合暫時(shí)解決性的,mysql 重啟就一朝回到解放前了)
1.用sql語(yǔ)句查詢 select @@global.sql_mode
查詢出來(lái)的值為:
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,重新設(shè)置值。
set @@global.sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
方案二(修改mysql 中的配置文件,達(dá)到當(dāng)重啟mysql 回去制動(dòng)加載配置文件的內(nèi)容)
1.通過(guò)linux 命令 【whereis mysql 】找到mysql 的配置文件
2.【cd /etc/mysql 】找到配置文件 my.cnf
3.【vim my.cnf】編輯里面的內(nèi)容,加上圖中的那段代碼
4.重啟mysql 服務(wù)就搞定了
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
mysql中xtrabackup全量備份/增量備份及恢復(fù)
本文詳細(xì)介紹了使用XtraBackup工具進(jìn)行MySQL數(shù)據(jù)庫(kù)的全量備份、增量備份以及恢復(fù)的詳細(xì)步驟,文章詳細(xì)列出了所需目錄結(jié)構(gòu)、配置文件和命令,為數(shù)據(jù)庫(kù)管理員提供了一套完整的備份恢復(fù)解決方案2024-09-09MySQL導(dǎo)入.CSV數(shù)據(jù)中文亂碼的解決方式
當(dāng)將xls或xlsx文件轉(zhuǎn)換為CSV并導(dǎo)入數(shù)據(jù)庫(kù)時(shí),可能出現(xiàn)亂碼,原因是編碼格式不是UTF-8,解決方法是使用Notepad或記事本打開CSV文件,所以本文給大家介紹了MySQL導(dǎo)入.CSV數(shù)據(jù)中文亂碼的解決方式,需要的朋友可以參考下2024-08-08window下mysql 8.0.15 winx64安裝配置方法圖文教程
這篇文章主要為大家詳細(xì)介紹了window下mysql 8.0.15 winx64安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-03-03如何查看MySQL數(shù)據(jù)庫(kù)中使用的引擎類型
MySQL是目前使用最廣泛的開源關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)之一,它支持多種不同的數(shù)據(jù)存儲(chǔ)引擎,以方便地查看MySQL數(shù)據(jù)庫(kù)中使用的引擎類型,在實(shí)際應(yīng)用中,選擇合適的存儲(chǔ)引擎類型可以提高數(shù)據(jù)庫(kù)的性能和穩(wěn)定性,2023-10-10