liunx上面备份postgres数据库脚本
背景
在liunx上面安装docker,在docker容器中安装postgres数据库,一定的时间进行数据库的备份
- 1安装postgresql客户端
安装客户端可以执行pg_dump命令
sudo yum install postgresql
删除客户点 sudo yum remove postgresql
- 2.创建.sh文件
#!/bin/bash echo "开始执行 PostgreSql 数据库thingsboard的备份!" echo "backup ing -------------------" nowtime=$(date +%F) PGPASSWORD=123qwe!@# # 文件名称 str1="dump_back.sql"FILENAME=$str1#这里面的postgres是容器名称 docker exec -it postgres pg_dump -U user dbname> /home/qr/docker/postgres/db_back/"$FILENAME" echo "backup end -------------------" echo "生成文件 $FILENAME" echo "从docker容器复制文件到宿主机" #sudo chmod -R 777 /home/qr/docker/postgres/db_back/ #docker cp 'postgres:/var/lib/postgresql/data/sqldata/'$FILENAME'' '/home/qr/docker/postgres/db_back/' #echo "删除docker容器里面的备份文件" #docker exec -i postgres /bin/bash -c 'cd //var/lib/postgresql/data/sqldata&&rm '$FILENAME'' #echo "数据库备份结束!" exit;
- 3.执行sh文件即可