linux备份oracle数据库(linux系统上怎样备份oracle数据库)
各位老铁们好,相信很多人对linux备份oracle数据库都不是特别的了解,因此呢,今天就来为大家分享下关于linux备份oracle数据库以及linux系统上怎样备份oracle数据库的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!
linux系统上怎样备份oracle数据库
步骤以下:1、编写备份数据库的shell
1、创建保存shell文件的文件夹,2、文件内容为:#!/bin/sh
PATH=$PATH:$HOME/bin
export
PATH
ORACLE_BASE=/u01/app/oracle
export
ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export
ORACLE_HOME
ORACLE_SID=HRDB
export
ORACLE_SID
PATH=/usr/sbin:$PATH
PATH=$ORACLE_HOME/bin:$PATH
export
PATH
exp
fact/fact
file=/backup/fact`date
+%y%m%d`.dmp
log=/backup/factlog`date
+%y%m%d`.log
shell文件编写终了1、运行以上的shell文件看是不是能生成备份的.dmp文件,如果能则表示shell文件编写成功
2、然后在此shell文件的所在终端输入命令,将此文件授权让root用户可以履行:
3、命令为:chmod
+x
backup.sh
4、然后到root终端编写定时备份的语句5、语句为:crontab
–e
6、输入i
7、输入10
17
,,,/home/backupscript/backup.sh
8、按下esc建,输入:wq
退出并保存便可。
...另一台Linux服务器中的Oracle数据库进行全库备份
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 oracle@172.16.1.5:/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' oracle@172.16.1.1:/data1/rman/data1
4、开启归档模式,在服务器AB间配置DATAGURAD,同步数据
linux系统 还原oracle数据库步骤跟命令
数据还原:
1.在命令行输入:sqlplus"/as sysdba"
2.执行以下语句登录xx数据库,用户名:xx,密码:xx(请输入当地实际密码)
conn xx/xx;
3.如果恢复的表中有涉及到触发器的请停止触发器,例:A表
alter table A disable all triggers;
commit;
4.执行以下语句退出当前用户
quit;
5.执行以下语句,恢复用户数据。
impdp xx/xx@数据库实例名 directory=bak_dir table_exists_action=truncate dumpfile=expdb_xx.dmp logfile=impdb_xx.log
5.在命令行输入:sqlplus"/as sysdba"
6.执行以下语句登录xx数据库,用户名:xx,密码:xx(请输入当地实际密码)
conn xx/xx;
7.执行以下语句打开被禁止的触发器
alter table A enable all triggers;
commit;
如何在linux环境导出oracle数据库
步骤如下:
一、编写备份数据库的shell
1、创建保存shell文件的文件夹,
2、文件内容为:
#!/bin/sh
PATH=$PATH:$HOME/bin
export PATH
ORACLE_BASE=/u01/app/oracle
export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_HOME
ORACLE_SID=HRDB
export ORACLE_SID
PATH=/usr/sbin:$PATH
PATH=$ORACLE_HOME/bin:$PATH
export PATH
exp fact/fact file=/backup/fact`date+%y%m%d`.dmp
log=/backup/factlog`date+%y%m%d`.log
shell文件编写完毕
一、运行以上的shell文件
看是否能生成备份的.dmp文件,如果能则表示shell文件编写成功
二、然后在此shell
文件的所在终端输入命令,将此文件授权让root用户可以执行:
三、命令为:chmod+x backup.sh
四、然后到root终端编写定时备份的语句
五、语句为:crontab–e
六、输入i
七、输入10 17,,,/home/backupscript/backup.sh
八、按下esc建,输入:wq退出并保存即可。
linux备份oracle数据库和linux系统上怎样备份oracle数据库的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!