客户需求对oracle数据库做一个跨机房的备份,原环境已做rman备份和每天expdp全库导出,远端只有虚拟化环境,可提供一个虚拟机,2个机房间网络互通。
首先配置nfs服务端
查看操作系统版本
root@nas199 \~\]# more /etc/redhat-release CentOS Linux release 7.9.2009 (Core) yum包 \[root@nas199 \~\]# yum -y install nfs-server portmap showmount 把NFS设为开机自启: \[root@nas199 \~\]# systemctl enable nfs \&\& systemctl start nfs 将RPC设为开机自启: \[root@nas199 \~\]# systemctl enable rpcbind \&\& systemctl start rpcbind 关闭防火墙 \[root@nas199 \~\]# systemctl stop firewalld \&\& systemctl disable firewalld 查看数据库的oracle用户id和组id \[root@db1 \~\]# id oracle uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba),54323(oper),54327(asmdba),54329(asmadmin) 编辑/etc/exports,如下所示 \[root@nas199 \~\]# cat /etc/exports /backup/ 172.100.18.196(rw,sync,no_root_squash,anonuid=54321,anongid=54321) /backup/ 122.100.18.197(rw,sync,no_root_squash,anonuid=54321,anongid=54321) 修改/etc/exports后重新加载 \[root@nas199 \~\]# exportfs -rv exporting 172.100.18.196:/backup exporting 172.100.18.197:/backup \[root@nas199 \~\]# 在db1上操作 \[root@db1 \~\]# showmount -e 172.100.18.199 Export list for 172.100.18.199: /backup 172.100.18.197,172.100.18.196 \[root@db1 \~\]# mkdir /nasbackup \[root@db1 \~\]# mount 172.100.18.199:/backup /nasbackup \[root@db1 \~\]# chown -R oracle:oinstall /nasbackup \[root@db1 \~\]# chmod -R 775 /nasbackup \[root@db1 \~\]# df -ht nfs4 Filesystem Size Used Avail Use% Mounted on nasserver:/backup 11T 815G 11T 8% /nasbackup \[root@db1 \~\]# orcl1:/home/oracle@db1\> crontab -l 10 02 \* \* \* /home/oracle/copy_to_nasbackup.sh \& orcl1:/home/oracle@db1\> cat /home/oracle/copy_to_nasbackup.sh #!/bin/bash rsync -vzurtopg --progress /backup/orcl /nasbackup /bin/find /nasbackup/orcl/rmanbackup/ -type f -name "rman_\*" -mtime +60 -exec rm {} \\; /bin/find /nasbackup/orcl/logicbacup/ -type f -name "orcl_\*" -mtime +60 -exec rm {} \\;