1. 程式人生 > 實用技巧 >Docker mysql 1045處理辦法

Docker mysql 1045處理辦法

一、遇到問題

今天想部署程式突然發現mysql連線不上了,如下圖所示:

二、解決方式

1、先通過find命令查詢到docker mysql的配置檔案,命令如下:

#查詢命令
find / -name my.cnf

2、通過vi命令直接修改my.cnf

vi /var/lib/docker/overlay2/54937c49054d044e22bd53c1ff1f763614426bc39b27ef2bfbe1f8edb583e3fa/diff/etc/mysql/my.cnf
#加入下面這句話
[mysqld]
skip-grant-tables

4、重啟mysql

#在mysql目錄下
docker-compose down
docker
-compose up -d

5、通過docker互動命令訪問容器

#互動命令
docker exec -it e277ad12c23e /bin/bash

如下圖所示,不需要密碼已經進入到mysql

三、重置密碼,我用的是mysql8,其他版本命令會有區別

#更新密碼
update mysql.user set authentication_string="123456" where user="root";

#重新整理許可權
flush privileges;

#退出
quit

四、修改配置檔案,重啟mysql

vi /var/lib/docker/overlay2/54937c49054d044e22bd53c1ff1f763614426bc39b27ef2bfbe1f8edb583e3fa/diff/etc/mysql/my.cnf
#刪除下面這句話
skip
-grant-tables

重啟mysql

#在mysql目錄下
docker-compose down
docker-compose up -d