欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker部署MySQL并實現(xiàn)客戶端連接

 更新時間:2022年01月20日 10:52:22   作者:老馬-Max  
這篇文章介紹了Docker部署MySQL并實現(xiàn)客戶端連接的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

準備工作

在docker內(nèi)部署任何應用,都需要先下載對應的鏡像;下載鏡像之前,需要先搜索鏡像來確認該鏡像是否存在:

docker search mysql

從列表可以看到,docker已經(jīng)有了mysql的鏡像,名稱是“mysql”,接下來下載鏡像:

docker pull mysql

下載完成后,查看一下本地鏡像:

如果在列表中看到mysql,鏡像下載就已經(jīng)成功了。

容器設置

在docker中,真正運行的是容器,鏡像在我理解中是一種環(huán)境。我們在指定的鏡像中運行某個容器,然后編輯和配置這個容器,從而達到想要的效果。使用以下命令運行一個mysql容器:

docker run -d -it -p 3306:3306 --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 mysql

解釋一下

  • -d:代表后臺運行,并返回容器的ID;
  • -it:是一個組合命令,可以使容器在運行時不會阻塞當前操作界面。(另一種寫法是 -i -t );
  • -p 3306:3306:將宿主機上的端口映射到容器對應端口;
  • -e MYSQL_ROOT_PASSWORD=123456:設置環(huán)境變量,此處是設置root用戶密碼為123456;
  • --name mysql01:自定義容器名稱為mysql01;

最后的mysql:鏡像的名稱。

這行命令的結果是在mysql鏡像中運行了一個名為mysql01的容器,并且root用戶的密碼是123456。接下來看一下容器有沒有正常運行:

看到STATUS那一欄是Up開頭就代表啟動成功了。

Docker下的Mysql操作

容器創(chuàng)建好以后,可以使用exec命令進入容器去操作:

docker exec -it mysql01 bash

進入容器以后,使用剛才設置好的賬戶密碼登陸mysql:

登陸成功后,就可以按照mysql的命令去操作表庫了。因為mysql和dockers容器的退出指令都是exit,所以如果要回到根目錄,先輸入exit退出mysql,再輸入exit退出容器。

客戶端連接Docker容器下的Mysql

上面已經(jīng)實現(xiàn)了docker內(nèi)操作mysql,但全命令行的操作很費時,這顯然不符合高效開發(fā)同學們的要求,所以現(xiàn)在有個簡單的方法,就是使用客戶端連接docker容器下的mysql。

我們知道docker是運行在虛擬機環(huán)境下的,虛擬機有單獨的IP地址和端口,只要找到docker所在虛擬機的IP即可使用客戶端連接到docker容器下的mysql。但是直接去連肯定會失敗,為什么?兩個原因:

  • 1、因為docker容器也擁有獨立的端口和IP,所以直接訪問docker所在虛擬機的IP是訪問不到的,因此需要將docker容器的端口映射到docker所在主機的端口上。
  • 2、因為mysql默認不允許遠程連接。

端口映射在前面已經(jīng)做好了,所以現(xiàn)在只需要修改mysql允許所有連接即可。登陸docker容器的mysql,輸入以下命令:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

成功以后,另外打開一個cmd,輸入ipconfig列出所有IP:

紅框圈起來的就是虛擬機在用的IP了,使用這個IP和剛才設置的賬戶密碼就可以用客戶端連接了:

(如果本機沒有MySql,直接用localhost也是可以成功登陸navicat的。)

測試

通過navicat創(chuàng)建一個數(shù)據(jù)庫docker_mysql:

 然后切換到docker環(huán)境,進入mysql01容器,查看所有數(shù)據(jù)庫:

使用客戶端創(chuàng)建的數(shù)據(jù)庫在容器內(nèi)也可以查到,測試成功。

需要注意的一點是,docker一但停止運行,關聯(lián)的虛擬機也會被釋放,所有數(shù)據(jù)都會隨之消失。資料卷可以解決這個問題,但是本文篇幅有限,后面幾篇文章會詳述這個問題。

到此這篇關于Docker部署MySQL并實現(xiàn)客戶端連接的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 如何在mac上用docker對Oracle進行部署使用

    如何在mac上用docker對Oracle進行部署使用

    這篇文章主要介紹了如何在mac上用docker對Oracle進行部署使用,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 解決docker run hello-world遇到錯誤消息-error during conne

    解決docker run hello-world遇到錯誤消息-error during&n

    這篇文章主要介紹了解決docker run hello-world遇到錯誤消息-error during conne問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Docker相關命令應用匯總

    Docker相關命令應用匯總

    如果各位看官熟悉 Git 和 GitHub ,可與 Docker 做個類比,可更加容易理解 Docker 和 Docker Hub 及兩者關系。
    2018-04-04
  • Docker數(shù)據(jù)存儲之tmpfs mounts詳解

    Docker數(shù)據(jù)存儲之tmpfs mounts詳解

    今天小編就為大家分享一篇關于Docker數(shù)據(jù)存儲之tmpfs mounts詳解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Docker?進階之鏡像分層方案詳解

    Docker?進階之鏡像分層方案詳解

    這篇文章主要介紹了Docker?進階之鏡像分層詳解,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • docker?安裝?zeppeline的操作

    docker?安裝?zeppeline的操作

    Zeppelin是基于Jupyter Notebook技術開發(fā)的大數(shù)據(jù)交互分析服務軟件。接下來通過本文給大家介紹docker?安裝?zeppeline的相關知識,感興趣的朋友一起看看吧
    2022-01-01
  • docker安裝nginx之后無法訪問的解決

    docker安裝nginx之后無法訪問的解決

    這篇文章主要介紹了docker安裝nginx之后無法訪問的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Centos7下安裝Docker Engine

    Centos7下安裝Docker Engine

    這篇文章主要介紹了Centos7下安裝Docker Engine的相關資料,非常不錯,具有參考借鑒價值,需要的朋友參考下
    2016-12-12
  • docker 查看進程, 內(nèi)存, cup消耗的情況

    docker 查看進程, 內(nèi)存, cup消耗的情況

    這篇文章主要介紹了docker 查看進程, 內(nèi)存, cup消耗的情況,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • 使用Docker構建企業(yè)級自定義鏡像的方法

    使用Docker構建企業(yè)級自定義鏡像的方法

    這篇文章主要介紹了使用Docker構建企業(yè)級自定義鏡像的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-05-05

最新評論