# 怎么在Docker上安裝MySQL 5.7版本
Docker作為輕量級的容器化技術,能夠快速部署應用環境。本文將詳細介紹如何在Docker中安裝MySQL 5.7版本,并配置基礎參數。
---
## 一、準備工作
### 1. 安裝Docker
確保系統已安裝Docker引擎:
```bash
# Ubuntu/Debian
sudo apt update && sudo apt install docker.io
# CentOS/RHEL
sudo yum install docker
sudo systemctl start docker
# 驗證安裝
docker --version
從Docker Hub獲取官方鏡像:
docker pull mysql:5.7
docker run -d \
--name mysql57 \
-e MYSQL_ROOT_PASSWORD=yourpassword \
-p 3306:3306 \
mysql:5.7
-d
:后臺運行容器--name
:指定容器名稱-e
:設置環境變量(此處配置root密碼)-p
:端口映射(主機端口:容器端口)為避免數據丟失,建議掛載本地目錄:
docker run -d \
--name mysql57 \
-e MYSQL_ROOT_PASSWORD=yourpassword \
-v /path/on/host:/var/lib/mysql \
-p 3306:3306 \
mysql:5.7
創建my.cnf
文件:
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
max_connections=200
啟動時掛載配置文件:
docker run -d \
--name mysql57 \
-v /path/to/my.cnf:/etc/mysql/conf.d/my.cnf \
-e MYSQL_ROOT_PASSWORD=yourpassword \
-p 3306:3306 \
mysql:5.7
變量名 | 作用 |
---|---|
MYSQL_DATABASE |
初始化數據庫 |
MYSQL_USER + MYSQL_PASSWORD |
創建普通用戶 |
MYSQL_ROOT_HOST |
限制root訪問主機 |
docker exec -it mysql57 mysql -uroot -p
docker logs mysql57
# 備份
docker exec mysql57 sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > backup.sql
# 恢復
cat backup.sql | docker exec -i mysql57 mysql -uroot -p"$MYSQL_ROOT_PASSWORD"
端口沖突
修改-p
參數為其他端口(如3307:3306
)
權限不足
啟動時添加--privileged=true
參數
字符集問題
確保配置文件中設置utf8mb4
字符集
通過以上步驟,您已成功在Docker中部署了MySQL 5.7服務。Docker的隔離性和便捷性使得數據庫環境管理更加高效,適合開發、測試和生產環境使用。 “`
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。