在Docker中安裝并運(yùn)行三個MySQL數(shù)據(jù)庫的操作指南
在 Docker 中安裝并運(yùn)行三個 MySQL 數(shù)據(jù)庫
1. 確保 Docker 已安裝和運(yùn)行
確保 Docker 服務(wù)已在你的系統(tǒng)中正確安裝和運(yùn)行,可以通過以下命令檢查:
docker --version docker info
2. 拉取 MySQL 鏡像
從 Docker Hub 拉取最新版 MySQL 鏡像:
docker pull mysql:latest
3. 創(chuàng)建 MySQL 數(shù)據(jù)庫的網(wǎng)絡(luò)(可選)
為了便于管理多個容器,可以創(chuàng)建一個自定義網(wǎng)絡(luò):
docker network create mysql-network
4. 創(chuàng)建并運(yùn)行第一個 MySQL 容器
運(yùn)行以下命令啟動第一個 MySQL 容器:
docker run -d \ --name mysql-db1 \ --network mysql-network \ -e MYSQL_ROOT_PASSWORD=rootpassword1 \ -e MYSQL_DATABASE=db1 \ -e MYSQL_USER=user1 \ -e MYSQL_PASSWORD=password1 \ -p 3306:3306 \ mysql:latest
參數(shù)說明:
--name mysql-db1:容器名稱。--network mysql-network:使用之前創(chuàng)建的網(wǎng)絡(luò)。-e MYSQL_ROOT_PASSWORD=rootpassword1:設(shè)置 root 用戶密碼。-e MYSQL_DATABASE=db1:初始化的數(shù)據(jù)庫名稱。-e MYSQL_USER=user1和-e MYSQL_PASSWORD=password1:設(shè)置普通用戶及其密碼。-p 3306:3306:將本機(jī)的 3306 端口映射到容器的 3306 端口。
5. 創(chuàng)建并運(yùn)行第二個 MySQL 容器
啟動第二個 MySQL 容器,需確保端口不沖突:
docker run -d \ --name mysql-db2 \ --network mysql-network \ -e MYSQL_ROOT_PASSWORD=rootpassword2 \ -e MYSQL_DATABASE=db2 \ -e MYSQL_USER=user2 \ -e MYSQL_PASSWORD=password2 \ -p 3307:3306 \ mysql:latest
6. 創(chuàng)建并運(yùn)行第三個 MySQL 容器
啟動第三個 MySQL 容器,繼續(xù)設(shè)置不同的端口:
docker run -d \ --name mysql-db3 \ --network mysql-network \ -e MYSQL_ROOT_PASSWORD=rootpassword3 \ -e MYSQL_DATABASE=db3 \ -e MYSQL_USER=user3 \ -e MYSQL_PASSWORD=password3 \ -p 3308:3306 \ mysql:latest
7. 驗(yàn)證容器運(yùn)行狀態(tài)
使用以下命令查看運(yùn)行中的容器:
docker ps
你將看到類似如下輸出:
CONTAINER ID IMAGE COMMAND STATUS PORTS NAMES abcd1234 mysql:latest "docker-entrypoint.s…" Up 10 seconds 0.0.0.0:3306->3306/tcp mysql-db1 efgh5678 mysql:latest "docker-entrypoint.s…" Up 10 seconds 0.0.0.0:3307->3306/tcp mysql-db2 ijkl9101 mysql:latest "docker-entrypoint.s…" Up 10 seconds 0.0.0.0:3308->3306/tcp mysql-db3
8. 連接到 MySQL 數(shù)據(jù)庫
使用 mysql 客戶端或其他工具連接到 MySQL 數(shù)據(jù)庫。示例如下:
連接到第一個數(shù)據(jù)庫:
mysql -h 127.0.0.1 -P 3306 -u user1 -p
連接到第二個數(shù)據(jù)庫:
mysql -h 127.0.0.1 -P 3307 -u user2 -p
連接到第三個數(shù)據(jù)庫:
mysql -h 127.0.0.1 -P 3308 -u user3 -p
優(yōu)化和注意事項:
持久化數(shù)據(jù):
如果需要數(shù)據(jù)持久化,可以為每個容器掛載宿主機(jī)目錄:
-v /path/to/db1:/var/lib/mysql
資源限制:
可以通過 --memory 和 --cpus 參數(shù)限制容器資源使用。
備份與恢復(fù):
定期使用 docker exec 結(jié)合 mysqldump 進(jìn)行備份。
到此這篇關(guān)于在Docker中安裝并運(yùn)行三個MySQL數(shù)據(jù)庫的操作指南的文章就介紹到這了,更多相關(guān)Docker安裝并運(yùn)行三個MySQL內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
微信小程序Docker+Nginx環(huán)境配置業(yè)務(wù)域名驗(yàn)證文件的操作方法
本文介紹了如何在DockerCompose+Nginx環(huán)境下配置并訪問靜態(tài)驗(yàn)證文件,首先下載驗(yàn)證文件并將其掛載到容器中,然后修改Nginx配置文件使其能夠正確返回請求路徑下的靜態(tài)文件,最后,測試訪問驗(yàn)證文件并提交業(yè)務(wù)域名,感興趣的朋友跟隨小編一起看看吧2025-01-01
本地Docker部署Navidrome音樂服務(wù)器與遠(yuǎn)程訪問聽歌詳細(xì)教程(圖文詳解)
本文和大家分享一款目前在G站有11K+Star的開源跨平臺音樂服務(wù)器?Navidrome,如何在?Linux?環(huán)境本地使用?Docker?部署,并結(jié)合cpolar?內(nèi)網(wǎng)穿透工具配置公網(wǎng)地址,實(shí)現(xiàn)隨時隨地遠(yuǎn)程訪問本地存儲音樂的詳細(xì)流程,感興趣的朋友跟隨小編一起看看吧2024-08-08
docker實(shí)現(xiàn)redis集群搭建的方法步驟
本文主要介紹了docker實(shí)現(xiàn)redis集群搭建的方法步驟,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08
Docker部署FastDFS的實(shí)現(xiàn)方法
這篇文章主要介紹了Docker部署FastDFS的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
利用Docker搭建Nexus私有倉庫實(shí)現(xiàn)Maven私服
Maven大家應(yīng)該都比較熟了,我這里就用安卓人狂喜的Gradle來演示一下,在build.gradle中編寫腳本即可上傳,接下來通過本文給大家介紹下利用Docker搭建Nexus私有倉庫實(shí)現(xiàn)Maven私服的問題,感興趣的朋友一起看看吧2022-01-01
Harbor搭建Docker私有倉庫的實(shí)現(xiàn)方法
Harbor是一個由CNCF托管的開源的Docker鏡像倉庫管理工具,我們可以通過它快速的建立起自己的私有倉庫,本文就詳細(xì)的介紹了Harbor搭建Docker私有倉庫的實(shí)現(xiàn)方法,感興趣的可以了解一下2021-06-06

