话说不会运维的开发不是一个好开发,给你一台测试服务器总不能连个数据库都不会装吧!
鉴于容器化技术的发展,本文主要记录mysql基于docker的安装及使用事项。
1.容器中安装mysql
如果当前mysql和其他服务在同一台机(用容器名连接),需要先创建一个网段,如果单独部署可以忽略
#创建网络my-net
docker network create my-net
2 配置my.cnf
不配置可能会出现表名区分大小写。批量插入sql大小受限制,也可以忽略
3 docker run命令启动
因为mysql在docker镜像仓库有官方镜像,可以直接用,想使用最新版本号直接用mysql,我这里用的8.0
/root/local/mysql/mysql-files:/var/lib/mysql-files 本地部署有报错找不到这个目录,估计是升级导致的,可加可不加
4 docker-compose启动
- 准备yaml文件,名称必须是docker-compose.yaml
启动并查看容器
5 连接
账号:root,密码:123456,可以使用工具连接,也可以使用docker exec -it mysql01 /bin/sh进入容器内部执行mysql -u root -p然后输入密码进行连接,正常情况就不演示了
外网连接问题
1.密码正确,无权限
host那列如果是localhost,表示只能内网访问
找不到caching_sha2_password模块
密码插件如果是caching_sha2_password,需要强制修改密码
3.注意事项
- 端口映射时,保证宿主机端口不被占用
- 需要挂载的文件一定要保证存在才挂载
- 如果进行降版本的,data数据目录可能会存在解析不到,挂载过去启动会报错
以上就是本章的全部内容了。