linux下docker启动mysql容器

该篇博客详细介绍了如何使用Docker来操作MySQL数据库。首先,通过`docker pull mysql`命令下载MySQL镜像。然后,使用`docker images`查看已下载的镜像。最后,运用启动命令`docker run`配置并启动MySQL容器,包括端口映射、命名、数据卷挂载、环境变量设置等,确保数据库的安全性和可访问性。

下载命令:docker pull mysql

查看命令:docker images

启动命令:docker run -p 3306:3306 --name mysql-bgq -v /usr/local/mysql/data/:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123 -e MYSQL_DATABASE=changle -e TZ=Asia/Shanghai -d mysql:latest --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --default-time_zone='+8:00'


           

<think>我们正在回答用户的问题:在Linux系统中通过Docker启动MySQL的方法 根据用户提供的引用内容,我们可以总结出使用Docker启动MySQL的步骤 注意:用户引用内容中提供了多个不同的命令,我们需要整合并给出一个清晰的步骤 步骤: 1. 安装Docker(如果未安装) 2. 配置Docker(可选:镜像加速) 3. 拉取MySQL镜像 4. 创建并启动MySQL容器 5. 配置MySQL(可选:修改配置文件) 6. 其他操作(如设置自启动、备份等) 注意:用户引用中提到了多个版本的命令,我们将选择常见且推荐的方式 另外,根据引用[1]和引用[3]中的命令,我们将以MySQL 5.7为例,但也会提到其他版本 </think> ### Linux 系统使用 Docker 启动 MySQL 的方法 以下是完整的 Docker 启动 MySQL 操作流程(以 MySQL 5.7 为例): #### 一、安装 Docker ```bash # 1. 安装依赖 sudo apt update && sudo apt install -y apt-transport-https ca-certificates curl software-properties-common # 2. 添加 Docker 官方 GPG 密钥 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg # 3. 添加仓库 echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null # 4. 安装 Docker sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io # 5. 验证安装 docker --version # 输出示例: Docker version 20.10.17, build 100c701 ``` #### 二、配置 Docker 镜像加速(可选) ```bash sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://esa8bpy8.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker ``` #### 三、启动 MySQL 容器 ```bash # 1. 拉取镜像 sudo docker pull mysql:5.7 # 2. 创建并启动容器(推荐数据卷挂载) sudo docker run -d --name mysql-server \ -p 3306:3306 \ -e MYSQL_ROOT_PASSWORD=your_password \ -v /mydata/mysql/conf:/etc/mysql \ -v /mydata/mysql/data:/var/lib/mysql \ -v /mydata/mysql/logs:/var/log/mysql \ mysql:5.7 ``` **参数说明**: | 参数 | 作用 | |------|------| | `-d` | 后台运行 | | `--name mysql-server` | 容器命名 | | `-p 3306:3306` | 主机端口:容器端口映射 | | `-e MYSQL_ROOT_PASSWORD=xxx` | 设置 root 密码(必填) | | `-v /host/path:/container/path` | 挂载配置文件/数据目录 | #### 四、验证 MySQL 运行 ```bash # 查看运行中的容器 docker ps -f name=mysql-server # 进入容器执行命令 docker exec -it mysql-server mysql -uroot -p # 输入密码后出现 mysql> 提示符即成功 ``` #### 五、关键配置优化 创建自定义配置文件: ```bash sudo mkdir -p /mydata/mysql/conf sudo tee /mydata/mysql/conf/my.cnf <<-'EOF' [mysqld] character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci max_connections=1000 [client] default-character-set=utf8mb4 EOF ``` 重启容器生效配置: ```bash docker restart mysql-server ``` #### 六、管理命令 | 操作 | 命令 | |------|------| | **启动/停止** | `docker start/stop mysql-server` | | **开机自启** | `docker update --restart=always mysql-server` | | **查看日志** | `docker logs -f mysql-server` | | **数据备份** | `docker exec mysql-server mysqldump -uroot -p dbname > backup.sql` | > **注意**: > 1. 首次启动后需修改 root 密码:`ALTER USER 'root'@'%' IDENTIFIED BY 'new_password';` > 2. 生产环境建议添加 `--restart unless-stopped` 参数确保异常自动重启 > 3. 数据卷挂载可防止容器销毁时数据丢失[^1][^3]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值