【Docker】Docker安装Mysql5.7

在Docker容器中部署MySQL5.7时,请按照以下步骤操作以确保稳定性和兼容性。
首先从网易加速源拉取MySQL镜像,使用以下命令:bashdockerpullregistry.cn-shanghai.aliyuncs.com/google_containers/mysql-5_7:5.7.24然后重命名镜像:bashdockerrenamemysql-5_7:5.7.24mysql5_7创建一个容器并安装镜像:bashdockerrun--namemysql-main-p3306:3306-eMYSQL_ROOT_PASSWORD=your_passwordmysql5_7启动容器:bashdockerstartmysql-main使用命令登录MySQL容器:bashdockerexec-itmysql-mainbash登录容器中的MySQL:bashmysql-uroot-pyour_password设置偏僻的授权,例如添加一条允许远程访问的规则:sqlGRANTALLPRIVILEGESON*.*TO'user'@'%'IDENTIFIEDBY'password';FLUSHPRIVILEGES;保存并退出MySQL:bashexit要解决MySQL查询的问题,编辑容器中的配置文件:bashvi/etc/mysql/mysql.conf.d/mysqld.cnf在`[mysqld]`部分添加:inilower_case_table_names=1.保存并退出编辑器。
重新启动MySQL容器:bashsudodockerrestartmysql-main解决了MySQL5.7查询兼容性问题,该问题通常与版本特定的功能或修复相关。
您可能需要根据实际情况调整MySQL配置或更新容器镜像。
解决更改密码时的不兼容性问题可能需要更改配置文件以确保与新版本MySQL的兼容性。
在Docker中运行MySQL时,可以通过添加选项来自定义容器的行为,例如:bashdockerrun-d--namemysql-instance--restart=always-p3306:3306-eMYSQL_ROOT_PASSWORD=my_root_passwordmysql:5.7这个`-d`选项表示以后台模式运行,`--restart=always`确保容器自动意外终止后重新启动,`-p3306:3306`将本地端口3306映射到容器端口3306,`-e`设置环境变量来配置MySQL。
通过上述步骤,您可以确保在Docker上高效部署MySQL5.7,同时解决常见的兼容性和配置问题。