postgresql 和 mysql 数据库备份恢复以及时区问题
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了postgresql 和 mysql 数据库备份恢复以及时区问题,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2432字,纯文字阅读大概需要4分钟。
内容图文
- 概要
- postgesql 12
- 备份/恢复脚本
- 时区设置
- mysql 5.6
- 备份/恢复脚本
- 时区设置
概要
postgresql 和 mysql 是最常用的 2 种开源关系数据库, 很多项目也会优先选用这 2 种数据库.
通过 docker 来使用这 2 种数据库的时候, 部署非常方便, 没什么好说的. 这里简单总结下数据库的备份/恢复和时区设置问题.
postgesql 12
备份/恢复脚本
1 DOCKER_CONTAINER=pg12
2 DATE=`date +%Y%m%d-%H%M`
3 BACK_DATA=${DOCKER_CONTAINER}-data-${DATE}.out
4 docker exec ${DOCKER_CONTAINER} pg_dumpall -U postgres > ${BACK_DATA}
5
6 echo "docker cp ${BACK_DATA} ${DOCKER_CONTAINER}:/tmp" > restore-data.sh
7 echo "docker exec ${DOCKER_CONTAINER} psql -U postgres -f /tmp/${BACK_DATA} postgres" >> restore-data.sh
其中 DOCKER_CONTAINER 可以配置成自己的数据库 docker 的名称 备份之后, 会生成对应的恢复脚本.
时区设置
docker 中的数据库默认都是配置的 UTC 时区, 和中国差 8 个小时. 通过修改配置文件, 可以将默认时区改成中国的时区.
把 docker 中 /var/lib/postgresql/data/postgresql.conf 文件拷贝出来, 并修改如下 2 条:
log_timezone = ‘PRC‘
timezone = ‘PRC‘
启动的 docker-compose.yml 中, 加上对应 volume 配置:
services:
postgres:
image: postgres:12
restart: always
ports:
- "5432:5432"
volumes:
- db_data:/var/lib/postgresql/data
- ./postgresql.conf:/var/lib/postgresql/data/postgresql.conf
environment:
POSTGRES_PASSWORD: mypassword
mysql 5.6
备份/恢复脚本
1 DOCKER_CONTAINER=mysqldb
2 DB_NAME=db1
3 DATE=`date +%Y%m%d-%H%M`
4 BACK_DATA=${DOCKER_CONTAINER}-${DB_NAME}-${DATE}.sql
5 docker exec ${DOCKER_CONTAINER} mysqldump -uroot -pxxx --databases ${DB_NAME} > ${BACK_DATA}
6
7 echo "docker cp ${BACK_DATA} ${DOCKER_CONTAINER}:/tmp" > restore-data.sh
8 echo "docker exec ${DOCKER_CONTAINER} mysql -uroot -pxxx -D ${DB_NAME} < /tmp/${BACK_DATA}" >> restore-data.sh
其中 DOCKER_CONTAINER 可以配置成自己的数据库 docker 的名称 DB_NAME 可以配置需要备份的数据库名称 备份之后, 会生成对应的恢复脚本.
时区设置
mysql 的时区配置比较简单, 可以不改配置文件, 在 docker-compose.yml 中做如下修改就行:
mysql-db:
image: mysql:5.7
restart: always
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: mypassword
volumes:
- /usr/share/zoneinfo/Asia/Shanghai:/usr/share/zoneinfo/Asia/Shanghai
postgresql 和 mysql 数据库备份恢复以及时区问题
postgresql 和 mysql 数据库备份恢复以及时区问题
标签:vol 需要 生成 方便 compose mes lib out -bash
本文系统来源:https://www.cnblogs.com/wang_yb/p/13524425.html
内容总结
以上是互联网集市为您收集整理的postgresql 和 mysql 数据库备份恢复以及时区问题全部内容,希望文章能够帮你解决postgresql 和 mysql 数据库备份恢复以及时区问题所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。