使用docker安装mysql8
使用docker-compose安装mysql 8.4.3,并且把时区设置为上海。
volumes
配置的作用
/var/db/mysql/data
:这是将容器内的/var/lib/mysql
目录挂载到主机的/var/db/mysql/data
目录。这种方式的好处是可以直接在主机上访问和管理数据文件。
version: '3.8'
services:
db:
image: mysql:8.4.3
container_name: mysql_db
environment:
MYSQL_ROOT_PASSWORD: your_root_password
MYSQL_DATABASE: your_database_name
MYSQL_USER: your_user
MYSQL_PASSWORD: your_password
TZ: Asia/Shanghai
volumes:
- /var/db/mysql/data:/var/lib/mysql
ports:
- "3306:3306"
restart: always
解释
/var/db/mysql/data:/var/lib/mysql
:将主机的/var/db/mysql/data
目录挂载到容器的/var/lib/mysql
目录。这样,MySQL 的数据文件将存储在主机的/var/db/mysql/data
目录中。
步骤 4: 确保主机目录存在
在启动容器之前,请确保主机上的目录 /var/db/mysql/data
已经存在,并且具有适当的权限。
sudo mkdir -p /var/db/mysql/data
sudo chown -R 999:999 /var/db/mysql/data
999:999
是 MySQL 容器内运行 MySQL 服务的用户和组的 UID 和 GID。您可以根据实际情况调整这些值。
启动 MySQL 容器
在 mysql-docker
目录下运行以下命令来启动 MySQL 容器:
docker-compose up -d
验证安装和时区设置
-
检查容器状态:
docker-compose ps
-
进入 MySQL 容器:
docker exec -it mysql_db mysql -uroot -p
-
验证时区设置:
SHOW VARIABLES LIKE '%time_zone%'; SELECT NOW();
注意事项
- 权限:确保主机目录
/var/db/mysql/data
具有适当的权限,以便 MySQL 容器可以读写数据。 - 数据备份:定期备份主机上的数据目录,以防止数据丢失。
- 路径长度:确保路径长度不超过操作系统和文件系统的限制。
原文地址:https://blog.csdn.net/naturaltao/article/details/143720545
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!