docker中使用mysql數(shù)據(jù)庫詳解(在局域網(wǎng)訪問)
前言
開發(fā)過程中經(jīng)常需要安裝、調(diào)試mysql數(shù)據(jù)庫,還需要在各種操作系上安裝包依賴,實(shí)在是繁瑣,因此就研究了一下如何在docker上運(yùn)行一個(gè)mysql鏡像,省卻了我安裝、找依賴的問題。
注:本文所有內(nèi)容均在CentOS Linux release 7.2.1511 (Core) 上測(cè)試完成
假設(shè),你已經(jīng)安裝好docker。如果沒有安裝好docker可以參考centos7上安裝docker
使用
docker pull mysql
獲得mysql鏡像,接著使用
docker images
查看鏡像列表,如下
使用
docker run -itd -P mysql bash
啟動(dòng)mysql鏡像,docker run是啟動(dòng)容器的命令;i是交互式操作,t是一個(gè)終端,d指的是在后臺(tái)運(yùn)行,-P指在本地生成一個(gè)隨機(jī)端口,用來映射mysql的3306端口,mysql指運(yùn)行mysql鏡像,bash指創(chuàng)建一個(gè)交互式shell。
使用
docker ps -a
查看已經(jīng)運(yùn)行的docker鏡像,如下 image
從途中可以看到mysql鏡像的3306端口綁定了本地的32773端口,因此就說如果你要在局域網(wǎng)中訪問docker中的mysql數(shù)據(jù)庫就需要使用服務(wù)器IP:32773來進(jìn)行訪問。
使用命令
docker exec -it sick_hawking bash
連接到mysql鏡像中,
docker exec
是docker鏡像的連接命令,類似于ssh一樣的命令,sick_hawking是鏡像的名字,鏡像每次啟動(dòng)都必須有一個(gè)名字,該名字可以手動(dòng)指定也可以自己生成。
連接成功以后,如下,
圖中就已經(jīng)進(jìn)入到了docker mysql鏡像中,使用
service mysql status
查看mysql的啟動(dòng)狀態(tài),如下,
mysql沒有啟動(dòng)可以使用
service mysql start
,如下,
輸入mysql驗(yàn)證mysql是否啟動(dòng)成功,如下,
到此為止,docker中的mysql已經(jīng)啟動(dòng)成功。
如何在外部使用root連接這個(gè)mysql?
為了安全,首先需要設(shè)置root帳號(hào)的密碼,如下
update user set authentication_string = password('root') where user = 'root';
將root的密碼改為root。 接著,由于mysql中root執(zhí)行綁定在了localhost,因此需要對(duì)root進(jìn)行授權(quán),代碼如下,
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
最后,使用navitecat測(cè)試mysql連接,如下,
連接成功,說明docker中的mysql可以在局域網(wǎng)中使用。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)給各位iOS開發(fā)者們能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
- docker下修改mysql配置文件的方法
- 詳解利用Dockerfile構(gòu)建mysql鏡像并實(shí)現(xiàn)數(shù)據(jù)的初始化及權(quán)限設(shè)置
- 連接docker里面的mysql失敗解決方法
- Docker中部署mysql服務(wù)的方法及遇到的坑
- Docker安裝MySQL8.0的實(shí)現(xiàn)方法
- 完美解決docker安裝mysql后Navicat連接不上的問題
- docker中mysql初始化及啟動(dòng)失敗問題解決方案
- 淺析docker-compose部署mysql無法訪問的問題
- 遠(yuǎn)程連接Docker上的Mysql失敗的分析與解決方案
相關(guān)文章
Docker 容器生命周期 架構(gòu) 以及和VM之間的差異詳解
這篇文章主要介紹了Docker 容器生命周期 架構(gòu) 以及和VM之間的差異詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-11-11Docker 安裝 Jenkins 并解決初始安裝插件失敗問題
這篇文章主要介紹了Docker 安裝 Jenkins 并解決初始安裝插件失敗問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04CentOS7 安裝docker 解決啟動(dòng)不了的問題
這篇文章主要介紹了CentOS7 安裝docker 解決啟動(dòng)不了的相關(guān)資料,需要的朋友可以參考下2016-10-10