数据库数据定时备份, 本地和异地备份数据库

因为数据库所在的服务器老化严重, 所以需要把数据库做一个定时备份, 每天都备份到本地和另外一台服务器.

环境: linux, postgreSql

1, linux创建两个文件夹, 一个放脚本, 一个放备份文件

scriptFolder

db_backup

2, 创建脚本, 并给予脚本操作权限

chmod 775 /scriptFolder/backupdata.sh

3, 编写脚本内容:

#!/bin/sh

fname1="$(date +%Y%m%d)_aaa数据库名字_.dump";

pg_dump  -h 127.0.0.1  -U lightoss -F c -f /db_backup/$fname1  aaa数据库名字

scp  /db_backup/$fname1  root@127.0.0.333:/db_backup/$fname1

4, 编写linux定时任务:

crontab -e

加上 

00 03 * * * /sp/scriptFolder/backupdata.sh
每天凌晨三点备份数据, 并把文件传到127.0.0.333这个服务器.
5, 使用scp发送文件, 需要在127.0.0.333这个服务器上添加你的密钥
ssh-keygen -t rsa
三个回车键
ssh-copy-id -i /root/.ssh/id_rsa.pub root@127.0.0.333 
( 部分linux不支持ssh-copy-id, 可以使用下面这个 )
( cat ~/.ssh/id_*.pub | ssh root@10.205.128.154 'cat >> .ssh/authorized_keys')
输入127.0.0.333的ssh登录密码
6, 收工, 以后每天凌晨三点, 服务器都会自动备份数据库数据, 并发送备份文件到另一台服务器, 再也不用担心服务器挂掉, 数据丢失的情况了.
posted @ 2021-05-08 16:03  微臣在此  阅读(629)  评论(0)    收藏  举报