首頁  >  文章  >  資料庫  >  docker如何部署mysql實現遠端連接

docker如何部署mysql實現遠端連接

王林
王林轉載
2023-05-28 21:30:442577瀏覽

1.docker search mysql   查看mysql版本

docker如何部署mysql實現遠端連接

2.docker pull mysql  #要選擇starts最高的那個name 進行下載

3.docker images  查看下載好的映像

#4.啟動mysql實例

 docker run --name dockermysql -p 3307:3306 -e mysql_root_password=my-secret-pw -d mysql

## --name為mysql的實例設定別名。 -p 3307為對外暴露的連接埠。 3306是內部連接埠 

 -e mysql_root_password 設定mysql登入密碼  -d 以守護程式運作(後台執行) 最後的mysql是鏡像名稱

5. docker ps - a 

檢視在執行的

docker如何部署mysql實現遠端連接

6. docker exec -it dockermysql bash     

#進入容器內部  dockermysql 是上邊執行時為容器取的別名也可以用id替換

 7.docker mysql -u root -p      

## 7.docker mysql -u root -p      然後直接輸入密碼即可密碼為執行時設定的

docker如何部署mysql實現遠端連接

#use mysql

8.grant all privileges on *.*  to 'root'@'%' ;   ##給用於授予權限

docker如何部署mysql實現遠端連接

grant all privileges on *.*  'root'@'%' identified by '123123' with grant option;  這是網路上流傳較多的寫法。實際上會報錯的。

9.flush privileges;  重新整理權限

10.登入

11.mysql遠端連線報錯:authentication plugin caching_sha2

mysql 8.0 預設使用caching_sha2_password 驗證機制- 從原來的mysql_native_password 變更為caching_sha2_password。 


從 5.7 升級 8.0 版本的不會改變現有使用者的驗證方法,但新使用者會預設使用新的 caching_sha2_password 。

客戶端不支援新的加密方式。

方法之一,修改使用者的密碼和加密方式

alter user 'root'@'%' identified with mysql_native_password by '密碼';

#要同賦予用戶權限時相同。 若是localhost就同上。 %也是如此

###mysql8.*的新功能caching_sha2_password 密碼加密方式######先前版本的mysql密碼加密使用的是 ###mysql_native_password############新加入的使用者密碼預設使用的 ###caching_sha2_password#############如果在先前mysql基礎上升級的就得使用者使用的密碼加密使用的是mysql_native_password######## ##如果使用先前的密碼加密方式,就修改檔案/etc/my.cnf ######資料庫時區問題:######連結資料庫時servertimezone=utc這個參數出的問題#### ##只要改成servertimezone=asia/shanghai就ok了! ###

以上是docker如何部署mysql實現遠端連接的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除