16.3 如何利用RMAN对数据库进行备份
利用RMAN,可以对数据库中的数据文件、控制文件、服务器参数文件以及归档日志文件进行备份。
16.3.1 通道的设置
在对数据库进行备份或恢复时,需要分配一个或多个通道。通道有两种分配方式,即自动分配和手工分配。如果在RMAN中先对通道进行设置,比如设置通道的数目、备份文件的存储路径和文件名、默认的通道类型等,那么在进行备份或恢复时,就按照这样的设置分配通道,这种方式称为自动分配。如果在每次备份或恢复时通过命令指定通道的信息,这种分配方式就称为手工分配。手工指定的通道信息将覆盖自动分配的通道信息。
在RMAN中可以对磁盘通道和磁带通道分别进行设置,并指定默认的通道类型。一般来说,如果要同时备份多个文件,或者将文件备份到多个设备上,可以分配多个通道,这样可以对数据进行并行读写。下面是通道设置的一些例子:
RMAN>CONFIGURE DEVICE TYPE sbt PARALLELISM 2;
RMAN>CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO BACKUPSET;
RMAN>CONFIGURE DEVICE TYPE sbt BACKUP TYPE TO COPY;
RMAN>CONFIGURE DEFAULT DEVICE TYPE TO DISK;
RMAN>CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT'/tmp/%U';
RMAN>CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT'+dgroup1';
在上面的例子中,第一条命令指定磁带通道的数目为2,即只要使用磁带通道,每次都分配2个。第二条命令指定磁盘通道的备份形式为备份集,也就是说,如果要用磁盘通道进行备份,将产生一个备份集。第三条命令指定磁带通道的备份形式为映像复制。第四条命令指定默认的通道类型为磁盘通道,即每次备份或恢复时,默认都分配磁盘通道。第五条命令指定备份文件的存储路径和文件名称,也就是说,如果不另外指定,利用磁盘通道进行备份时,将在指定的目录下以指定的文件名称生成备份文件夹。第六条命令指定通道类型为磁盘通道,备份文件的存储位置为一个ASM磁盘组,文件名称自动产生。
手工分配通道的方式指的是在备份或恢复时,通过ALLOCATE命令分配通道,或者在BACKUP命令中指定通道。例如,下面的例子是在备份数据库的命令中指定磁盘通道:
RMAN>BACKUP DEVICE TYPE DISK DATABASE;
下面的例子是在备份或恢复之前通过ALLOCATE命令分配一个磁盘通道,同时指定备份文件的存储路径和文件名称:
RMAN>RUN{
ALLOCATE CHANNEL ch1 DEVICE TYPE DISK FORMAT'/home/oracle/%U';
……
}