查看: 6420|回复: 18

创建级联 dataguard 版本11.2

[复制链接]
论坛徽章:
27
数据库板块每日发贴之星
日期:2010-06-17 01:01:07迷宫蛋
日期:2011-07-07 15:25:46紫蛋头
日期:2011-08-10 10:31:56ITPUB十周年纪念徽章
日期:2011-09-27 16:33:28ITPUB十周年纪念徽章
日期:2011-11-01 16:25:222012新春纪念徽章
日期:2012-02-07 09:59:35ITPUB知识分享者
日期:2012-02-20 17:49:25铁扇公主
日期:2012-02-21 15:02:40ITPUB年度最佳BLOG写作奖
日期:2012-03-13 17:09:53ITPUB 11周年纪念徽章
日期:2012-10-09 18:14:48
跳转到指定楼层
1#
发表于 2011-9-20 10:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 杨奇龙 于 2011-9-20 10:27 编辑

创建级联dataguard :
当dataguard未配置为生产库之前可以很方便的从主库创建第一,第二备库,然而因为业务需要不能直接从主库来创建dataguard。想使用duplicate从第一备库直接创建第二备库的过程中遇到bug (见帖子:http://www.itpub.net/thread-1483327-1-1.html)!
考虑使用rman restore 第一备库的备份来进行恢复第二备库:
以下是创建第二备库的基本的过程 (默认oracle 软件已经搭建好了)
环境:11.2.0.1
主库:rac  是一个rac 环境 asm 存储
第一备库:yangdb    单实例 文件存储
第二备库:yangdbstd 单实例 文件存储
日志文件:rac ---->yangdb--->yangdbstd (级联)
三个数据库的关于dg的主要参数:
primary DB: (rac)
==============
*.log_archive_config='DG_CONFIG=(rac,yangdb,yangdbstd)
*.log_archive_dest_1='LOCATION=/opt/rac/oracle/arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=rac'
*.log_archive_dest_2='SERVICE=YANGDB arch async VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=YANGDB'
*.LOG_ARCHIVE_DEST_STATE_1=ENABLE
*.LOG_ARCHIVE_DEST_STATE_2=ENABLE

Stabdby 1 (YANGDB)
=========================
*.log_archive_config='DG_CONFIG=(rac,yangdb,yangdbstd)'
*.log_archive_dest_1='LOCATION=/opt/oracle/yangdb_arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=YANGDB'
*.log_archive_dest_2='SERVICE=RAC ARCH async VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=RAC'
*.log_archive_dest_3='SERVICE=YANGDBSTDlgwr async VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=YANGDBSTD'
*.LOG_ARCHIVE_DEST_STATE_1=ENABLE
*.LOG_ARCHIVE_DEST_STATE_2=ENABLE
*.LOG_ARCHIVE_DEST_STATE_3=ENABLE

SQL> SELECT DEST_ID "ID", STATUS "DB_status", DESTINATION "Archive_dest", ERROR "Error" FROM V$ARCHIVE_DEST;
ID DB_status Archive_dest Error
--------------------------------
1 VALID /opt/oracle/yangdb_arch
2 VALID RAC
3 VALID YANGDBSTD

Stabdby 2 (YANGDBSTD)
=========================
*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(rac,yangdb,yangdbstd)'
*.log_archive_dest_1='LOCATION=/opt/oracle/arch'
*.log_archive_dest_2='SERVICE=RAC ARCH ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=RAC'
*.LOG_ARCHIVE_DEST_STATE_1=ENABLE
*.LOG_ARCHIVE_DEST_STATE_2=ENABLE
实验过程
==========================主库和第一备库操作========================================
1 第一备库修改如下参数,主库只修改log_archive_config,保证rac,yangdb,yangdbstd在同一dataguard 配置。
主库:
alter system set log_archive_config='DG_CONFIG=(rac,yangdb,yangdbstd)';
备库:
alter system set log_archive_config='DG_CONFIG=(rac,yangdb,yangdbstd)';
alter system set log_archive_dest_3='service=yangdbstd ARCH ASYNC VALID_FOR=(STANDBY_LOGFILES,STANDBY_ROLE) db_unique_name=yangdbstd';
alter system set log_archive_dest_state_3=enable scope=both ;

2 备份第一备库
oracle@rac3:/opt/oracle/backup>rman target /
Recovery Manager: Release 11.2.0.1.0 - Production on Mon Sep 19 20:43:41 2011
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
connected to target database: RAC (DBID=2349912968)
RMAN> run{
2>     allocate channel c1 type disk format '/opt/oracle/backup/full_%U.bak';
3>     allocate channel c2 type disk format '/opt/oracle/backup/full_%U.bak';
4>     allocate channel c3 type disk format '/opt/oracle/backup/full_%U.bak';
5>     backup database plus archivelog ;
6>     copy current controlfile to '/opt/oracle/backup/control01.ctl';
7>     release channel c1;
8>     release channel c2;
9>     release channel c3;  }
using target database control file instead of recovery catalog
allocated channel: c1
channel c1: SID=20 device type=DISK
allocated channel: c2
channel c2: SID=19 device type=DISK
allocated channel: c3
channel c3: SID=34 device type=DISK
Starting backup at 19-SEP-11
channel c1: starting archived log backup set
channel c1: specifying archived log(s) in backup set
input archived log thread=1 sequence=15 RECID=3 STAMP=762206076
input archived log thread=2 sequence=10 RECID=4 STAMP=762206101
input archived log thread=2 sequence=11 RECID=5 STAMP=762206131
input archived log thread=1 sequence=16 RECID=6 STAMP=762206136
input archived log thread=1 sequence=17 RECID=1 STAMP=762206038
input archived log thread=2 sequence=12 RECID=7 STAMP=762262775
input archived log thread=1 sequence=18 RECID=2 STAMP=762206062
input archived log thread=1 sequence=19 RECID=8 STAMP=762262783
input archived log thread=1 sequence=20 RECID=10 STAMP=762264178
channel c1: starting piece 1 at 19-SEP-11
channel c2: starting archived log backup set
channel c2: specifying archived log(s) in backup set
input archived log thread=2 sequence=13 RECID=9 STAMP=762263762
input archived log thread=2 sequence=14 RECID=11 STAMP=762264179
input archived log thread=2 sequence=15 RECID=12 STAMP=762264248
channel c2: starting piece 1 at 19-SEP-11
channel c3: starting archived log backup set
channel c3: specifying archived log(s) in backup set
input archived log thread=1 sequence=21 RECID=13 STAMP=762271820
input archived log thread=2 sequence=16 RECID=15 STAMP=762271919
input archived log thread=1 sequence=22 RECID=14 STAMP=762271857
input archived log thread=1 sequence=23 RECID=16 STAMP=762277772
channel c3: starting piece 1 at 19-SEP-11
channel c1: finished piece 1 at 19-SEP-11
piece handle=/opt/oracle/backup/full_1ammvd5f_1_1.bak tag=TAG20110919T204431 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:27
channel c1: starting archived log backup set
channel c1: specifying archived log(s) in backup set
input archived log thread=2 sequence=17 RECID=17 STAMP=762277811
input archived log thread=1 sequence=24 RECID=20 STAMP=762279344
input archived log thread=2 sequence=18 RECID=18 STAMP=762278217
input archived log thread=2 sequence=19 RECID=19 STAMP=762279342
input archived log thread=2 sequence=20 RECID=22 STAMP=762280727
input archived log thread=1 sequence=25 RECID=21 STAMP=762280641
input archived log thread=1 sequence=26 RECID=25 STAMP=762290094
input archived log thread=2 sequence=21 RECID=23 STAMP=762280751
input archived log thread=2 sequence=22 RECID=24 STAMP=762290091
channel c1: starting piece 1 at 19-SEP-11
channel c2: finished piece 1 at 19-SEP-11
piece handle=/opt/oracle/backup/full_1bmmvd5g_1_1.bak tag=TAG20110919T204431 comment=NONE
channel c2: backup set complete, elapsed time: 00:00:26
channel c2: starting archived log backup set
channel c2: specifying archived log(s) in backup set
input archived log thread=2 sequence=23 RECID=26 STAMP=762290096
input archived log thread=1 sequence=27 RECID=27 STAMP=762293548
channel c2: starting piece 1 at 19-SEP-11
channel c3: finished piece 1 at 19-SEP-11
piece handle=/opt/oracle/backup/full_1cmmvd5g_1_1.bak tag=TAG20110919T204431 comment=NONE
channel c3: backup set complete, elapsed time: 00:00:27
channel c1: finished piece 1 at 19-SEP-11
piece handle=/opt/oracle/backup/full_1dmmvd6a_1_1.bak tag=TAG20110919T204431 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:02
channel c2: finished piece 1 at 19-SEP-11
piece handle=/opt/oracle/backup/full_1emmvd6b_1_1.bak tag=TAG20110919T204431 comment=NONE
channel c2: backup set complete, elapsed time: 00:00:01
Finished backup at 19-SEP-11
Starting backup at 19-SEP-11
channel c1: starting full datafile backup set
channel c1: specifying datafile(s) in backup set
input datafile file number=00002 name=/opt/oracle/oradata/yangdb/sysaux.265.761930837
input datafile file number=00005 name=/opt/oracle/oradata/yangdb/undotbs2.269.761931099
channel c1: starting piece 1 at 19-SEP-11
channel c2: starting full datafile backup set
channel c2: specifying datafile(s) in backup set
input datafile file number=00001 name=/opt/oracle/oradata/yangdb/system.261.761930837
input datafile file number=00006 name=/opt/oracle/oradata/yangdb/YANGDB/datafile/o1_mf_users_77fzwyqp_.dbf
channel c2: starting piece 1 at 19-SEP-11
channel c3: starting full datafile backup set
channel c3: specifying datafile(s) in backup set
input datafile file number=00004 name=/opt/oracle/oradata/yangdb/users.263.761930837
input datafile file number=00003 name=/opt/oracle/oradata/yangdb/undotbs1.264.761930837
channel c3: starting piece 1 at 19-SEP-11
channel c3: finished piece 1 at 19-SEP-11
piece handle=/opt/oracle/backup/full_1hmmvd6c_1_1.bak tag=TAG20110919T204500 comment=NONE
channel c3: backup set complete, elapsed time: 00:00:26
channel c3: starting full datafile backup set
channel c3: specifying datafile(s) in backup set
including current control file in backup set
channel c3: starting piece 1 at 19-SEP-11
channel c3: finished piece 1 at 19-SEP-11
piece handle=/opt/oracle/backup/full_1immvd76_1_1.bak tag=TAG20110919T204500 comment=NONE
channel c3: backup set complete, elapsed time: 00:00:03
channel c3: starting full datafile backup set
channel c3: specifying datafile(s) in backup set
including current SPFILE in backup set
channel c3: starting piece 1 at 19-SEP-11
channel c3: finished piece 1 at 19-SEP-11
piece handle=/opt/oracle/backup/full_1jmmvd7b_1_1.bak tag=TAG20110919T204500 comment=NONE
channel c3: backup set complete, elapsed time: 00:00:01
channel c1: finished piece 1 at 19-SEP-11
piece handle=/opt/oracle/backup/full_1fmmvd6c_1_1.bak tag=TAG20110919T204500 comment=NONE
channel c1: backup set complete, elapsed time: 00:01:46
channel c2: finished piece 1 at 19-SEP-11
piece handle=/opt/oracle/backup/full_1gmmvd6c_1_1.bak tag=TAG20110919T204500 comment=NONE
channel c2: backup set complete, elapsed time: 00:01:46
Finished backup at 19-SEP-11
Starting backup at 19-SEP-11
specification does not match any archived log in the repository
backup cancelled because there are no files to backup
Finished backup at 19-SEP-11
Starting backup at 19-SEP-11
channel c1: starting datafile copy
copying current control file
output file name=/opt/oracle/backup/control01.ctl tag=TAG20110919T204647 RECID=12 STAMP=762295607
channel c1: datafile copy complete, elapsed time: 00:00:01
Finished backup at 19-SEP-11
released channel: c1
released channel: c2
released channel: c3
RMAN> exit
3 拷贝全库的备份到目标库的相同目录()如果目录不相同,则使用catalog start with '备份所在的路径' 或者 catalog
例如:
catalog backuppiece '/node2/database/backup/o1_mf_annnn_TAG20070213T002925_2x21m6ty_.bkp';

论坛徽章:
27
数据库板块每日发贴之星
日期:2010-06-17 01:01:07迷宫蛋
日期:2011-07-07 15:25:46紫蛋头
日期:2011-08-10 10:31:56ITPUB十周年纪念徽章
日期:2011-09-27 16:33:28ITPUB十周年纪念徽章
日期:2011-11-01 16:25:222012新春纪念徽章
日期:2012-02-07 09:59:35ITPUB知识分享者
日期:2012-02-20 17:49:25铁扇公主
日期:2012-02-21 15:02:40ITPUB年度最佳BLOG写作奖
日期:2012-03-13 17:09:53ITPUB 11周年纪念徽章
日期:2012-10-09 18:14:48
2#
 楼主| 发表于 2011-9-20 10:17 | 只看该作者
=============================第二备库上操作==============================
4 修改第二备库的参数文件  在实验过程中convert 转换参数不成功,建议在nomount状态时,创建spfile并且使用spfile!!!
*.audit_file_dest='/opt/oracle/admin/yangdbstd/adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='/opt/oracle/oradata/yangdbstd/control01.ctl','/opt/oracle/oradata/yangdbstd/control02.ctl','/opt/oracle/oradata/yangdbstd/control03.ctl'
*.db_block_size=8192
*.db_create_file_dest='/opt/oracle/oradata/yangdbstd'
*.db_domain=''
*.db_file_name_convert='/opt/oracle/oradata/yangdb','/opt/oracle/oradata/yangdbstd'
*.db_name='rac'
*.db_recovery_file_dest_size=4070572032
*.db_recovery_file_dest='/opt/oracle/flash_recovery_area'
*.db_unique_name='yangdbstd'
*.diagnostic_dest='/opt/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=racXDB)'
*.fal_client='yangdbstd'
*.fal_server='yangdb'
*.log_archive_config='DG_CONFIG=(rac,yangdbstd,yangdbstd)'
*.log_archive_dest_1='LOCATION=/opt/oracle/arch'
*.log_archive_dest_2='service=rac ARCH ASYNC valid_for=(ONLINE_LOGFILES,PRIMARY_ROLE) db_unique_name=rac'
*.log_archive_dest_state_1='enable'
*.log_archive_dest_state_2='enable'
*.log_archive_format='yangdbstd_%t_%s_%r.log'
*.log_file_name_convert='/opt/oracle/oradata/yangdb','/opt/oracle/oradata/yangdbstd'
*.memory_target=1468006400
*.nls_language='SIMPLIFIED CHINESE'
*.nls_territory='CHINA'
*.open_cursors=300
*.processes=150
*.remote_listener=''
*.remote_login_passwordfile='exclusive'
*.service_names='yangdbstd'
*.standby_file_management='AUTO'
*.undo_tablespace='UNDOTBS1'
可以启动之后,创建spfile,方便第7步 修改参数。参数文件中的convert参数在restore的过程中是无效的,下面有关于日志文件的描述
5 恢复或者复制控制文件为第二备库参数文件中的形式
cp control01.ctl  /opt/oracle/oradata/yangdbstd/control01.clt;
cp control01.ctl  /opt/oracle/oradata/yangdbstd/control02.clt;
cp control01.ctl  /opt/oracle/oradata/yangdbstd/control03.clt;

6 在第二备库
rman target /
RMAN> run {
2> allocate  channel dup1 type disk;
3> allocate  channel dup2 type disk;
4> set newname for datafile '/opt/oracle/oradata/yangdb/system.261.761930837' to '/opt/oracle/oradata/yangdbstd/system01.dbf';
5> set newname for datafile '/opt/oracle/oradata/yangdb/sysaux.265.761930837' to '/opt/oracle/oradata/yangdbstd/sysaux01.dbf';
6> set newname for datafile '/opt/oracle/oradata/yangdb/undotbs1.264.761930837' to '/opt/oracle/oradata/yangdbstd/undotbs1.dbf';  
7> set newname for datafile '/opt/oracle/oradata/yangdb/users.263.761930837' to '/opt/oracle/oradata/yangdbstd/users.dbf';
8> set newname for datafile '/opt/oracle/oradata/yangdb/undotbs2.269.761931099' to '/opt/oracle/oradata/yangdbstd/undotbs2.dbf';
9> set newname for datafile '/opt/oracle/oradata/yangdb/rac/tempfile/temp.268.761930967' to '/opt/oracle/oradata/yangdbstd/temp01.dbf';                                     restore  database;
10> restore  database;  
11> switch datafile all;
12> recover  database;   
13> }  
allocated channel: dup1
channel dup1: SID=25 device type=DISK
allocated channel: dup2
channel dup2: SID=26 device type=DISK
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 19-SEP-11
channel dup1: starting datafile backup set restore
channel dup1: specifying datafile(s) to restore from backup set
channel dup1: restoring datafile 00003 to /opt/oracle/oradata/yangdbstd/undotbs1.dbf
channel dup1: restoring datafile 00004 to /opt/oracle/oradata/yangdbstd/users.dbf
channel dup1: reading from backup piece /opt/oracle/backup/full_1hmmvd6c_1_1.bak
channel dup2: starting datafile backup set restore
channel dup2: specifying datafile(s) to restore from backup set
channel dup2: restoring datafile 00001 to /opt/oracle/oradata/yangdbstd/system01.dbf
channel dup2: restoring datafile 00006 to /opt/oracle/oradata/yangdb/YANGDB/datafile/o1_mf_users_77fzwyqp_.dbf
channel dup2: reading from backup piece /opt/oracle/backup/full_1gmmvd6c_1_1.bak
channel dup1: piece handle=/opt/oracle/backup/full_1hmmvd6c_1_1.bak tag=TAG20110919T204500
channel dup1: restored backup piece 1
channel dup1: restore complete, elapsed time: 00:00:07
channel dup1: starting datafile backup set restore
channel dup1: specifying datafile(s) to restore from backup set
channel dup1: restoring datafile 00002 to /opt/oracle/oradata/yangdbstd/sysaux01.dbf
channel dup1: restoring datafile 00005 to /opt/oracle/oradata/yangdbstd/undotbs2.dbf
channel dup1: reading from backup piece /opt/oracle/backup/full_1fmmvd6c_1_1.bak
channel dup2: piece handle=/opt/oracle/backup/full_1gmmvd6c_1_1.bak tag=TAG20110919T204500
channel dup2: restored backup piece 1
channel dup2: restore complete, elapsed time: 00:00:15
channel dup1: piece handle=/opt/oracle/backup/full_1fmmvd6c_1_1.bak tag=TAG20110919T204500
channel dup1: restored backup piece 1
channel dup1: restore complete, elapsed time: 00:00:15
Finished restore at 19-SEP-11
datafile 1 switched to datafile copy
input datafile copy RECID=17 STAMP=762296764 file name=/opt/oracle/oradata/yangdbstd/system01.dbf
datafile 2 switched to datafile copy
input datafile copy RECID=18 STAMP=762296764 file name=/opt/oracle/oradata/yangdbstd/sysaux01.dbf
datafile 3 switched to datafile copy
input datafile copy RECID=19 STAMP=762296764 file name=/opt/oracle/oradata/yangdbstd/undotbs1.dbf
datafile 4 switched to datafile copy
input datafile copy RECID=20 STAMP=762296764 file name=/opt/oracle/oradata/yangdbstd/users.dbf
datafile 5 switched to datafile copy
input datafile copy RECID=21 STAMP=762296764 file name=/opt/oracle/oradata/yangdbstd/undotbs2.dbf
---缺少归档日志,导致恢复失败,不过第一备库向第二备库传递日志的时候就第二备库会自动应用归档的日志的------
Starting recover at 19-SEP-11
starting media recovery
unable to find archived log  ----缺少全部的归档日志。
archived log thread=2 sequence=24
released channel: dup1
released channel: dup2
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 09/19/2011 21:06:05
RMAN-06054: media recovery requesting unknown archived log for thread 2 with sequence 24 and starting SCN of 1491532

RMAN> exit
7 根据结果决定添加standby logfile
7.1先查询源库和目标库的 v$logfile 中的文件
select member from v$logfile;
--restore 第二备库后查看
oracle@rac4:/opt/oracle/11.2.0/yangdbstd/dbs>sqlplus "/as sysdba"
SQL*Plus: Release 11.2.0.1.0 Production on Mon Sep 19 21:07:09 2011
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
SQL> select open_mode,database_role from v$database;
OPEN_MODE            DATABASE_ROLE
-------------------- ----------------
MOUNTED              PHYSICAL STANDBY
SQL> select member from v$logfile;
MEMBER
-------------------------------------------
+DATA2/rac/onlinelog/group_2.267.761930959
+DATA1/rac/onlinelog/group_2.278.761930959
+DATA2/rac/onlinelog/group_1.266.761930955
+DATA1/rac/onlinelog/group_1.268.761930955
+DATA2/rac/onlinelog/group_3.270.761931201
+DATA1/rac/onlinelog/group_3.281.761931201
+DATA2/rac/onlinelog/group_4.271.761931203
+DATA1/rac/onlinelog/group_4.280.761931203
8 rows selected.
SQL> select name from v$datafile;
NAME
-------------------------------------------
/opt/oracle/oradata/yangdbstd/system01.dbf
/opt/oracle/oradata/yangdbstd/sysaux01.dbf
/opt/oracle/oradata/yangdbstd/undotbs1.dbf
/opt/oracle/oradata/yangdbstd/users.dbf
/opt/oracle/oradata/yangdbstd/undotbs2.dbf
/opt/oracle/oradata/yangdbstd/ALIFPRE/datafile/o1_mf_users_77ghk86y_.dbf
6 rows selected.

7.2 修改第二备库--目标库中的convert参数
日志文件的:根据7.1中的查询来做修改!redo 文件会和源库的存放位置一样。所以创建目标库的时候,也和源库保持一致;创建完成后直接根据查询结果修改修改即可!
alter system set log_file_name_convert='+DATA1/rac/onlinelog/','/opt/oracle/oradata/yangdbstd/','+DATA2/rac/onlinelog/','/opt/oracle/oradata/yangdbstd/' scope=both;

数据文件的:在set newname 中指定,但是为了方便以后的数据文件的管理,创建目标库以后,也根据实际情况做出修改:
alter system set db_file_name_convert='/opt/oracle/oradata/yangdb/','/opt/oracle/oradata/yangdbstd/' scope=both;
--观察第二备库的告警日志文件
--实验过程中会出现 alter database recover managed standby database cancel;
--会出现standby database not active!即接受日志但并没有应用日志的情况,这个和LOG_FILE_NAME_CONVERT 参数有关系。实验的过程中设置了该参数之后,会出现如下报错:
Waiting for all non-current ORLs to be archived...
All non-current ORLs have been archived.
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 1 (用于线程 1) 的成员
ORA-00312: 联机日志 1 线程 1: '/opt/oracle/oradata/group_1.268.761930955'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 1 线程 1: '/opt/oracle/oradata/group_1.266.761930955'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 1 (用于线程 1) 的成员
ORA-00312: 联机日志 1 线程 1: '/opt/oracle/oradata/group_1.268.761930955'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 1 线程 1: '/opt/oracle/oradata/group_1.266.761930955'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Clearing online redo logfile 1 /opt/oracle/oradata/group_1.266.761930955
Clearing online log 1 of thread 1 sequence number 28
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 1 (用于线程 1) 的成员
ORA-00312: 联机日志 1 线程 1: '/opt/oracle/oradata/group_1.268.761930955'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 1 线程 1: '/opt/oracle/oradata/group_1.266.761930955'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 1 (用于线程 1) 的成员
ORA-00312: 联机日志 1 线程 1: '/opt/oracle/oradata/group_1.268.761930955'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 1 线程 1: '/opt/oracle/oradata/group_1.266.761930955'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Completed: alter database recover managed standby database disconnect from session
Clearing online redo logfile 1 complete
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 2 (用于线程 1) 的成员
ORA-00312: 联机日志 2 线程 1: '/opt/oracle/oradata/group_2.278.761930959'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 2 线程 1: '/opt/oracle/oradata/group_2.267.761930959'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 2 (用于线程 1) 的成员
ORA-00312: 联机日志 2 线程 1: '/opt/oracle/oradata/group_2.278.761930959'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 2 线程 1: '/opt/oracle/oradata/group_2.267.761930959'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Clearing online redo logfile 2 /opt/oracle/oradata/group_2.267.761930959
Clearing online log 2 of thread 1 sequence number 26
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 2 (用于线程 1) 的成员
ORA-00312: 联机日志 2 线程 1: '/opt/oracle/oradata/group_2.278.761930959'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 2 线程 1: '/opt/oracle/oradata/group_2.267.761930959'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 2 (用于线程 1) 的成员
ORA-00312: 联机日志 2 线程 1: '/opt/oracle/oradata/group_2.278.761930959'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 2 线程 1: '/opt/oracle/oradata/group_2.267.761930959'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Clearing online redo logfile 2 complete
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 3 (用于线程 2) 的成员
ORA-00312: 联机日志 3 线程 2: '/opt/oracle/oradata/group_3.281.761931201'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 3 线程 2: '/opt/oracle/oradata/group_3.270.761931201'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 3 (用于线程 2) 的成员
ORA-00312: 联机日志 3 线程 2: '/opt/oracle/oradata/group_3.281.761931201'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 3 线程 2: '/opt/oracle/oradata/group_3.270.761931201'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Clearing online redo logfile 3 /opt/oracle/oradata/group_3.270.761931201
Clearing online log 3 of thread 2 sequence number 23
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 3 (用于线程 2) 的成员
ORA-00312: 联机日志 3 线程 2: '/opt/oracle/oradata/group_3.281.761931201'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 3 线程 2: '/opt/oracle/oradata/group_3.270.761931201'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 3 (用于线程 2) 的成员
ORA-00312: 联机日志 3 线程 2: '/opt/oracle/oradata/group_3.281.761931201'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 3 线程 2: '/opt/oracle/oradata/group_3.270.761931201'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Mon Sep 19 21:13:24 2011

Clearing online redo logfile 3 complete

Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 4 (用于线程 2) 的成员
ORA-00312: 联机日志 4 线程 2: '/opt/oracle/oradata/group_4.280.761931203'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 4 线程 2: '/opt/oracle/oradata/group_4.271.761931203'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 4 (用于线程 2) 的成员
ORA-00312: 联机日志 4 线程 2: '/opt/oracle/oradata/group_4.280.761931203'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 4 线程 2: '/opt/oracle/oradata/group_4.271.761931203'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3

Clearing online redo logfile 4 /opt/oracle/oradata/group_4.271.761931203
Clearing online log 4 of thread 2 sequence number 24

Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 4 (用于线程 2) 的成员
ORA-00312: 联机日志 4 线程 2: '/opt/oracle/oradata/group_4.280.761931203'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 4 线程 2: '/opt/oracle/oradata/group_4.271.761931203'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Errors in file /opt/oracle/diag/rdbms/alifpre/alifpre/trace/alifpre_mrp0_16276.trc:
ORA-00313: 无法打开日志组 4 (用于线程 2) 的成员
ORA-00312: 联机日志 4 线程 2: '/opt/oracle/oradata/group_4.280.761931203'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: 联机日志 4 线程 2: '/opt/oracle/oradata/group_4.271.761931203'
ORA-27037: 无法获得文件状态
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3

Clearing online redo logfile 4 complete
====自动清除online日志完成后,oracle会根据spfile中存在的参数路径来创建redo log!
====我的实验过程中日志是放在/opt/oracle/oradata/group_4.271.761931203
====这个是由于使用了之前的实验的spfile:
\\SQL> show parameter log_file_name
\\NAME                                 TYPE        VALUE
\\------------------------------------ ----------- ------------------------------
\\log_file_name_convert                string      +DATA2/rac/onlinelog, /opt/ora
\\                                                cle/oradata, +DATA1/rac/online
\\                                                log, /opt/oracle/oradata
\\这个算是小失误,所以要在实验前做好准备!!
\\下面就是进行应用日志的alert log中的信息!                                               
Media Recovery Waiting for thread 2 sequence 24
Mon Sep 19 21:19:09 2011
RFS[2]: Assigned to RFS process 16333
RFS[2]: Identified database type as 'physical standby': Client is ARCH pid 1826
RFS[2]: Opened log for thread 2 sequence 24 dbid -1945054328 branch 761930955
Archived Log entry 28 added for thread 2 sequence 24 rlc 761930955 ID 0x8c116582 dest 3:
Mon Sep 19 21:19:12 2011
RFS[1]: Opened log for thread 2 sequence 25 dbid -1945054328 branch 761930955
Archived Log entry 29 added for thread 2 sequence 25 rlc 761930955 ID 0x8c116582 dest 3:
Mon Sep 19 21:19:16 2011
Media Recovery Log /opt/oracle/arch/alifpre_2_24_761930955.log
Media Recovery Log /opt/oracle/yangdb_arch/yangdb_1_27_761930955.log
Error opening /opt/oracle/yangdb_arch/yangdb_1_27_761930955.log
Attempting refetch
Media Recovery Waiting for thread 1 sequence 27
RFS[2]: Allowing overwrite of partial archivelog for thread 1 sequence 27
RFS[2]: Opened log for thread 1 sequence 27 dbid -1945054328 branch 761930955
Archived Log entry 30 added for thread 1 sequence 27 rlc 761930955 ID 0x8c116582 dest 3:

7.3 或者手工添加备库日志!
alter system set standby_file_management=MANUAL scope=both;
Alter database add standby logfile group 5 ('/opt/oracle/oradata/yangdbstd/redo05.log','/opt/oracle/oradata/yangdbstd/redo06.log') size 50M;
Alter database add standby logfile group 6 ('/opt/oracle/oradata/yangdbstd/redo07.log','/opt/oracle/oradata/yangdbstd/redo08.log') size 50M;
Alter database add standby logfile group 7 ('/opt/oracle/oradata/yangdbstd/redo09.log','/opt/oracle/oradata/yangdbstd/redo010.log') size 50M;
Alter database add standby logfile group 8 ('/opt/oracle/oradata/yangdbstd/redo11.log','/opt/oracle/oradata/yangdbstd/redo012.log') size 50M;
alter system set standby_file_management=auto scope=both;

使用道具 举报

回复
论坛徽章:
27
数据库板块每日发贴之星
日期:2010-06-17 01:01:07迷宫蛋
日期:2011-07-07 15:25:46紫蛋头
日期:2011-08-10 10:31:56ITPUB十周年纪念徽章
日期:2011-09-27 16:33:28ITPUB十周年纪念徽章
日期:2011-11-01 16:25:222012新春纪念徽章
日期:2012-02-07 09:59:35ITPUB知识分享者
日期:2012-02-20 17:49:25铁扇公主
日期:2012-02-21 15:02:40ITPUB年度最佳BLOG写作奖
日期:2012-03-13 17:09:53ITPUB 11周年纪念徽章
日期:2012-10-09 18:14:48
3#
 楼主| 发表于 2011-9-20 10:18 | 只看该作者
8 启动read only with apply
alter database recover managed standby database disconnect from session;
查看日志,看应用日志是否成功,
RFS[2]: Assigned to RFS process 16333
RFS[2]: Identified database type as 'physical standby': Client is ARCH pid 1826
RFS[2]: Opened log for thread 2 sequence 24 dbid -1945054328 branch 761930955
Archived Log entry 28 added for thread 2 sequence 24 rlc 761930955 ID 0x8c116582 dest 3:
Mon Sep 19 21:19:12 2011
RFS[1]: Opened log for thread 2 sequence 25 dbid -1945054328 branch 761930955
Archived Log entry 29 added for thread 2 sequence 25 rlc 761930955 ID 0x8c116582 dest 3:
Mon Sep 19 21:19:16 2011
Media Recovery Log /opt/oracle/arch/yangdbstd_2_24_761930955.log
Media Recovery Log /opt/oracle/yangdb_arch/yangdb_1_27_761930955.log
Error opening /opt/oracle/yangdb_arch/yangdb_1_27_761930955.log
Attempting refetch
Media Recovery Waiting for thread 1 sequence 27
RFS[2]: Allowing overwrite of partial archivelog for thread 1 sequence 27
RFS[2]: Opened log for thread 1 sequence 27 dbid -1945054328 branch 761930955
Archived Log entry 30 added for thread 1 sequence 27 rlc 761930955 ID 0x8c116582 dest 3:
Mon Sep 19 21:19:28 2011
Media Recovery Log /opt/oracle/arch/yangdbstd_1_27_761930955.log
Media Recovery Waiting for thread 1 sequence 28
Mon Sep 19 21:24:58 2011
若应用日志成功,则开启READ ONLY WITH APPLY模式!
SQL> alter database recover managed standby database cancel;
Database altered.
SQL> alter database open read only;
Database altered.
SQL> alter database recover managed standby database disconnect from session;
Database altered.
SQL> select process,status,sequence# from v$managed_standby;
PROCESS   STATUS        SEQUENCE#
--------- ------------ ----------
ARCH      CONNECTED             0
ARCH      CONNECTED             0
ARCH      CONNECTED             0
ARCH      CONNECTED             0
RFS       IDLE                  0
MRP0      WAIT_FOR_LOG         28-有了这个进程则说明应用日志成功!
RFS       IDLE                  0
7 rows selected.
SQL> select open_mode,database_role from v$database;
OPEN_MODE            DATABASE_ROLE
-------------------- ----------------
READ ONLY WITH APPLY PHYSICAL STANDBY

使用道具 举报

回复
论坛徽章:
27
数据库板块每日发贴之星
日期:2010-06-17 01:01:07迷宫蛋
日期:2011-07-07 15:25:46紫蛋头
日期:2011-08-10 10:31:56ITPUB十周年纪念徽章
日期:2011-09-27 16:33:28ITPUB十周年纪念徽章
日期:2011-11-01 16:25:222012新春纪念徽章
日期:2012-02-07 09:59:35ITPUB知识分享者
日期:2012-02-20 17:49:25铁扇公主
日期:2012-02-21 15:02:40ITPUB年度最佳BLOG写作奖
日期:2012-03-13 17:09:53ITPUB 11周年纪念徽章
日期:2012-10-09 18:14:48
4#
 楼主| 发表于 2011-9-20 10:22 | 只看该作者
搭建环境,安装软件,安装rac 折腾了两个星期左右,小告一段落,关于创建第二备库的经验,欢迎各位朋友指点。。

使用道具 举报

回复
论坛徽章:
75
生肖徽章:猪
日期:2014-09-05 10:25:05指数菠菜纪念章
日期:2016-10-17 16:12:49生肖徽章:兔
日期:2015-02-05 16:49:02生肖徽章:鼠
日期:2015-02-05 16:49:02生肖徽章:鼠
日期:2015-02-05 16:49:02生肖徽章:马
日期:2015-02-05 16:49:02生肖徽章:羊
日期:2015-02-06 08:40:35生肖徽章:羊
日期:2015-02-06 08:40:34股神
日期:2015-01-05 08:27:16菲尼克斯太阳
日期:2014-12-29 13:11:51
5#
发表于 2011-9-20 10:38 | 只看该作者
Oracle文档说: Cascading is not supported in Data Guard configurations that contain an Oracle Real Applications Cluster (RAC) primary database.

LZ的有测试第二个备库能起作用吗?

使用道具 举报

回复
论坛徽章:
27
数据库板块每日发贴之星
日期:2010-06-17 01:01:07迷宫蛋
日期:2011-07-07 15:25:46紫蛋头
日期:2011-08-10 10:31:56ITPUB十周年纪念徽章
日期:2011-09-27 16:33:28ITPUB十周年纪念徽章
日期:2011-11-01 16:25:222012新春纪念徽章
日期:2012-02-07 09:59:35ITPUB知识分享者
日期:2012-02-20 17:49:25铁扇公主
日期:2012-02-21 15:02:40ITPUB年度最佳BLOG写作奖
日期:2012-03-13 17:09:53ITPUB 11周年纪念徽章
日期:2012-10-09 18:14:48
6#
 楼主| 发表于 2011-9-20 13:48 | 只看该作者
kewin 发表于 2011-9-20 10:38
Oracle文档说: Cascading is not supported in Data Guard configurations that contain an Oracle Real A ...

你看第八步中的log 已经成功应用日志了。。。

使用道具 举报

回复
论坛徽章:
75
生肖徽章:猪
日期:2014-09-05 10:25:05指数菠菜纪念章
日期:2016-10-17 16:12:49生肖徽章:兔
日期:2015-02-05 16:49:02生肖徽章:鼠
日期:2015-02-05 16:49:02生肖徽章:鼠
日期:2015-02-05 16:49:02生肖徽章:马
日期:2015-02-05 16:49:02生肖徽章:羊
日期:2015-02-06 08:40:35生肖徽章:羊
日期:2015-02-06 08:40:34股神
日期:2015-01-05 08:27:16菲尼克斯太阳
日期:2014-12-29 13:11:51
7#
发表于 2011-9-20 14:04 | 只看该作者
杨奇龙 发表于 2011-9-20 13:48
你看第八步中的log 已经成功应用日志了。。。

RAC是几个节点?

有没有测试每个节点都产生logs的CASE?

使用道具 举报

回复
论坛徽章:
1
ITPUB十周年纪念徽章
日期:2011-11-01 16:26:59
8#
发表于 2011-9-20 14:27 | 只看该作者
好长的内容啊 看的我眼花

使用道具 举报

回复
论坛徽章:
27
数据库板块每日发贴之星
日期:2010-06-17 01:01:07迷宫蛋
日期:2011-07-07 15:25:46紫蛋头
日期:2011-08-10 10:31:56ITPUB十周年纪念徽章
日期:2011-09-27 16:33:28ITPUB十周年纪念徽章
日期:2011-11-01 16:25:222012新春纪念徽章
日期:2012-02-07 09:59:35ITPUB知识分享者
日期:2012-02-20 17:49:25铁扇公主
日期:2012-02-21 15:02:40ITPUB年度最佳BLOG写作奖
日期:2012-03-13 17:09:53ITPUB 11周年纪念徽章
日期:2012-10-09 18:14:48
9#
 楼主| 发表于 2011-9-20 14:51 | 只看该作者
kewin 发表于 2011-9-20 14:04
RAC是几个节点?

有没有测试每个节点都产生logs的CASE?

RAC 两个节点
测试内容包括
1 添加数据文件
2在不同节点 insert ,delete 表
完全成功。
相信很多公司的的核心库都会使用rac +dg的架构的!第二备库与第一备库保持一定时间应用日志。。

使用道具 举报

回复
论坛徽章:
27
数据库板块每日发贴之星
日期:2010-06-17 01:01:07迷宫蛋
日期:2011-07-07 15:25:46紫蛋头
日期:2011-08-10 10:31:56ITPUB十周年纪念徽章
日期:2011-09-27 16:33:28ITPUB十周年纪念徽章
日期:2011-11-01 16:25:222012新春纪念徽章
日期:2012-02-07 09:59:35ITPUB知识分享者
日期:2012-02-20 17:49:25铁扇公主
日期:2012-02-21 15:02:40ITPUB年度最佳BLOG写作奖
日期:2012-03-13 17:09:53ITPUB 11周年纪念徽章
日期:2012-10-09 18:14:48
10#
 楼主| 发表于 2011-9-20 14:54 | 只看该作者
kewin 发表于 2011-9-20 14:04
RAC是几个节点?

有没有测试每个节点都产生logs的CASE?

MRP0 started with pid=25, OS id=16440
MRP0: Background Managed Standby Recovery process started (yangdbstd)
Serial Media Recovery started
Managed Standby Recovery not using Real Time Apply
Waiting for all non-current ORLs to be archived...
All non-current ORLs have been archived.
Media Recovery Waiting for thread 1 sequence 28
Completed: alter database recover managed standby database disconnect from session
Mon Sep 19 21:30:12 2011
RFS[2]: Opened log for thread 1 sequence 28 dbid -1945054328 branch 761930955
Archived Log entry 31 added for thread 1 sequence 28 rlc 761930955 ID 0x8c116582 dest 3:
Mon Sep 19 21:30:13 2011
RFS[1]: Opened log for thread 2 sequence 26 dbid -1945054328 branch 761930955
Archived Log entry 32 added for thread 2 sequence 26 rlc 761930955 ID 0x8c116582 dest 3:
Mon Sep 19 21:30:21 2011
Media Recovery Log /opt/oracle/arch/yangdbstd_1_28_761930955.log
Media Recovery Log /opt/oracle/arch/yangdbstd_2_24_761930955.log
Media Recovery Log /opt/oracle/arch/yangdbstd_2_25_761930955.log
Media Recovery Log /opt/oracle/arch/yangdbstd_2_26_761930955.log
Media Recovery Waiting for thread 2 sequence 27
Mon Sep 19 21:30:32 2011
RFS[2]: Opened log for thread 2 sequence 27 dbid -1945054328 branch 761930955
Archived Log entry 33 added for thread 2 sequence 27 rlc 761930955 ID 0x8c116582 dest 3:
Mon Sep 19 21:30:43 2011
Media Recovery Log /opt/oracle/arch/yangdbstd_2_27_761930955.log
Media Recovery Waiting for thread 1 sequence 29

thread 1 为节点1 的归档进程
thread 2 为节点2 的归档进程

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表