1. 程式人生 > 資料庫 >docker中使用mysql資料庫實現區域網訪問

docker中使用mysql資料庫實現區域網訪問

1.獲取mysql映象

docker pull mysql:5.6

注意:此處之所以獲取mysql5.6是因為mysql5.7在centos7中啟動可能會報錯

2.檢視映象列表

docker images

3.啟動mysql映象

docker run -itd -P mysql:5.6 bash

其中 docker run是啟動容器的命令;i是互動式操作,t是一個終端,d指的是在後臺執行,

-P指在本地生成一個隨機埠,用來對映mysql的3306埠,mysql指執行mysql映象,bash指建立一個互動式shell。

4.檢視已經執行的docker映象

docker ps -a

docker中使用mysql資料庫實現區域網訪問

從圖中可以看到mysql映象的3306埠綁定了本地的32769埠,因此就說如果你要在區域網中訪問docker中的mysql資料庫就需要使用伺服器IP:32769來進行訪問。

5.連線到mysql映象中

docker exec -it relaxed_hodgkin bash

docker exec 是docker映象的連線命令,類似於ssh一樣的命令,relaxed_hodgkin是映象的名字,映象每次啟動都必須有一個名字,該名字可以手動指定也可以自己生成。

連線成功以後,如下圖,已經進入到了docker mysql映象中

docker中使用mysql資料庫實現區域網訪問

6.檢視mysql的啟動狀態,如上圖就顯示mysql沒啟動

service mysql status

7.mysql沒有啟動可以使用以下命令啟動,如圖所示啟動成功

service mysql start

docker中使用mysql資料庫實現區域網訪問

8.輸入mysql 驗證mysql是否啟動成功

docker中使用mysql資料庫實現區域網訪問

到此為止,docker中的mysql已經啟動成功。

9.如何在外部使用root連線這個mysql? 為了安全,首先需要設定root帳號的密碼,如下

update user set authentication_string = password('root') where user = 'root';

這時會報以下錯誤

docker中使用mysql資料庫實現區域網訪問

是因為沒有選擇資料庫,要在上面的命令之前執行下面這句,就可以將root

的密碼改為root

use mysql;

10.由於mysql中root執行繫結在了localhost,因此需要對root進行授權

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

11.最後,使用SQLyog測試mysql連線,如下

docker中使用mysql資料庫實現區域網訪問

連線成功,說明docker中的mysql可以在區域網中使用。

到此這篇關於docker中使用mysql資料庫實現區域網訪問的文章就介紹到這了,更多相關docker對mysql資料庫操作內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!