docker容器安装mysql
拉取mysql 5.7
docker pull mysql:5.7
启动服务
docker run -d -p 3306:3306 --privileged=true -v /Docker_mysql/mysql/log:/var/log/mysql -v /Docker_mysql/mysql/data:/var/lib/mysql -v /Docker_mysql/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -e LANG="C.UTF-8" --name mysql mysql:5.7
参数说明
--privileged 容器数据卷权限开启
-p 3306:3306: 将容器的3306端口映射到主机的3306端口
-v /Docker_mysql/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
-v /Docker_mysql/mysql/conf:/etc/mysql/conf.d :将配置文件夹挂载到主机
-v /Docker_mysql/mysql/data:/var/lib/mysql
-e MYSQL_ROOT_PASSWORD=root:初始化root的密码
完成以上配置后,需要再新建my.cnf,重新编辑防止乱码。因为容器数据卷已经映射了mysql的配置目录,直接在宿主机的数据卷配置目录新建即可。配置完成然后重启
[root@192 mysql]# pwd
/Docker_mysql/mysql
[root@192 conf]# pwd /Docker_mysql/mysql/conf [root@192 conf]# vim my.cnf //配置内容 [client] default_character_set=utf8 [mysqld] collation_server = utf8_general_ci character_set_server = utf8
[root@192 conf]# docker ps [root@192 conf]# docker restart mysql
连接宿主机ip及对应端口操作数据库即可
注意:docker安装完mysql并run出容器之后,建议请先修改完字符集编码后再新建mysql库->表->插入数据 。
如果容器被删除,重新执行配置容器卷映射的命令即可恢复数据。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?