Docker安裝MySQL5.7


前言

前面我們在centos安裝過mysql5.7,需要安裝各種依賴環境,在windows環境上安裝mysql更是噩夢連連,在docker上安裝mysql,非常簡便。



1.拉取數據庫鏡像
根據自己的需求找到對應的 mysql 版本, 通過docker pull命令下載。
可以在docker的鏡像倉庫找到不同TAG標簽的版本https://hub.docker.com/_/mysql?tab=tags
我們這里選擇5.7版本

docker pull mysql:5.7

docker images命令查看鏡像是否下載成功




2.配置mysql

創建mysql目錄,用於存放mysql相關配置及數據


mkdir -p :遞歸創建目錄,即使上級目錄不存在,會按目錄層級自動創建目錄
~ : ”/“是根目錄,”~“是家目錄。Linux存儲是以掛載的方式,相當於是樹狀的,源頭就是”/“,也就是根目錄。
而每個用戶都有”家“目錄,也就是用戶的個人目錄,比如root用戶的”家“目錄就是/root,普通用戶a的家目錄就是/home/a

mkdir -p ~/wwh/mysql/conf ~/wwh/mysql/data ~/wwh/mysql/logs

創建完成后,在當前用戶的home目錄(root用戶在root目錄),會有三個文件夾。



運行mysql容器

docker run -p 3309:3306 --name wwhmysql -v ~/wwh/mysql/conf:/etc/mysql/conf.d -v ~/wwh/mysql/logs:/logs -v ~/wwh/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

命令說明:

  • --name 重命名wwhmysql
  • -p 3309:3306:將容器的 3306 端口映射到主機的 3309 端口。
  • -v -v /wwh/mysql/conf:/etc/mysql/conf.d:將主機/wwh/mysql/conf 掛載到容器的 /etc/mysql/my.cnf。
  • -v /wwh/mysql/logs:/logs:將主機/wwh/mysql 目錄掛載到容器的 /logs。
  • -v ~/wwh/mysql/data:/var/lib/mysql :將主機~/wwh/mysql/data目錄掛載到容器的 /var/lib/mysql 。
  • -e MYSQL_ROOT_PASSWORD=123456:初始化 root 用戶的密碼。
  • -d 掛后台運行



啟動完成后,查看運行狀態


docker ps



安裝好查看data目錄的數據




3.遠程連接數據庫

注意:如果防火牆打開了,要把3309端口號加到防火牆中,要么就關閉防火牆


centos7關閉防火牆:
systemctl stop firewalld.service


centos7查看防火牆的狀態:
firewall-cmd --state


centos7開放端口號:

firewall-cmd --add-port=3309/tcp --permanent
firewall-cmd --add-port=3309/udp --permanent
firewall-cmd --reload





3.1、服務器重啟了,但是數據庫連接不上怎么辦?

1.手動啟動mysql容器

通過docker ps 查看當前啟動的容器
docker start 容器id或者名稱



2.設置容器開機自啟動

docker update --restart=always 容器id





4.在服務器中操作數據庫

首先要進入進入容器bash,然后輸入密碼123456進行登錄

docker exec -i -t wwhmysql bash

不想要這個數據庫了,咋辦



5.刪除容器

  1. 查看容器
docker ps -a




2. 刪除容器

如果這個容器不想要,刪除也非常簡單。通過docker ps 找到容器的 CONTAINER ID

docker stop 5b4f4c6a89d8  # 停止容器運行
docker rm  5b4f4c6a89d8   # 刪除容器

3. 刪除鏡像

首先通過 docker images 找到鏡像IMAGE ID。

然后,通過docker rmi 命令刪除。

docker rmi cc8775c0fe94

原來新建的存放數據的wwh也刪除掉


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM