如何在docker中安装mysql_mysql docker安装教程
#技术教程 发布时间: 2025-12-20
最简单方式是用docker run命令启动MySQL官方镜像:docker run -d --name mysql8 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /mydata/mysql:/var/lib/mysql mysql:8.0,需注意密码设置、端口映射、数据挂载及认证插件兼容性。
直接用 Docker 运行 MySQL 最简单的方式是拉取官方镜像并启动容器,无需手动安装、配置服务或处理依赖。关键在于正确设置密码、端口映射和数据持久化。
拉取并运行 MySQL 官方镜像
执行以下命令即可快速启动一个 MySQL 8.0 实例(默认 root 密码设为 123456):
- docker run -d --name mysql8 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /mydata/mysql:/var/lib/mysql -d mysql:8.0
说明:
– -d 后台运行;
– --name mysql8 指定容器名,便于后续管理;
– -p 3306:3306 将宿主机 3306 端口映射到容器;
– -e MYSQL_ROOT_PASSWORD 必填环境变量,设置 root 密码;
– -v /mydata/mysql:/var/lib/mysql 挂载数据目录,避免容器删除后数据丢失。
连接 MySQL 容器
启动成功后,可用任意 MySQL 客户端连接本地 3306 端口:
- 命令行连接:mysql -h 127.0.0.1 -P 3306 -u root -p,输入密码 123456
- DBeaver、Navicat 等图形工具,主机填 127.0.0.1,端口 3306,用户名 root,密码同上
注意:MySQL 8.0 默认使用 caching_sha2_password 认证插件,部分旧客户端可能不兼容。如遇连接失败,可在容器内执行:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
自定义配置(可选)
如需修改字符集、最大连接数等,可挂载自定义配置文件:
- 创建配置文件:mkdir -p /mydata/mysql/conf && echo '[mysqld]\ncharacter-set-server=utf8mb4\ncollation-server=utf8mb4_unicode_ci\nmax_connections=500' > /mydata/mysql/conf/my.cnf
- 启动时挂载:-v /mydata/mysql/conf/my.cnf:/etc/mysql/conf.d/my.cnf
配置文件需放在容器中 /etc/mysql/conf.d/ 或 /etc/mysql/my.cnf 路径下才生效。
常用管理命令
- 查看运行中的容器:docker ps | grep mysql
- 进入容器执行命令:docker exec -it mysql8 mysql -u root -p
- 停止容器:docker stop mysql8
- 重启容器:docker start mysql8
- 查看日志:docker logs -f mysql8
容器名(如 mysql8)可用 docker ps 查看,也可用容器 ID 替代。
上一篇 : CentOS6.5 上部署 MySQL5.7.17 二进制安装以及多实例配置
下一篇 : Yii2-GridView 中让关联字段带搜索和排序功能示例
-
SEO外包最佳选择国内专业的白帽SEO机构,熟知搜索算法,各行业企业站优化策略!
SEO公司
-
可定制SEO优化套餐基于整站优化与品牌搜索展现,定制个性化营销推广方案!
SEO套餐
-
SEO入门教程多年积累SEO实战案例,从新手到专家,从入门到精通,海量的SEO学习资料!
SEO教程
-
SEO项目资源高质量SEO项目资源,稀缺性外链,优质文案代写,老域名提权,云主机相关配置折扣!
SEO资源
-
SEO快速建站快速搭建符合搜索引擎友好的企业网站,协助备案,域名选择,服务器配置等相关服务!
SEO建站
-
快速搜索引擎优化建议没有任何SEO机构,可以承诺搜索引擎排名的具体位置,如果有,那么请您多注意!专业的SEO机构,一般情况下只能确保目标关键词进入到首页或者前几页,如果您有相关问题,欢迎咨询!