您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關(guān)使用Docker如何遠(yuǎn)程連接 MySQL數(shù)據(jù)庫,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
拉取鏡像
docker pull mysql
查看拉取完成的鏡像
docker images
通過鏡像創(chuàng)建并啟動一個MySQL容器
docker run --name mysql_dev -e MYSQL_ROOT_PASSWORD=123456 -p 3333:3306 -d mysql
–name:給新創(chuàng)建的容器命名,此處命名為 mysql_dev
-e:配置信息,此處配置mysql的root用戶的登陸密碼
-p:端口映射,此處映射主機3333端口到容器mysql_dev的3306端口
-d:成功啟動容器后輸出容器的完整ID\最后一個mysql指的是mysql鏡像名字此時,用navicat for mysql連接mysql發(fā)現(xiàn)報錯:
Client does not support authentication protocol requested by server。。。
解決再最下面 ^ _ ^
查看安裝的所有容器
docker ps -a
查看啟動中的容器
docker ps
暫停/啟動容器中的服務(wù)
docker stop mysql_dev docker start mysql_dev
進入容器
docker exec -it mysql_dev bash
查看容器中服務(wù)的IP
docker exec -it mysql_dev cat /etc/hosts
新版 MySQL 授權(quán)用戶時報錯 near 'IDENTIFIED BY '密碼' with grant option' at line 1
1 問題:
當(dāng)使用 grant 權(quán)限列表 on 數(shù)據(jù)庫 to '用戶名'@'訪問主機' identified by '密碼'; 時會出現(xiàn)"......near 'identified by '密碼'' at line 1"這個錯誤
2 原因:
因為新版的的mysql版本已經(jīng)將創(chuàng)建賬戶和賦予權(quán)限的方式分開了
3 解決辦法:
創(chuàng)建賬戶:create user '用戶名'@'訪問主機' identified by '密碼';
賦予權(quán)限:grant 權(quán)限列表 on 數(shù)據(jù)庫 to '用戶名'@'訪問主機' ;(修改權(quán)限時在后面加with grant option)
4 具體操作:
# 添加用戶 CREATE USER 'mysql_dev' IDENTIFIED BY '123456'; # 賦予權(quán)限 GRANT ALL PRIVILEGES ON *.* TO 'mysql_dev'@'%'; # 修改加密規(guī)則 ALTER USER 'mysql_dev'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER; # 更新一下用戶的密碼 ALTER USER 'mysql_dev'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; # 更新配置信息 FLUSH PRIVILEGES;
看完上述內(nèi)容,你們對使用Docker如何遠(yuǎn)程連接 MySQL數(shù)據(jù)庫有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。