docker部署mysql 實現遠端連線
1.docker search mysql 檢視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
5. docker ps -a 檢視在執行的
6. docker exec -it dockermysql bash 進入容器內部 dockermysql 是上邊執行時為容器取的別名 也可以用id替代
7.docker mysql -u root -p 然後直接輸入密碼即可 密碼是在執行時設定的
8.grant all privileges on *.* to ‘root’@’%’ ; 給用於授予許可權
GRANTALLPRIVILEGESON *.* ‘root’@’%’ identified by ‘123123’ WITH
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'@'localhost' IDENTIFIED WITH mysql_native_password BY '密碼';
mysql8.*的新特性 caching_sha2_password 密碼加密方式
以前版本的mysql密碼加密使用的是 mysql_native_password
新新增的使用者密碼預設使用的 caching_sha2_password
如果在以前mysql基礎上升級的 就得使用者使用的密碼加密使用的是 mysql_native_password
如果使用以前的密碼加密方式,就修改檔案 /etc/my.cnf
資料庫時區問題:
連結資料庫時serverTimezone=UTC這個引數出的問題
只要改成serverTimezone=Asia/Shanghai就OK了!