1. 环境准备
开始安装 MySQL 5.7,你需要确保你的机器上已经安装了 Docker。如果还没有安装 Docker,可以参考官方文档进行安装.
2. 拉取 MySQL 5.7 镜像
首先,需要从 Docker Hub 拉取 MySQL 5.7 的镜像。你可以使用以下命令:
docker pull mysql:5.7
这将下载指定版本的 MySQL 镜像.
3. 创建必要的目录和配置文件
为了持久化数据和配置,你需要创建几个目录:
mkdir -p /mydata/mysql/conf /mydata/mysql/data /mydata/mysql/logs
然后,你可以创建并编辑 my.cnf 配置文件:
touch /mydata/mysql/conf/my.cnf
vi /mydata/mysql/conf/my.cnf
在 my.cnf 文件中,你可以添加以下内容:
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
init_connect="SET collation_connection = utf8mb4_unicode_ci"
init_connect="SET NAMES utf8mb4"
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
详细配置可以根据实际需求进行调整.
[client]部分包含了 MySQL 客户端的配置,确保客户端使用 UTF-8 字符集。[mysql]部分也配置了 MySQL 客户端的默认字符集。[mysqld]部分包含了 MySQL 服务器的配置选项,用于配置 MySQL 服务器的行为
4.运行 MySQL 容器
使用以下命令运行 MySQL 容器:
docker run -d -p 3306:3306 --name mysql \
-v /mydata/mysql/conf:/etc/mysql/conf.d \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/logs:/var/log/mysql \
--restart=always \
-e MYSQL_ROOT_PASSWORD="你自己配置的密码" \
mysql:5.7
这里,-p 3306:3306 指定了端口映射,-v 参数用于挂载卷,确保数据和配置文件的持久化。--restart=always 确保容器在重启时自动启动.
5. 访问 MySQL
启动容器后,你可以使用以下命令进入容器:
docker exec -it mysql bash
然后,使用以下命令登录 MySQL:
mysql -uroot -p
输入密码后,你就可以进行数据库操作了。例如,授权远程访问:
GRANT ALL ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;
详细操作可以参考相关文档.
6. 检查容器状态
你可以使用以下命令检查容器是否运行成功:
docker ps -a
如果看到你的 MySQL 容器正在运行,说明安装成功.
结论
通过上述步骤,你已经成功地在 Docker 中安装和运行了 MySQL 5.7。