zoukankan      html  css  js  c++  java
  • 将Oracle数据库改为归档模式并启用Rman备份

    如下Linux环境下对单节点数据库采用文件系统情况的配置归档模式过程。

    首先查看数据库归档模式和磁盘使用情况,确定归档文件放到什么位置:

    [oracle@gisdbserver ~]$ sqlplus / as sysdba

    SQL> archive log list

    Database log mode              No Archive Mode

    Automatic archival             Disabled

    Archive destination            /dbback/archivelog

    Oldest online log sequence     92

    Current log sequence           97

    根据如下磁盘使用情况,在相应的目录下建立相关归档和备份目录:

    [root@gisdbserver ~]# df -h

    Filesystem                           Size  Used Avail Use% Mounted on

    /dev/mapper/vg_gisdbserver-lv_root    99G  3.8G   90G   4% /

    tmpfs                                 16G   76K   16G   1% /dev/shm

    /dev/sda2                            485M   39M  421M   9% /boot

    /dev/sda1                            200M  260K  200M   1% /boot/efi

    /dev/mapper/vg_gisdbserver-LogVol03  481G  198M  457G   1% /dbback

    /dev/mapper/vg_gisdbserver-LogVol04  407G  9.3G  377G   3% /home

    /dev/mapper/vg_gisdbserver-LogVol02   99G  4.5G   89G   5% /opt

    /dev/sdb                             441G   72G  347G  18% /oradata

    创建相关归档日志存放目录:

    [root@gisdbserver ~]# cd /dbback/

    [root@gisdbserver dbback]# mkdir archivelog

    [root@gisdbserver dbback]# chown -R oracle:oinstall archivelog/

    [root@gisdbserver dbback]# mkdir rman

    [root@gisdbserver dbback]# chown oracle:oinstall rman/

    [root@gisdbserver rman]# mkdir fullback

    [root@gisdbserver rman]# mkdir archiveback

    [root@gisdbserver rman]# chown oracle:oinstall archiveback/

    [root@gisdbserver rman]# chown oracle:oinstall fullback/

    登录数据库指定归档存放目录:

    [oracle@gisdbserver ~]$ sqlplus / as sysdba

    SQL> alter system set log_archive_dest_1='location=/dbback/archivelog';

    System altered.

    SQL> show parameter log_archive_dest_1

    NAME                                 TYPE        VALUE

    ------------------------------------ ----------- ------------------------------

    log_archive_dest_1                   string      location=/dbback/archivelog

    要将非归档数据库模式改为归档模式,需要在mount状态下执行alter database archivelog命令才行,如下:

    SQL> archive log list

    Database log mode              No Archive Mode

    Automatic archival             Disabled

    Archive destination            /dbback/archivelog

    Oldest online log sequence     92

    Current log sequence           97

    SQL> alter database archivelog;

    alter database archivelog

    *

    ERROR at line 1:

    ORA-01126: database must be mounted in this instance and not open in any

    instance

    因此需要在合适的时间关闭数据库,重新启动到mount状态下才能改变为归档模式。

    SQL> shutdown immediate;

    SQL> startup mount;

    SQL> alter database archivelog;

    要开启rman备份,需要对配置rman相关的一些参数,具体如下:

    oracle@gisdbserver ~]$ rman target /

    RMAN> backup DATABASE include CURRENT controlfile format '/dbback/rman/fullback/data_%d_%T_%s_%p' plus archivelog format '+/dbback/rman/archiveback/arch_%d_%T_%s';

    以上语句也可以通过linuxcrontab  bash脚本方式进行自动化运行。

    run{

     DELETE NOPROMPT expired archivelog ALL;

     allocate channel d1 TYPE disk maxpiecesize=30G;

     allocate channel d2 TYPE disk maxpiecesize=30G;

    backup DATABASE include CURRENT controlfile format '/dbback/rman/fullback/data_%d_%T_%s_%p' plus archivelog       format '+/dbback/rman/archiveback/arch_%d_%T_%s';

     release channel d1;

     release channel d2;

     crosscheck backup;

     DELETE noprompt obsolete REDUNDANCY 1;

    }

    来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/18841027/viewspace-2139272/

  • 相关阅读:
    JavaScript instanceof vs typeof
    2016让我受益最大的那些书--别找了,都在这里
    我为什么要自己编译openjdk8以及那些坑
    支撑Java NIO 与 NodeJS的底层技术
    Java I/O and NIO [reproduced]
    How do servlets work-Instantiation, sessions, shared variables and multithreading[reproduced]
    怎样当一个企业舍不得的人
    【Android】Android apk默认安装位置设置
    【Android】Android 代码判断是否获取ROOT权限(一)
    【Android】Android 广播大全
  • 原文地址:https://www.cnblogs.com/caodneg7/p/11447912.html
Copyright © 2011-2022 走看看