Oracle数据库怎么定时异地备份
这篇文章主要讲解了“Oracle数据库怎么定时异地备份”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Oracle数据库怎么定时异地备份”吧!
创新互联建站是一家集网站建设,莱阳企业网站建设,莱阳品牌网站建设,网站定制,莱阳网站建设报价,网络营销,网络优化,莱阳网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
1)设置deferred_segment_creation参数
下面设置不管是不是空表都分配segment空间。
su - oracle sqlplus / as sysdba SQL>show parameter deferred_segment_creation
注意:该参数值默认是TRUE,当改为FALSE时,无论是空表还是非空表,都分配segment。
SQL>alter system set deferred_segment_creation=false;
注意:该值设置后对以前导入的空表不产生作用,仍不能导出,只能对后面新增的表产生作用。
重启数据库服务
2)配置ssh信任
配置ssh信任,备份脚本中的scp命令可以免密码传输文件到从服务器(192.168.1.21)上
在主服务器上执行:
ssh-keygen -t rsa //一直回车即可 cd /root/.ssh/ scp id_rsa.pub root@192.168.1.21:/root/.ssh/
在从服务器上执行:
cd /root/.ssh/ mv id_rsa.pub authorized_keys
这样在主服务器上可以scp免密码拷贝文件到从服务器上
3)自动备份脚本
先在从服务器上创建备份文件存储目录
mkdir -p /home/backup/oracledata/ chmod 777 /home/backup/oracledata/
在主服务器上编写脚本
vim /home/backup/oracledata/oraclebk.sh
# /usr/bin #路径名,指定备份的路径 FILEPATH=/home/backup/oracledata #根据指定日期格式,定义备份数据库文件名 FILENAME=`date +"%Y%m%d_%H%M"` #切换至指定路径,并创建文件夹 cd $FILEPATH mkdir $FILENAME chmod 775 $FILENAME #oracle变量设置 export USER=oracle; export ORACLE_SID=ecology; export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1; export PATH=$ORACLE_HOME/bin:$PATH; #导出数据库 exp ecology/ecology file="$FILENAME/$FILENAME".dmp log="$FILENAME/$FILENAME".log owner=ecology #打包 tar -zcvf $FILENAME.tar.gz $FILENAME rm -rf $FILENAME scp $FILENAME.tar.gz root@192.168.1.21:$FILEPATH/ find ./ -mtime +15 -name \*.gz |xargs rm -f exit EOF
4)添加计划任务
crontab -e 00 03 * * * sh /home/backup/oracledata/oraclebk.sh
5)重启crond服务
systemctl restart crond.service
感谢各位的阅读,以上就是“Oracle数据库怎么定时异地备份”的内容了,经过本文的学习后,相信大家对Oracle数据库怎么定时异地备份这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!
当前文章:Oracle数据库怎么定时异地备份
本文来源:http://scyanting.com/article/gcihho.html