您好,欢迎访问一九零五行业门户网

Oracle 单实例Active Data Dataguard

欢迎进入oracle社区论坛,与200万技术人员互动交流 >>进入 2.oracle 11g data guard物理备库创建过程 1)创建主库数据文件的备份 最常用的方法是使用rman工具完成,这样可以实现不停库的部署;还可以使用冷备完成。 因为这里实现的是主库和备库都在一台主机
欢迎进入oracle社区论坛,与200万技术人员互动交流 >>进入
    2.oracle 11g data guard物理备库创建过程
    1)创建主库数据文件的备份
    最常用的方法是使用rman工具完成,这样可以实现不停库的部署;还可以使用冷备完成。
    因为这里实现的是主库和备库都在一台主机上,因此,这里使用冷备的方式生成数据文件的备份,并放到备库对应的目录下。
    (1)关闭数据库
    sys@ora11g> shutdown immediate;
    database closed.
    database dismounted.
    oracle instance shut down.
    (2)主库数据文件的备份
    ora11g@secdb /home/oracle$ cd /u01/app/oracle/oradata/ora11g/
    ora11g@secdb /u01/app/oracle/oradata/ora11g$ ls -l
    total 1.7g
    -rw-r----- 1 oracle oinstall 9.4m mar 15 21:47 control01.ctl
    -rw-r----- 1 oracle oinstall 9.4m mar 15 21:47 control02.ctl
    -rw-r----- 1 oracle oinstall  51m mar 15 21:46 redo01.log
    -rw-r----- 1 oracle oinstall  51m mar 15 21:46 redo02.log
    -rw-r----- 1 oracle oinstall  51m mar 15 21:47 redo03.log
    -rw-r----- 1 oracle oinstall  51m mar 15 21:46 stdb_redo01.log
    -rw-r----- 1 oracle oinstall  51m mar 15 21:46 stdb_redo02.log
    -rw-r----- 1 oracle oinstall  51m mar 15 21:46 stdb_redo03.log
    -rw-r----- 1 oracle oinstall  51m mar 15 21:46 stdb_redo04.log
    -rw-r----- 1 oracle oinstall 501m mar 15 21:47 sysaux01.dbf
    -rw-r----- 1 oracle oinstall 681m mar 15 21:47 system01.dbf
    -rw-r----- 1 oracle oinstall  30m mar 15 21:39 temp01.dbf
    -rw-r----- 1 oracle oinstall  91m mar 15 21:47 undotbs01.dbf
    -rw-r----- 1 oracle oinstall 5.1m mar 15 21:47 users01.dbf
    复制代码
    这里使用tar方法生成数据文件的备份tar包,当然可以使用其他方法来完成,比如直接把数据文件拷贝到其他目录下。
    ora11g@secdb /u01/app/oracle/oradata/ora11g$ tar -cvf ora11g_cold_backup_datafiles.tar *.dbf
    sysaux01.dbf
    system01.dbf
    temp01.dbf
    undotbs01.dbf
    users01.dbf
    ora11g@secdb /u01/app/oracle/oradata/ora11g$ ls -l ora11g_cold_backup_datafiles.tar
    -rw-r--r-- 1 oracle oinstall 1.3g mar 15 21:48 ora11g_cold_backup_datafiles.tar
    复制代码
    2)创建备库的控制文件
    此时数据库处于关闭状态。
    (1)创建备库ora11gdg控制文件存放的目录
    ora11g@secdb /home/oracle$ mkdir -p /u01/app/oracle/oradata/ora11gdg
    复制代码
    (2)生成主库spfile,以便在重启主库时使主库参数调整生效。
    sys@ora11g@> create spfile from pfile;
    file created.
    复制代码
    (3)启动主数据库到mount状态,创建备库的控制文件。
    sys@ora11g@> startup mount;
    oracle instance started.
    total system global area  313860096 bytes
    fixed size                  1336232 bytes
    variable size             239078488 bytes
    database buffers           67108864 bytes
    redo buffers                6336512 bytes
    database mounted.
    sys@ora11g@> alter database create standby controlfile as '/u01/app/oracle/oradata/ora11gdg/control01.ctl';
    database altered.
    复制代码
    拷贝生成备库的第二个控制文件。
    sys@ora11g@> ! cp /u01/app/oracle/oradata/ora11gdg/control01.ctl /u01/app/oracle/oradata/ora11gdg/control02.ctl
    sys@ora11g@> alter database open;
    database altered.
    复制代码
    此时主库已经处于open状态,可对外提供服务。
    3)创建备库参数文件
    根据主库的pfile文件进行调整。调整后的内容如下。
    (1)拷贝主库参数文件生成备库pfile
    ora11g@secdb /home/oracle$ cd $oracle_home/dbs
    ora11g@secdb /oracle/ora11gr2/product/11.2.0/dbhome_1/dbs$ cp initora11g.ora initora11gdg.ora
    复制代码
    (2)调整备库pfile文件内容
    ora11g@secdb /oracle/ora11gr2/product/11.2.0/dbhome_1/dbs$ vi initora11gdg.ora
    复制代码
    (3)备库配置――当是备库角色时需要的参数
    db_name=ora11g
    db_unique_name=ora11gdg
    log_archive_config='dg_config=(ora11g,ora11gdg)'
    control_files='/u01/app/oracle/oradata/ora11gdg/control01.ctl','/u01/app/oracle/oradata/ora11gdg/control02.ctl'
    fal_client=ora11gdg
    fal_server=ora11g
    db_file_name_convert='ora11g','ora11gdg'
    log_file_name_convert='ora11g','ora11gdg'
    standby_file_management=auto
    log_archive_format=%t_%s_%r.arc
    复制代码
    (4)备库配置――当是主库角色时需要的参数
    log_archive_dest_1=
    'location=/home/oracle/arch/ora11gdg/
    valid_for=(all_logfiles,all_roles)
    db_unique_name=ora11gdg'
    log_archive_dest_2=
    'service=ora11g async
    valid_for=(online_logfiles,primary_role)
    db_unique_name=ora11g'
    log_archive_dest_state_1=enable
    log_archive_dest_state_2=enable
    remote_login_passwordfile=exclusive
    复制代码
    同时调整与路径相关的错误参数内容。同时创建确实的路径。
    $ mkdir -p /u01/app/oracle/admin/ora11gdg/adump
    复制代码
    4)拷贝备份文件到备库数据文件存放目录
    把备份的tar包移动到ora11gdg存放数据文件目录中,解tar包生成备库的数据文件。
    ora11g@secdb /u01/app/oracle/product/11.2.0/db_1/dbs$ cd $oracle_base/oradata/ora11gdg
    ora11g@secdb /u01/app/oracle/oradata/ora11gdg$ mv /ora11g/ora11g_cold_backup_datafiles.tar .
    ora11g@secdb /u01/app/oracle/oradata/ora11gdg$ tar -xvf ora11g_cold_backup_datafiles.tar
    sysaux01.dbf
    system01.dbf
    temp01.dbf
    undotbs01.dbf
    users01.dbf
    ora11g@secdb /u01/app/oracle/oradata/ora11gdg$ ls -l
    total 2.6g
    -rw-r----- 1 oracle oinstall 9.4m mar 15 21:49 control01.ctl
    -rw-r----- 1 oracle oinstall 9.4m mar 15 21:49 control02.ctl
    -rw-r--r-- 1 oracle oinstall 1.3g mar 15 21:48 ora11g_cold_backup_datafiles.tar
    -rw-r----- 1 oracle oinstall 501m mar 15 21:47 sysaux01.dbf
    -rw-r----- 1 oracle oinstall 681m mar 15 21:47 system01.dbf
    -rw-r----- 1 oracle oinstall  30m mar 15 21:39 temp01.dbf
    -rw-r----- 1 oracle oinstall  91m mar 15 21:47 undotbs01.dbf
    -rw-r----- 1 oracle oinstall 5.1m mar 15 21:47 users01.dbf
    复制代码
    5)备库环境设置
    (1)生成备库的密码文件
    由于是在一台主机上部署data guard,因此这里仅需拷贝主库的密码文件生成备库密码文件即可。
    ora11g@secdb /u01/app/oracle/oradata/ora11gdg$ cd $oracle_home/dbs
    ora11g@secdb /u01/app/oracle/product/11.2.0/db_1/dbs$ cp orapwora11g orapwora11gdg
    复制代码
    (2)验证网络服务名是否完整及正确
    ora11g@secdb /home/oracle$ cat $oracle_home/network/admin/tnsnames.ora
    ora11g =
    (description =
    (address = (protocol = tcp)(host = secdb)(port = 1521))
    (connect_data =
    (server = dedicated)
    (service_name = ora11g)
    )
    )
    ora11gdg =
    (description =
    (address = (protocol = tcp)(host = secdb)(port = 1521))
    (connect_data =
    (server = dedicated)
    (service_name = ora11gdg)
    )
    )
  [1] [2] [3]
其它类似信息

推荐信息