ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 呜呼,终于将10g DG配置成功了!

呜呼,终于将10g DG配置成功了!

原创 Linux操作系统 作者:tian1982tian 时间:2011-09-21 14:47:07 0 删除 编辑
      真不容易,今天终于将10G DG配置成功了,高兴啊!熬了好多天,不容易,下面说说我配置的过程
      首先在AIX小机上实验,备库已经安装了数据库,网络也不好,在拷贝文件时候主库的paging space不够,经过扩展之后做了DG,效果还是不佳,最后索性在WINDOWS平台做了。
 
1、主库WIN 2003  IP:10.132.0.100   Oracle: 10.2.0.1.0
      备库WIN 2003  IP:10.132.0.55      Oracle: 10.2.0.1.0
2、主库安装了数据库软件和创建了数据库,sid: primary
      备库只安装了软件没创建数据库
      在备库建实例:     oradim -new -sid primary ,启动服务
      netmgr新建监听,启动监听
3、在主库:
>create pfile from spfile;
修改pfile:  initprimary.ora,内容如下:
primary.__db_cache_size=427819008
primary.__java_pool_size=4194304
primary.__large_pool_size=4194304
primary.__shared_pool_size=167772160
primary.__streams_pool_size=0
*.audit_file_dest='D:\oracle10gSvr\product\10.2.0/admin/primary/adump'
*.background_dump_dest='D:\oracle10gSvr\product\10.2.0/admin/primary/bdump'
*.compatible='10.2.0.1.0'
*.control_files='D:\oracle10gSvr\product\10.2.0\oradata\primary\control01.ctl','D:\oracle10gSvr\product\10.2.0\oradata\primary\control02.ctl','D:\oracle10gSvr\product\10.2.0\oradata\primary\control03.ctl'
*.core_dump_dest='D:\oracle10gSvr\product\10.2.0/admin/primary/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='primary'
*.db_recovery_file_dest='D:\oracle10gSvr\product\10.2.0/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=primaryXDB)'
*.job_queue_processes=10
*.log_archive_dest_1='LOCATION=D:\oracle10gSvr\product\10.2.\oradata\archive'
*.open_cursors=300
*.pga_aggregate_target=203423744
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=612368384
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='D:\oracle10gSvr\product\10.2.0/admin/primary/udump'
 
--以下为在pfile新添加的内容
log_archive_dest_1='LOCATION=D:\oracle10gSvr\product\10.2.0\oradata\archive'
log_archive_dest_state_1=enable
log_archive_dest_2='SERVICE=standby'
log_archive_dest_state_2=enable
log_archive_format='%t_%s_%r.arc'
log_archive_max_processes=2
fal_server=standby
fal_client=primary
db_unique_name=primary
 
tnsnames.ora内容如下:

StandBy= 
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.132.0.55)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = primary)
    )
  )
PRIMARY =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.132.0.100)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = primary)
    )
  )
 
创建密码文件
>orapwd file=pwdSID.ora password=xxx entries=5
 
创建standby控制文件:
>shutdown immediate
>startup mount;
>alter database create standby controlfile as 'xxxxxx\standby.ctl'
 
4、在备库
将在主库得到的pfile拷贝至备库,将其修改,内容如下:
primary.__db_cache_size=427819008
primary.__java_pool_size=4194304
primary.__large_pool_size=4194304
primary.__shared_pool_size=167772160
primary.__streams_pool_size=0
*.audit_file_dest='D:\oracle10gSvr\product\10.2.0/admin/primary/adump'
*.background_dump_dest='D:\oracle10gSvr\product\10.2.0/admin/primary/bdump'
*.compatible='10.2.0.1.0'
*.control_files='D:\oracle10gSvr\product\10.2.0\oradata\primary\control01.ctl','D:\oracle10gSvr\product\10.2.0\oradata\primary\control02.ctl','D:\oracle10gSvr\product\10.2.0\oradata\primary\control03.ctl'
*.core_dump_dest='D:\oracle10gSvr\product\10.2.0/admin/primary/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='primary'
*.db_recovery_file_dest='D:\oracle10gSvr\product\10.2.0/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=primaryXDB)'
*.job_queue_processes=10
*.log_archive_dest_1='LOCATION=D:\oracle10gSvr\product\10.2.\oradata\archive'
*.open_cursors=300
*.pga_aggregate_target=203423744
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=612368384
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='D:\oracle10gSvr\product\10.2.0/admin/primary/udump'

log_archive_dest_1='LOCATION=D:\oracle10gSvr\product\10.2.0\oradata\archive'
log_archive_dest_state_1=enable
log_archive_dest_2='SERVICE=standby'
log_archive_dest_state_2=enable
log_archive_format='%t_%s_%r.arc'
log_archive_max_processes=2
fal_server=primary
fal_client=standby
db_unique_name=primary
 
tnsnames.ora内容如下:

PRIMARY =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.132.0.100)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = primary)
    )
  )
 
StandBy= 
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.132.0.55)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = primary)
    )
  )
 
5、关闭主库,将密码文件、dump文件夹、闪回区文件夹、数据日志文件备库控制文件和初始化文件(经过再次修改的)拷贝至备库相应的目录下,将拷贝到备库文件夹下的standby.ctl 拷贝为control01.ctl、control02.ctl、control03.ctl
 
6、启动主数据库
> conn / as sysdba
>create spfile from pfile;
>startup;
 
7、启动备库
> conn / as sysdba
>create spfile from pfile;
>startup nomount;
>alter database mount standby database;
>select name,database_role from v$database;
name                 database_role
---------------        ----------------------------------
primary              phsical   standby
 
>alter database recover managed standby database disconnect from  session;
 
database altered.
 
---在主库切换日志
>alter system switch log file;
 
System altered.
 
SQL> create table dgtest(id int,name char(10));
表已创建。
SQL> insert into dgtest values(0,'dgtest0');
已创建 1 行。
SQL> commit;
提交完成。
SQL> alter system switch logfile;
系统已更改。
SQL> insert into dgtest values(1,'dgtest1');
已创建 1 行。
SQL> commit;
提交完成。
SQL>  alter system switch logfile;
系统已更改。
 
--在备库
> select sequence#,first_time,next_time,applied from v$archied_log;
 
        31 2011-09-21 13:56:28 2011-09-21 14:08:49 YES
        32 2011-09-21 14:08:49 2011-09-21 14:09:33 YES
        33 2011-09-21 14:09:33 2011-09-21 14:11:50 YES
        34 2011-09-21 14:11:50 2011-09-21 14:23:50 YES
        35 2011-09-21 14:23:50 2011-09-21 14:29:54 YES
 SEQUENCE# TO_CHAR(FIRST_TIME, TO_CHAR(NEXT_TIME,' APP
---------- ------------------- ------------------- ---
        36 2011-09-21 14:29:54 2011-09-21 14:30:05 YES
        37 2011-09-21 14:30:05 2011-09-21 14:30:12 YES
        38 2011-09-21 14:30:12 2011-09-21 14:32:26 YES
已选择36行。
SQL>
 
可以看到主库的日子文件已经传入备库并且被aplly
 
SQL> alter database recover managed standby database cancel;
数据库已更改。
SQL> alter database open read only;
数据库已更改。
SQL> select * from dgtest;
        ID NAME
---------- ----------
         0 dgtest0
         1 dgtest1
SQL>
 
已经看到主库创建的表里的数据
 

SQL> alter database recover managed standby database disconnect from session;
数据库已更改。
SQL>
切回,继续从主库同步日志

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/16400082/viewspace-708027/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-12-29

  • 博文量
    70
  • 访问量
    176790