docker 启动mysql8.0 怎么设置character_set_system=uts8,而不是utf8mb3
时间: 2023-12-22 10:04:59 浏览: 182
你可以通过在启动MySQL容器时,使用 `--character-set-server=utf8` 参数来设置 `character_set_system` 值为 `utf8`。具体操作如下:
1. 确保你已经安装了 Docker,如果没有安装,可以参考官方文档进行安装。
2. 运行以下命令来拉取 MySQL 8.0 镜像:
```
docker pull mysql:8.0
```
3. 运行以下命令来启动 MySQL 容器,并设置 `character_set_system` 值为 `utf8`:
```
docker run --name mysql -e MYSQL_ROOT_PASSWORD=password -d mysql:8.0 --character-set-server=utf8
```
上述命令中,`--name` 参数用来指定容器的名称,`-e MYSQL_ROOT_PASSWORD=password` 参数用来设置 MySQL 的 root 用户的密码,`-d` 参数用来以后台模式运行容器,`--character-set-server=utf8` 参数用来设置 `character_set_system` 值为 `utf8`。
4. 运行以下命令来进入 MySQL 容器:
```
docker exec -it mysql bash
```
5. 运行以下命令来连接到 MySQL 服务器:
```
mysql -u root -p
```
输入之前设置的 root 用户的密码,即可进入 MySQL 服务器。
6. 运行以下命令来验证 `character_set_system` 值是否已经设置为 `utf8`:
```
mysql> SHOW VARIABLES LIKE 'character_set_system';
```
如果输出结果中 `Value` 列的值为 `utf8`,则说明 `character_set_system` 值已经成功设置为 `utf8`。
注意:如果你已经创建了 MySQL 容器,可以使用以下命令来修改 `character_set_system` 值:
```
docker container stop mysql
docker container rm mysql
docker run --name mysql -e MYSQL_ROOT_PASSWORD=password -d mysql:8.0 --character-set-server=utf8
```
阅读全文