导航:首页 > 操作系统 > linuxoracle定时备份

linuxoracle定时备份

发布时间:2022-06-15 05:24:07

1. 菜鸟求助:linux下oracle数据库自动备份脚本,脚本可实现数据库自动备份功能,并删除三天前的备份

这个好办。 cp 你的数据库`date +'%y%m%d'` 指定目录 这个是以年月日来命名备份 删除的命令
rm -f 你的数据库名字`date -d "3 days ago" +'%y%m%d'` 这个是删除匹配你数据库的备份名日期前3天的备份文件 他会按照日期-3天匹配3天前的日期来删除备份的

2. 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/proct/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 退出并保存即可。

3. linux oracle 定时备份计划问题

crontab 执行的脚本是以root用户来调用的,所以必须要加上oracle用户的环境变量如ORACLE_HOME、ORACLE_BASE、ORACLE_SID,ORACLE_HOME/bin也要加到path里面
另外expdp_oracle.sh其他用户也要有执行权限
example:
vi expdp_oracle.sh
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/proct/10.2/db_1
export ORACLE_SID=orcl
export PATH=/u01/app/oracle/proct/10.2/db_1/bin;$PATH

expdp system/oracle directory=DDPDATA21 mpfile=rrq.dmp schemas= 'MMS';
wq:

4. linux下怎么定时备份oracle数据库

如果是sql server,定期备份可以利用sql server的management studio来做,比较方便。但要做oracle的定期备份,那就需要我们写导出命令,并设置linux的定时任务。
首先创建一个数据库作为测试。
--创建数据表空间
create tablespace test_data
logging
datafile '/u01/app/oradata/test/TEST.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;

--创建用户并指定表空间
create user TEST identified by 123
default tablespace test_data
temporary tablespace temp;

--给用户授予权限
grant connect,resource to TEST;
用Test用户登录,创建一个表,并插入两条数据:
create table t1(
Id varchar(50) primary key,
title varchar(50)
);

insert into t1 values(sys_guid(),'t1');
insert into t1 values(sys_guid(),'t2');
commit;
先写一个导出的脚本文件:
export ORACLE_BASE=/u01/app
export ORACLE_HOME=/u01/app/oracle
export ORACLE_SID=TEST
export PATH=$ORACLE_HOME/bin:$PATH
d=$(date '+%Y%m%d')
exp TEST/123@TEST file=/home/oracle/backup/$d.dmp log=/home/oracle/backup/$d.log owner=TEST
zip -m /home/oracle/backup/$d.zip /home/oracle/backup/$d.dmp /home/oracle/backup/$d.log
前4句是设置环境变量,因为crontab定时调用时,不会使用oracle用户的环境变量,所以要先把它们导进来。第6行以当前日期作为导出的文件名,例如20120626.dmp和20120626.log。第7行把这两个文件打成一个zip包,并删掉这两个文件。
要用chmod命令把这个sh标记为可执行:
chmod +x backup.sh

用oracle用户,输入crontab -e命令,编辑oracle用户的任务计划:
[oracle@localhost backup]$ crontab -e
42 13 * * * /home/oracle/backup/backup.sh
这样就添加了一个计划,在每天的13点42分运行/home/oracle/backup/backup.sh。

另外,每天运行完之后,会收到mail通知,可以在mail里看出到底有没有正确运行。

5. linux远程备份oracle

1、客户端应该包含exp,将ORACLE_HOME/bin加到PATH里,看有没有
2、查找一下find $ORACLE_HOME -name exp
3、估计你安装的是instantclient才没有,从同版本oracle 复制一个

6. 怎么执行oracle数据库自动备份 linux 脚本

Oracle自动备份数据库不外乎以下三种方式WINDOWS下的任务计划(At命令)
UNIX下的Crontab
第三方工具如Viritas
在以上三种方式中Viritas属于第三方工具,很多人可能都没有接触,主要说一下windows的任务计划与unix的cron
1、生成脚本文件,如backup.rcv 假定文件内容如下:
$>cat backup.rcv connect target sys/password rcvcat rman/rman@localname; run{ allocate channel c1 type disk; allocate channel c2 type disk; allocate channel c3 type disk; backup fileaperset 3 format ‘/u01/oradata/backup/arch%u_%s_%p’ archivelog all delete input; release channel c1; release channel c2; release channel c3; }

2、生成执行文件在windows上生成backup_archive.bat,内容包括rman cmdfile = backup.rcv 在unix下生成 backup_archive.sh,内容包括oracle/ramn/rman cmdfile = backup.rcv
3、加入调度在windows中用任务计划向导即可,或使用at命令。在unix中,在目标机器上编写一个文件,用以启动Oracle自动备份进程。假定文件名为ORACLE,文件将放在/var/spool/cron/crontabs目录下
$>cat oracle
0 23 * * 0 backup_archive.sh
#表示星期天23点对数据库备份
0 12,18 * * * backup_archive.sh
#表示每天12点,18点备份
Crontab文件的每一行由六个域(minutes,hours,day of month,month,day of week,command)组成,域之间用空格或Tab分隔开来

7. linux执行定时备份数据脚本

对tomcat目录,每隔4个小时进行一次备份,以当前时间进行命名

1.创建备份目录:

mkdir:创建目录

rmdir:删除目录


5.重启crontab:

service crond restart

!!!!(*^__^*) 嘻嘻……!!!!到这里就完了!

8. 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/proct/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
退出并保存便可。

9. 请问怎么实现oracle数据库的自动定时增量备份呢

oracle实现自动定时备份其实比较好的方法是:
oracle中的job
+
存储过程
job定时执行,而存储过程则完成增量备份!!

10. ORACLE服务器定时备份怎么做

  1. 编写备份数据库脚本。新建文本文档,粘贴如下内容:

    echo 开始备份数据库

    if not exist F:db_bakfiles md F:db_bakfiles

    if not exist F:db_baklogs md F:db_baklogs

    set var=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%

    exp ora_user/ora_pwd@ora_conn file=F:db_bakfilesxxxx_%var%.dmp log=F:db_baklogsxxxx_%var%.log owner=(user1,user2)

    echo 删除过久的备份记录

    forfiles /p "F:db_bak" /s /m *.dmp /d -60 /c "cmd /c del @path"

    forfiles /p "F:db_bak" /s /m *.log /d -60 /c "cmd /c del @path"

    exit

  2. 使用任务计划程序“创建基本任务”。,下一步:

  3. 选择任务何时开始执行,(选择每天),下一步:

  4. 设置任务开始执行的具体时间,(设置成零晨3点),下一步:

  5. 选择任务执行的具体操作,(启动程序),下一步:

  6. 选择程序或脚本,通过“浏览”按钮把我们在第1、2步骤编写好的bat文件指定好。,下一步:

  7. 任务创建好了。点击完成即可。至此,定时备份oracle数据库的操作已经完成

阅读全文

与linuxoracle定时备份相关的资料

热点内容
给心理治疗师pdf 浏览:218
robinhood加密交易条件 浏览:310
卫生间解压方法 浏览:450
u盘如何做加密文件放照片 浏览:327
文件夹自己加了exe 浏览:257
小猪cms直播系统源码 浏览:878
山东广电云服务器 浏览:354
javadate与mysqldate 浏览:244
javalong比较 浏览:9
加密大师看不见加密文件 浏览:307
想做一个业余程序员 浏览:793
python选出行 浏览:249
cat命令windows 浏览:910
python算术游戏 浏览:532
常微分方程第二版pdf 浏览:23
phpJava学多久 浏览:722
php博客毕业设计 浏览:796
数据库编程pdf 浏览:905
静态文件服务器腾讯云 浏览:850
怎么让安卓手机运行苹果软件 浏览:118