pg的一些简单的运维知识
centos7 、PostgreSQL10
一、粗略的数据库备份脚本
粗略的备份某个数据,例如:在每天23点备份这个
technology
数据库。
第一步:编写shell脚本 :backup.sh
#! /bin/sh
da=`date +%Y%m%d%H%M%S`
echo $da
pg_dump mydb > /var/lib/pgsql/10/backups/mydb$da.dmp
find /var/lib/pgsql/10/backups -type f -mtime +7 -delete
echo ok!
注意将这个脚本放置在/var/lib/pgsql/10/
另外需要确定该脚本的权限设置为可执行
第二步:添加到crontab
crontab -e
0 23 * * * /var/lib/pgsql/10/backup.sh
案例
[root@uzong 10]# pwd
/var/lib/pgsql/10
[root@uzong 10]# ll
total 20
-rw-r--r-- 1 root root 166 Jul 3 19:42 backup
drwx------ 2 postgres postgres 4096 May 8 18:25 backups
-rw-r--r-- 1 root root 178 Jul 3 19:44 backup.sh
drwx------ 20 postgres postgres 4096 Jul 3 00:00 data
-rw------- 1 postgres postgres 875 Apr 11 15:05 initdb.log
[root@uzong 10]# cat backup.sh
#! /bin/sh
da=`date +%Y%m%d%H%M%S`
echo $da
pg_dump technology > /var/lib/pgsql/10/backups/technology$da.dmp
find /var/lib/pgsql/10/backups -type f -mtime +5 -delete
echo ok!
[root@uzong 10]#
为了测试,写一个1min中的调动。
crontab -e
*/1 * * * * /var/lib/pgsql/10/backup.sh
完成下面备份