coding
最代碼人間蒸發的gravatar頭像
最代碼人間蒸發2019-10-12 12:48:59
docker入門——docker安裝mysq5.7數據庫連接不上或者數據庫一些sql語句不能使用。

上一篇講了,docker是一個怎么使用,而且筱進GG給大家也講明了docker一些更細節的東西,已經安裝等等內容。

那么在玩docker的時候不免會出現一些問題,其實也不是docker的錯,而是mysql本身的問題,導致docker安裝完成mysql會出現問題。

首先,docker安裝mysql。

docker search mysql //查看mysql已有鏡像,然后它會給大家展示一大堆,這里我就不給大家截圖了
docker pull mysql:5.7 //安裝mysql5.7

下載完成后,啟動容器

docker run -it --rm --name mysql5.7 -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:5.7 --lower_case_table_names=1  //docker安裝mysql忽略大小寫

記得關閉防火墻,或者開發3306端口。

啟動完成后,使用Navicat訪問這個數據庫,我出現了倆種不同的報錯情況,

1.連接不上。

docker入門——docker安裝mysq5.7數據庫連接不上或者數據庫一些sql語句不能使用。

2.連接成功,出現如下報錯。

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 
//這種錯誤,我百度得到的解釋是MySQL 5.7.5及以上功能依賴檢測功能。如果啟用了ONLY_FULL_GROUP_BY SQL模式(默認情況下),MySQL將拒絕選擇列表,HAVING條件或ORDER BY列表的查詢引用在GROUP BY子句中既未命名的非集合列,也不在功能上依賴于它們。(5.7.5之前,MySQL沒有檢測到功能依賴關系,默認情況下不啟用ONLY_FULL_GROUP_BY。有關5.7.5之前的行為的說明,請參見“MySQL 5.6參考手冊”。)

第二種錯誤大部分要求你修改my.cnf配置文件,添加如下內容。

[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

我試了但是并沒有生效。

經過嘗試,倆種不同的報錯可以一起解決。

docker ps //查看正在運行的容器

docker入門——docker安裝mysq5.7數據庫連接不上或者數據庫一些sql語句不能使用。如上圖所示,

我們進入到容器中

docker exec -it 4730106799e3 bash  //注意使用容器id,而不是容器名稱,網上很多都是容器名稱,我這里使用容器名稱是不成功的。
mysql -uroot -p123456 //登錄mysql
mysql> ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';  
Query OK, 0 rows affected (0.01 sec)  
mysql>   
mysql> FLUSH PRIVILEGES;  
Query OK, 0 rows affected (0.01 sec)  
 
//運行如上內容,調整權限

mysql> quit //退出mysql
[email protected]:/# exit //退出容器
docker restart 4730106799e3 //重新啟動容器。

就OK了!

 

至此,我的出現的問題解決。

各位拜拜,有問題隨時與我交流!

 


打賞

已有1人打賞

最代碼官方的gravatar頭像

分享到:

最近瀏覽
1225086246 LV3昨天
星星星星星星
zccmp20 LV2210月31日
太陽月亮星星星星
limbooozz LV110月30日
星星
香酥雞腿 LV210月30日
星星星星
kinggode LV1310月30日
月亮月亮月亮星星
caiwenxiu LV410月29日
月亮
admin123456686 LV910月29日
月亮月亮星星
guojun LV1010月29日
月亮月亮星星星星
yangdong LV1310月29日
月亮月亮月亮星星
is_gary LV1010月27日
月亮月亮星星星星
最代碼廣告位
頂部客服微信二維碼底部
>掃描二維碼關注最代碼為好友掃描二維碼關注最代碼為好友
黑龙江11选5实时走势图