docker 启动mysql容器 添加别的-
时间: 2023-07-01 11:22:13 浏览: 207
启动MySQL容器时,除了上面提到的参数之外,还可以添加一些别的参数,例如:
1. `-v`:指定数据卷,将容器内的数据保存在宿主机上,避免容器删除后数据丢失。
2. `--restart`:设置容器在退出后的重启策略。
3. `-e`:设置 MySQL 的其他环境变量,例如字符集、时区等。
示例命令如下:
```
docker run -d --name mysql -p 3306:3306 -v /mydata/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=yourpassword -e MYSQL_CHARSET=utf8mb4 -e TZ=Asia/Shanghai --restart always mysql:latest
```
其中,`-v` 参数将容器内的 `/var/lib/mysql` 目录挂载到宿主机的 `/mydata/mysql` 目录上,`--restart` 参数设置容器在退出后自动重启,`-e` 参数设置 MySQL 的字符集为 utf8mb4,时区为 Asia/Shanghai。
相关问题
docker mysql设置时区_Docker 中 MySQL容器时区不对,导致插入的时间不准确
在 Docker 中运行 MySQL 容器时,可以通过在启动容器时指定 `TZ` 环境变量来设置容器的时区,例如:
```
docker run --name my-mysql -e MYSQL_ROOT_PASSWORD=123456 -e TZ=Asia/Shanghai -d mysql:latest
```
这里将时区设置为“Asia/Shanghai”。
另外,也可以在 `my.cnf` 配置文件中设置系统时区。在 MySQL 容器中,该文件通常位于 `/etc/mysql/my.cnf` 或 `/etc/my.cnf`,可以通过 `docker exec` 命令进入容器后修改该文件。
打开 `my.cnf` 文件后,在 `[mysqld]` 段中添加以下内容:
```
default_time_zone = '+8:00'
```
这里将时区设置为东八区,也可以根据需要设置其他时区。
修改完配置文件后,需要重启 MySQL 容器才能生效。
```
docker restart my-mysql
```
docker 启动mysql 并创建数据库
使用Docker启动MySQL并创建数据库非常简单。首先,确保您已经安装了Docker和Docker Compose。
1. 创建一个名为`docker-compose.yml`的文件,并使用文本编辑器打开它。
2. 在该文件中,输入以下内容:
```yaml
version: '3.8'
services:
mysql:
image: mysql:latest
environment:
- MYSQL_ROOT_PASSWORD=your_root_password
- MYSQL_DATABASE=your_database_name
volumes:
- ./data:/var/lib/mysql
```
替换`your_root_password`为您想要设置的MySQL根密码,`your_database_name`为您想要创建的数据库的名称。
添加`volumes`部分是为了将MySQL数据保存在宿主机的`data`文件夹中。
3. 保存并关闭`docker-compose.yml`文件。
4. 打开终端或命令提示符,并导航到包含`docker-compose.yml`文件的目录。
5. 在终端或命令提示符中,运行以下命令启动MySQL容器:
```bash
docker-compose up -d
```
`-d`参数使容器在后台运行。
6. Docker将下载并启动MySQL容器。一旦容器启动成功,您将能够连接到MySQL数据库并执行操作。
您可以使用MySQL客户端工具,如MySQL Workbench或通过命令行工具连接到MySQL数据库:
```bash
mysql -h localhost -P 3306 -u root -p
```
输入您在`docker-compose.yml`文件中设置的根密码。
7. 成功连接到MySQL数据库后,可以使用SQL语句来创建新的数据库。
```sql
CREATE DATABASE your_database_name;
```
替换`your_database_name`为您想要创建的数据库名称。
8. 完成后,您可以退出MySQL客户端,并使用Docker停止MySQL容器:
```bash
docker-compose down
```
这样就成功使用Docker启动了MySQL容器并创建了数据库。
阅读全文