連線不到docker中的mysql

2021-10-01 11:03:46 字數 632 閱讀 8984

主要是:新版的mysql的加密方式發生了變化,解決方法如下:

進入docker容器:

docker exec

-it mysql01 bash

登陸mysql資料庫:

mysql -uroot -p***x
檢視使用者的密碼加密方式

select host,

user

,plugin,authentication_string from mysql.

user

;

更新使用者的加密方式

alter

user

'root'@'%

' identified with mysql_native_password by 'root';

alter

user

'root'@'localhost' identified with mysql_native_password by 'root';

重新整理

flush privileges

;

docker容器的程式連線宿主機的MySQL

docker裡面的 生成的資料需要寫入到宿主機的mysql伺服器上,想要用本地的資料庫測試自己的 正確性,專案程式安裝在docker容器中,於是必定要在docker容器裡訪問到本地的資料庫。1 在docker容器裡localhost並不是指宿主機的localhost,因此不能在容器中通過localh...

連線Docker中的MySQL

修改docker容器中 etc mysql mysql.conf.d mysqld.cnf 檔案。不同版本的mysql檔名不一樣,可能不叫mysqld.cnf,一般在mysql.conf.d資料夾下有類似 sever.cnf的檔案 我這裡是 etc mysql mariadb.conf.d 50 s...

mysql與php的連線 PHP 連線mysql

php 連線mysql mysqlhost localhost mysqluser root mysqlpass mysqldata mydata connect mysql connect mysqlhost,mysqluser,mysqlpass or die 錯誤 mysql error my...