Oracle数据库的异地备份浅析

数据库 Oracle
以下的文章主要是介绍如何在UNIX下实现自动备份Oracle数据库中的异地备份,下面的文章就是对其相关内容的介绍,希望你能从中获得自己想要的东西。

假如你对Oracle数据库中的异地备份不是很了解的话,以下的文章就是对如何在UNIX下自动备份Oracle数据库中的异地备份的相关内容的具体介绍,其实在UNIX下自动备份Oracle数据库中的异地备份的实操是很简单的。

我们知道,通常可用FTP命令在两台主机间传输数据,但一般是通过交互方式实现的,即需要手工输入目标主机的IP地址、用户名、口令等。显然,这不符合自动备份的要求。所幸的是,我们可以通过编写一个.netrc的文件来达到目标。

这一文件必须命名为.netrc,且必须存放在启动FTP命令的机器上的用户注册目录中,该文件的权限应禁止组内或其它用户进行读访问。这样,当用户使用FTP命令的时候,系统将会在该用户的注册目录中寻找.netrc文件,假如能够寻找到,将会首先执行该文件,否则,会交互式地提示用户输入用户名、口令等。

在使用FTP命令之前,应先在另一台作备份用的UNIX机器上建一目录,以容纳备份文件,本文建的目录是/pub 。需要指出的是,为了加快备份速度,两台主机之间的传输速率应尽可能的高,***位于同一局域网上。

.netrc文件内容如下:

 

  1. machine host2 

host2为作备份用的主机名

 

  1. login oracle 

oracle为备份主机上的一个用户

 

  1. passWord oracle 

oracle用户的口令为oracle

 

  1. macdef init 

定义一个名为init的宏,它将在自动注册进程的***被执行

 

  1. bin 

文件的传输方式设为二进制

 

  1. lcd /backup 

进入本地工作目录/backup

 

  1. cd /pub 

进入备份主机目录/pub

 

  1. mput  

将/backup目录下的所有文件传输至备份主机

 

  1. bye 

#退出FTP会话进程

.netrc文件编写完成后,使用下述命令:

 

  1. chmod 600 .netrc 

这样,.netrc文件就只能被该用户所访问。

四、启动备份进程

Cron是一个***进程,它由/etc/rc.local启动执行。Cron检查/var/spool/cron/crontabs/?目录中的文件,找到所要执行的任务和执行任务的时间。

Crontab文件的每一行由六个域(minutes、hours、day of month、month、day of week、 command)组成,域之间用空格或Tab分开,其中:

minutes:分钟域,值的范围是0到59

hours:小时域,值的范围是0到23

day of month:日期,值的范围是1到31

month:月份,值的范围是1到12

day of week:星期,值的范围是0到6,星期日值为0

command:所要运行的命令

假如一个域是?,表明命令可以在该域所有可能的取值范围内执行。

假如一个域是由连字符隔开的两个数字,表明命令可以在两个数字之间的范围内执行(包括两个数字本身)。

假如一个域是由逗号隔开的一系列值组成的,表明命令可以在这些值组成的范围内执行。

假如日期域和星期域都有值,则这两个域都有效。

现在,我们编写一个文件,用以启动自动备份进程。值得注重的是,该文件只能在Oracle用户名下用crontab -e 命令来编辑,否则将不会被定时执行,文件名定为Oracle,文件将放在/var/spool/cron/crontabs 目录下。编辑完成后,可以在Oracle的$提示符下,用crontab -l命令来查看。

Oracle文件内容:

0 23 ? ? ? /oracle/ora—backup

天天23点对数据库执行备份

0 2 ? ? ? /oracle/tar—backup

天天2点将文件备份到磁带上

0 4 ? ? ? ftp -i host2

天天4点将文件备份到另一台主机上

经过以上的操作后,系统天天晚上将自动产生一个备份,并且自动将备份文件分别拷贝到磁带上和另一台主机上。系统治理员需要做的是,隔几天换一盘磁带(更换磁带的周期取决于备份文件的大小和磁带的容量)和清理备份目录。这样,他们就可以从备份数据的繁琐中解脱出来,去做其它更有意义的工作。而数据库既实现了磁带备份,又实现了异地备份,相应的安全性也大大提高了。

【编辑推荐】

  1. 创建Oracle procedure并调用在pl/sql里
  2. Oracle to_char的用法描述
  3. Oracle 多表关联如何更新多个字段
  4. Oracle表列的修改具体步骤介绍
  5. 开发Oracle存储过程的步骤介绍
     

 

责任编辑:佚名 来源: 博客园
相关推荐

2011-08-02 16:03:47

Oracle数据库冷备份冷备份异地恢复

2011-05-17 14:19:28

Oracle异地数据库自动备份

2010-05-04 14:57:27

Oracle数据库

2009-03-16 13:30:55

脚本数据字典Oracle

2010-04-26 10:52:46

Oracle 数据库

2010-04-09 14:37:08

Oracle数据库

2011-05-17 15:02:15

ORACLE数据库备份

2009-11-20 14:08:39

Oracle数据库备份

2009-03-30 14:52:43

复制数据库Oracle

2010-04-19 13:31:42

Oracle索引

2010-04-12 10:40:49

Oracle数据库

2010-10-26 11:14:07

Oracle数据库备份

2010-04-09 15:22:57

Oracle数据库

2009-04-03 10:54:49

Oracle备份恢复

2010-04-19 12:54:01

Oracle数据库

2010-03-24 09:42:12

Oracle数据库

2010-04-12 14:19:00

Oracle数据库备份

2018-12-12 19:10:01

Oracle数据库自动备份

2011-04-11 13:46:17

Oracle数据库备份

2010-04-27 18:18:08

Oracle数据库备份
点赞
收藏

51CTO技术栈公众号