linux服务器中如何登陆另一台Linux服务器中的Oracle数据库进行全库备份?

例如:oracle数据库在服务器A上,如何使用服务器B登陆到服务器A上的oracle数据库中,进行全库备份,将备份文件保存在服务器B上。

1、你可以在数据库A做计划任务,用exp或者expdp导出,然后scp或者rsync到服务器B
例如计划任务0 0 * * * /data1/backup/expdp_db_bak.sh;
expdp_db_bak.sh内容:
#!/bin/sh
. ~/.bash_profile
dst=/data1/backup/db_bak
today=`date +%F`
bakfile=expdp_db_${today}.dmp
logfile=expdp_db_${today}.log
expdp 'user01/778899' DIRECTORY=expdp_dir1 parallel=2 \
dumpfile=$bakfile SCHEMAS=user01 logfile=$logfile COMPRESSION=all
scp -P22 $bakfile [email protected]:/data1/backup/db_bak
exit 0;
2、也可以在服务器B用exp直接导出数据
exp 'user01/778899@DB01' file=$bakfile FULL=Y log=bak.log
3、开启归档模式,在服务器A用rman 做全备或增量备份,然后将备份同步到服务器B
指定路径
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/data1/rman/full_%d_%U';
全备份,默认Format
backup incremental level 0 database;
增量备份
backup incremental level 1 database;
将备份rsync 到服务器B
/usr/bin/rsync -av '-e ssh -p 22' [email protected]:/data1/rman /data1
4、开启归档模式,在服务器AB间配置DATAGURAD,同步数据
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-09-11
dataguard,stream replication,goldengate.....
方法很多,看你具体需求了追问

你的回答真牛逼

相似回答