suchen
HeimDatenbankMySQL-TutorialOracleDG之--构建PhysicalStandby

Oracle DG之--构建Physical Standby 系统环境: 操作系统: RedHat EL4 Oracle: Oracle 10.2.0.1.0 650) this.width=650;" src="http://www.68idc.cn/help/uploads/allimg/151111/121R54538-0.jpg" title="dg2.png" alt="wKioL1R28C2B7wXmAACOWpabg-4498.jpg

Oracle DG之--构建Physical Standby


系统环境:

操作系统: RedHat EL4

Oracle:    Oracle 10.2.0.1.0

wKioL1R28C2B7wXmAACOWpabg-4498.jpg

                                  从以上图中所示:主库为bj(db_unique_name),备库为sh。


案例分析:

 本案例采用RMAN Duplicate方式建立standby database。

一、配置主备库初始化参数

主库的初始化参数:initbj.ora

[oracle@ocmtest dbs]$ more initbj.ora 
*.audit_file_dest='/u01/app/oracle/admin/bj/adump'
*.background_dump_dest='/u01/app/oracle/admin/bj/bdump'
*.compatible='10.2.0.1.0'
*.control_files='/u01/app/oracle/oradata/bj/control01.ctl','/u01/app/oracle/oradata/bj/control02.ctl','/u01/app/oracle/oradata/bj/control
03.ctl'
*.core_dump_dest='/u01/app/oracle/admin/bj/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='bj'
*.db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=bjXDB)'
*.job_queue_processes=10
*.open_cursors=300
*.pga_aggregate_target=68157440
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=205520896
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/u01/app/oracle/admin/bj/udump'

以下为DG配置参数:

DB_UNIQUE_NAME=bj
LOG_ARCHIVE_CONFIG='DG_CONFIG=(bj,sh)'

LOG_ARCHIVE_DEST_1='LOCATION=/u01/disk1/arch/bj/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=bj'    

LOG_ARCHIVE_DEST_2='SERVICE=sh LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=sh'    
  
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
LOG_ARCHIVE_MAX_PROCESSES=3
FAL_SERVER=sh
FAL_CLIENT=bj
DB_FILE_NAME_CONVERT='/u01/app/oracle/oradata/sh/','/u01/app/oracle/oradata/bj/'                            
LOG_FILE_NAME_CONVERT='/u01/app/oracle/oradata/sh/','/u01/app/oracle/oradata/bj/'                             
STANDBY_FILE_MANAGEMENT=AUTO

备库的初始化参数:initsh.ora

[oracle@ocmtest1 dbs]$ more initsh.ora 
*.audit_file_dest='/u01/app/oracle/admin/sh/adump'
*.background_dump_dest='/u01/app/oracle/admin/sh/bdump'
*.compatible='10.2.0.1.0'
*.control_file_record_keep_time=7
*.control_files='/u01/app/oracle/oradata/sh/control01.ctl','/u01/app/oracle/oradata/sh/control02.ctl','/u01/app/oracle/oradata/sh/control
03.ctl'
*.core_dump_dest='/u01/app/oracle/admin/sh/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.DB_FILE_NAME_CONVERT='/u01/app/oracle/oradata/bj/','/u01/app/oracle/oradata/sh/'
*.db_name='bj'
*.db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.open_cursors=300
*.pga_aggregate_target=68157440
*.processes=150
*.REMOTE_LOGIN_PASSWORDFILE='EXCLUSIVE'
*.sga_target=205520896
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/u01/app/oracle/admin/sh/udump'

以下为DG配置参数:

*.DB_UNIQUE_NAME='sh'
*.FAL_CLIENT='sh'
*.FAL_SERVER='bj'
*.job_queue_processes=10
*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(bj,sh)'
*.LOG_ARCHIVE_DEST_1='LOCATION=/u01/disk1/arch/sh/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=sh'
*.LOG_ARCHIVE_DEST_2='SERVICE=bj LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=bj'
*.LOG_ARCHIVE_DEST_STATE_1='ENABLE'
*.LOG_ARCHIVE_DEST_STATE_2='ENABLE'
*.log_archive_format='arch_%t_%s_%r.log'
*.LOG_ARCHIVE_MAX_PROCESSES=3
*.LOG_FILE_NAME_CONVERT='/u01/app/oracle/oradata/bj/','/u01/app/oracle/oradata/sh/'
*.STANDBY_FILE_MANAGEMENT='AUTO'

二、在主库上建立standby 日志

   对于默认的最大性能的保护方式,可以不用建立standby redo logfiles;但建立standby redo logfiles可以更好的保存redo log;standby redo日志组组数应等于或多于redo log,日志的大小应该一致。
   
SQL> alter database add standby logfile group 4 ('/u01/app/oracle/oradata/bj/redo04.log') size 50m;

 SQL> alter database add standby logfile group 5 ('/u01/app/oracle/oradata/bj/redo05.log.rdo') size 50m;
 
 SQL> alter database add standby logfile group 6 ('/u01/app/oracle/oradata/bj/redo06.log') size 50m;

三、在备库上建立相应目录:

[oracle@ocmtest1 dbs]$mkdir -p /u01/app/oracle/admin/sh/adump
[oracle@ocmtest1 dbs]$mkdir -p /u01/app/oracle/admin/sh/udump
[oracle@ocmtest1 dbs]$mkdir -p /u01/app/oracle/admin/sh/bdump
[oracle@ocmtest1 dbs]$mkdir -p /u01/app/oracle/admin/sh/cdump
[oracle@ocmtest1 dbs]$mkdir -p /u01/app/oracle/oradata/sh

四、在主库生成备库的controlfile和备份


1、数据库在mount 状态下
06:57:41 SQL> alter database create standby controlfile as '/home/oracle/std_control01.ctl';

2、 将生成的控制文件,拷贝到备库相同的目录下
[oracle@ocmtest1 ~]$ scp  /home/oracle/std_control01.ctl 192.168.8.86:/home/oracle

对主库进行备份
[oracle@ocmtest bj]$ rman target /
Recovery Manager: Release 10.2.0.1.0 - Production on Wed Aug 31 10:55:55 2011
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
connected to target database (not started)
RMAN> run {                                                                     
2>  startup force mount;                                                           
3>  backup database format='/u01/disk1/rman/bj/bj_%s.bak' plus archivelog;      
4> alter database open;                                                        
5> }


五、在备库上Duplicate  Database(备库启动到弄mount)

1)在备库上建立/u01/disk1/rman/bj目录
   拷贝主库的备份到备库/u01/disk1/rman/bj目录(拷贝到相同的目录下)

[oracle@ocmtest bj]$ scp /u01/disk1/rman/bj/bj_*.bak 192.168.8.86:/u01/disk1/rman/bj

2)配置Oracle network

因为,备库启动到no mount 状态,拒绝用户远程联机,所以采用静态注册,如下所示备库listenter
[oracle@ocmtest1 admin]$ cat listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
      (PROGRAM = extproc)
    )
   (SID_DESC =
      (GLOBAL_DBNAME = bj)
      (ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
      (SID_NAME = bj)
    )
  
)

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = ocmtest1.51CTO提醒您,请勿滥发广告!)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
  )

如下所示:主库的tnsnames文件:
[oracle@ocmtest1 admin]$ 
[oracle@ocmtest admin]$ cat tnsnames.ora 
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
BJ =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.84)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = bj)
    )
)
SH =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.86)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = sh)
       (UR=A)   ;添加此项连接到静态注册的备库
    )
)

测试连接备库
[oracle@ocmtest bj]$ sqlplus sys/oracle@sh as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Wed Aug 31 11:19:32 2011
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> exit                                                                                                                                
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

通过主库连接到备库,进行恢复(通过克隆方式建立备库)
[oracle@ocmtest bj]$ rman target /
Recovery Manager: Release 10.2.0.1.0 - Production on Wed Aug 31 11:19:36 2011
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
connected to target database: BJ (DBID=1015723911)

RMAN> connect auxiliary sys/oracle@sh;                                                                                                 
connected to auxiliary database: BJ (not mounted)

RMAN> duplicate target database for standby;                                    
Starting Duplicate Db at 31-AUG-11
using target database control file instead of recovery catalog
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: sid=155 devtype=DISK
contents of Memory Script:
{
   restore clone standby controlfile;
   sql clone 'alter database mount standby database';
}
executing Memory Script
Starting restore at 31-AUG-11
using channel ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: restoring control file
channel ORA_AUX_DISK_1: copied control file copy
input filename=/home/oracle/stand.ctl
output filename=/u01/app/oracle/oradata/sh/control01.ctl
output filename=/u01/app/oracle/oradata/sh/control02.ctl
output filename=/u01/app/oracle/oradata/sh/control03.ctl
Finished restore at 31-AUG-11
sql statement: alter database mount standby database
released channel: ORA_AUX_DISK_1
contents of Memory Script:
{
   set newname for tempfile  1 to 
 "/u01/app/oracle/oradata/sh/temp01.dbf";
   switch clone tempfile all;
   set newname for datafile  1 to 
 "/u01/app/oracle/oradata/sh/system01.dbf";
   set newname for datafile  2 to 
 "/u01/app/oracle/oradata/sh/undotbs01.dbf";
   set newname for datafile  3 to 
 "/u01/app/oracle/oradata/sh/sysaux01.dbf";
   set newname for datafile  4 to 
 "/u01/app/oracle/oradata/sh/users01.dbf";
   set newname for datafile  5 to 
 "/u01/app/oracle/oradata/sh/example01.dbf";
   restore
   check readonly
   clone database
   ;
}
executing Memory Script
executing command: SET NEWNAME
renamed temporary file 1 to /u01/app/oracle/oradata/sh/temp01.dbf in control file
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 31-AUG-11
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: sid=155 devtype=DISK
channel ORA_AUX_DISK_1: starting datafile backupset restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /u01/app/oracle/oradata/sh/system01.dbf
restoring datafile 00002 to /u01/app/oracle/oradata/sh/undotbs01.dbf
restoring datafile 00003 to /u01/app/oracle/oradata/sh/sysaux01.dbf
restoring datafile 00004 to /u01/app/oracle/oradata/sh/users01.dbf
restoring datafile 00005 to /u01/app/oracle/oradata/sh/example01.dbf
channel ORA_AUX_DISK_1: reading from backup piece /u01/disk1/rman/bj/bj_2.bak
channel ORA_AUX_DISK_1: restored backup piece 1
piece handle=/u01/disk1/rman/bj/bj_2.bak tag=TAG20110831T105953
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:48
Finished restore at 31-AUG-11
contents of Memory Script:
{
   switch clone datafile all;
}
executing Memory Script
datafile 1 switched to datafile copy
input datafile copy recid=10 stamp=760621486 filename=/u01/app/oracle/oradata/sh/system01.dbf
datafile 2 switched to datafile copy
input datafile copy recid=11 stamp=760621487 filename=/u01/app/oracle/oradata/sh/undotbs01.dbf
datafile 3 switched to datafile copy
input datafile copy recid=12 stamp=760621487 filename=/u01/app/oracle/oradata/sh/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy recid=13 stamp=760621487 filename=/u01/app/oracle/oradata/sh/users01.dbf
datafile 5 switched to datafile copy
input datafile copy recid=14 stamp=760621487 filename=/u01/app/oracle/oradata/sh/example01.dbf
Finished Duplicate Db at 31-AUG-11

---备库建立完毕,并启动到mount状态!


六、在备库上启动MRP进程

11:40:28 SQL> SELECT status from v$instance;                                                                                             
STATUS
------------
MOUNTED

11:45:40 SQL> alter database recover managed standby database disconnect from session;                                                   
Database altered.

告警日志:
alter database recover managed standby database disconnect from session
Wed Aug 31 11:46:00 2011
Attempt to start background Managed Standby Recovery process (sh)
MRP0 started with pid=22, OS id=14159
Wed Aug 31 11:46:01 2011
MRP0: Background Managed Standby Recovery process started (sh)
Managed Standby Recovery not using Real Time Apply
Wed Aug 31 11:46:06 2011
Errors in file /u01/app/oracle/admin/sh/bdump/sh_mrp0_14159.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/u01/app/oracle/oradata/sh/redo01.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Wed Aug 31 11:46:06 2011
Errors in file /u01/app/oracle/admin/sh/bdump/sh_mrp0_14159.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/u01/app/oracle/oradata/sh/redo01.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Clearing online redo logfile 1 /u01/app/oracle/oradata/sh/redo01.log
Clearing online log 1 of thread 1 sequence number 23
Wed Aug 31 11:46:06 2011
Errors in file /u01/app/oracle/admin/sh/bdump/sh_mrp0_14159.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/u01/app/oracle/oradata/sh/redo01.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Wed Aug 31 11:46:07 2011
Completed: alter database recover managed standby database disconnect from session
Wed Aug 31 11:46:08 2011
Clearing online redo logfile 1 complete
Wed Aug 31 11:46:08 2011
Errors in file /u01/app/oracle/admin/sh/bdump/sh_mrp0_14159.trc:
ORA-00313: open failed for members of log group 2 of thread 1
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/sh/redo02.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Wed Aug 31 11:46:08 2011
Errors in file /u01/app/oracle/admin/sh/bdump/sh_mrp0_14159.trc:
ORA-00313: open failed for members of log group 2 of thread 1
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/sh/redo02.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Clearing online redo logfile 2 /u01/app/oracle/oradata/sh/redo02.log
Clearing online log 2 of thread 1 sequence number 21
Wed Aug 31 11:46:08 2011
Errors in file /u01/app/oracle/admin/sh/bdump/sh_mrp0_14159.trc:
ORA-00313: open failed for members of log group 2 of thread 1
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/sh/redo02.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Clearing online redo logfile 2 complete
Wed Aug 31 11:46:09 2011
Errors in file /u01/app/oracle/admin/sh/bdump/sh_mrp0_14159.trc:
ORA-00313: open failed for members of log group 3 of thread 1
ORA-00312: online log 3 thread 1: '/u01/app/oracle/oradata/sh/redo03.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Wed Aug 31 11:46:09 2011
Errors in file /u01/app/oracle/admin/sh/bdump/sh_mrp0_14159.trc:
ORA-00313: open failed for members of log group 3 of thread 1
ORA-00312: online log 3 thread 1: '/u01/app/oracle/oradata/sh/redo03.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Clearing online redo logfile 3 /u01/app/oracle/oradata/sh/redo03.log
Clearing online log 3 of thread 1 sequence number 22
Wed Aug 31 11:46:09 2011
Errors in file /u01/app/oracle/admin/sh/bdump/sh_mrp0_14159.trc:
ORA-00313: open failed for members of log group 3 of thread 1
ORA-00312: online log 3 thread 1: '/u01/app/oracle/oradata/sh/redo03.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
Clearing online redo logfile 3 complete
Media Recovery Waiting for thread 1 sequence 23
Wed Aug 31 11:47:00 2011
Using STANDBY_ARCHIVE_DEST parameter default value as /u01/disk1/arch/sh/
Redo Shipping Client Connected as PUBLIC
-- Connected User is Valid
RFS[1]: Assigned to RFS process 14219
RFS[1]: Identified database type as 'physical standby'
Wed Aug 31 11:47:00 2011
RFS LogMiner: Client disabled from further notification
Wed Aug 31 11:47:01 2011
Redo Shipping Client Connected as PUBLIC
-- Connected User is Valid
RFS[2]: Assigned to RFS process 14221
RFS[2]: Identified database type as 'physical standby'
Wed Aug 31 11:47:01 2011
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_7_760458507.log'
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_8_760458507.log'
Wed Aug 31 11:47:01 2011
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_6_760458507.log'
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_10_760458507.log'
Wed Aug 31 11:47:01 2011
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_9_760458507.log'
Wed Aug 31 11:47:02 2011
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_11_760458507.log'
Wed Aug 31 11:47:02 2011
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_12_760458507.log'
Wed Aug 31 11:47:02 2011
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_13_760458507.log'
Wed Aug 31 11:47:02 2011
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_14_760458507.log'
Wed Aug 31 11:47:02 2011
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_15_760458507.log'
Wed Aug 31 11:47:02 2011
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_16_760458507.log'
Wed Aug 31 11:47:03 2011
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_17_760458507.log'
Wed Aug 31 11:47:03 2011
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_18_760458507.log'
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_19_760458507.log'
Wed Aug 31 11:47:03 2011
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_20_760458507.log'
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_22_760458507.log'
Wed Aug 31 11:47:04 2011
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_21_760458507.log'
Wed Aug 31 11:47:04 2011
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_24_760458507.log'
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_25_760458507.log'
Wed Aug 31 11:47:05 2011
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_23_760458507.log'
Wed Aug 31 11:47:05 2011
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_26_760458507.log'
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_27_760458507.log'
Wed Aug 31 11:47:05 2011
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_28_760458507.log'
Wed Aug 31 11:47:05 2011
RFS[2]: Archived Log: '/u01/disk1/arch/sh/arch_1_29_760458507.log'
Wed Aug 31 11:47:05 2011
Media Recovery Log /u01/disk1/arch/sh/arch_1_23_760458507.log
Media Recovery Log /u01/disk1/arch/sh/arch_1_24_760458507.log
Media Recovery Log /u01/disk1/arch/sh/arch_1_25_760458507.log
Media Recovery Log /u01/disk1/arch/sh/arch_1_26_760458507.log
Media Recovery Log /u01/disk1/arch/sh/arch_1_27_760458507.log
Media Recovery Log /u01/disk1/arch/sh/arch_1_28_760458507.log
Media Recovery Log /u01/disk1/arch/sh/arch_1_29_760458507.log
Media Recovery Waiting for thread 1 sequence 30

七、在主库上切换日志测试数据同步

RMAN> sql'alter system switch logfile';                                                                                                
sql statement: alter system switch logfile

备库告警日志:
RFS[1]: No standby redo logfiles created
RFS[1]: Archived Log: '/u01/disk1/arch/sh/arch_1_30_760458507.log'
Wed Aug 31 11:48:06 2011
Redo Shipping Client Connected as PUBLIC
-- Connected User is Valid
RFS[3]: Assigned to RFS process 14234
RFS[3]: Identified database type as 'physical standby'
Primary database is in MAXIMUM PERFORMANCE mode
Primary database is in MAXIMUM PERFORMANCE mode
RFS[3]: No standby redo logfiles created
Wed Aug 31 11:48:08 2011
Media Recovery Log /u01/disk1/arch/sh/arch_1_30_760458507.log
Media Recovery Waiting for thread 1 sequence 31 (in transit)

---备库接收到归档日志,并对其做Media Recover。

八、查看数据库信息:

18:02:08 SYS@ bj >select name,database_role,protection_mode from v$database;
NAME      DATABASE_ROLE    PROTECTION_MODE
--------- ---------------- --------------------
BJ         PRIMARY          MAXIMUM PERFORMANCE

18:02:50 SYS@ sh >select name,database_role,protection_mode from v$database;
NAME      DATABASE_ROLE    PROTECTION_MODE
--------- ---------------- --------------------
BJ        PHYSICAL STANDBY MAXIMUM PERFORMANCE

   

----@此案例采用Oracle 10g的环境,对于备库在recover状态下,只能启动到mount状态,如果启动到open环境,则会停止recover,失去了数据保护的功能;对于Oracle 11g,Oracle启用了新的特性,“Active Standby”,可以将备库启动到open状态,并且可以继续recover,从而增强了备库的应用范围和备库的功能。



Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
MySQL: Wesentliche Fähigkeiten für Anfänger zu meisternMySQL: Wesentliche Fähigkeiten für Anfänger zu meisternApr 18, 2025 am 12:24 AM

MySQL ist für Anfänger geeignet, um Datenbankfähigkeiten zu erlernen. 1. Installieren Sie MySQL Server- und Client -Tools. 2. Verstehen Sie grundlegende SQL -Abfragen, wie z. B. SELECT. 3.. Stammdatenoperationen: Daten erstellen, Daten einfügen, aktualisieren und löschen. 4. Lernen Sie fortgeschrittene Fähigkeiten: Unterabfragen und Fensterfunktionen. 5. Debugging und Optimierung: Überprüfen Sie die Syntax, verwenden Sie Indizes, vermeiden Sie die Auswahl*und verwenden Sie die Grenze.

MySQL: Strukturierte Daten und relationale DatenbankenMySQL: Strukturierte Daten und relationale DatenbankenApr 18, 2025 am 12:22 AM

MySQL verwaltet strukturierte Daten effizient durch Tabellenstruktur und SQL-Abfrage und implementiert Inter-Tisch-Beziehungen durch Fremdschlüssel. 1. Definieren Sie beim Erstellen einer Tabelle das Datenformat und das Typ. 2. Verwenden Sie fremde Schlüssel, um Beziehungen zwischen Tabellen aufzubauen. 3.. Verbessern Sie die Leistung durch Indexierung und Abfrageoptimierung. 4. regelmäßig Sicherung und Überwachung von Datenbanken, um die Datensicherheit und die Leistungsoptimierung der Daten zu gewährleisten.

MySQL: Schlüsselmerkmale und Funktionen erklärtMySQL: Schlüsselmerkmale und Funktionen erklärtApr 18, 2025 am 12:17 AM

MySQL ist ein Open Source Relational Database Management -System, das in der Webentwicklung häufig verwendet wird. Zu den wichtigsten Funktionen gehören: 1. unterstützt mehrere Speichermotoren wie InnoDB und MyISAM, geeignet für verschiedene Szenarien; 2. Bietet Master-Slave-Replikationsfunktionen, um Lastausgleich und Datensicherung zu erleichtern. 3.. Verbessern Sie die Abfrageeffizienz durch Abfrageoptimierung und Index.

Der Zweck von SQL: Interaktion mit MySQL -DatenbankenDer Zweck von SQL: Interaktion mit MySQL -DatenbankenApr 18, 2025 am 12:12 AM

SQL wird verwendet, um mit der MySQL -Datenbank zu interagieren, um die Datenzusatz, Löschung, Änderung, Inspektion und Datenbankdesign zu realisieren. 1) SQL führt Datenoperationen über SELECT, INSERT, INTERATE, UPDATE, Löschen von Anweisungen durch. 2) Verwenden Sie Anweisungen für Datenbankdesign und -verwaltung create, ändern, fallen. 3) Komplexe Abfragen und Datenanalysen werden über SQL implementiert, um die Effizienz der Geschäftsentscheidungen zu verbessern.

MySQL für Anfänger: Erste Schritte mit der DatenbankverwaltungMySQL für Anfänger: Erste Schritte mit der DatenbankverwaltungApr 18, 2025 am 12:10 AM

Zu den grundlegenden Operationen von MySQL gehört das Erstellen von Datenbanken, Tabellen und die Verwendung von SQL zur Durchführung von CRUD -Operationen für Daten. 1. Erstellen Sie eine Datenbank: createdatabasemy_first_db; 2. Erstellen Sie eine Tabelle: CreateTableBooks (IDINGAUTO_INCRECTIONPRIMARYKEY, Titelvarchar (100) Notnull, AuthorVarchar (100) Notnull, veröffentlicht_yearint); 3.. Daten einfügen: InsertIntoBooks (Titel, Autor, veröffentlicht_year) va

MySQLs Rolle: Datenbanken in WebanwendungenMySQLs Rolle: Datenbanken in WebanwendungenApr 17, 2025 am 12:23 AM

Die Hauptaufgabe von MySQL in Webanwendungen besteht darin, Daten zu speichern und zu verwalten. 1.Mysql verarbeitet effizient Benutzerinformationen, Produktkataloge, Transaktionsunterlagen und andere Daten. 2. Durch die SQL -Abfrage können Entwickler Informationen aus der Datenbank extrahieren, um dynamische Inhalte zu generieren. 3.Mysql arbeitet basierend auf dem Client-Server-Modell, um eine akzeptable Abfragegeschwindigkeit sicherzustellen.

MySQL: Erstellen Sie Ihre erste DatenbankMySQL: Erstellen Sie Ihre erste DatenbankApr 17, 2025 am 12:22 AM

Zu den Schritten zum Erstellen einer MySQL -Datenbank gehören: 1. Erstellen einer Datenbank und Tabelle, 2. Daten einfügen, und 3. Durchführen von Abfragen. Verwenden Sie zunächst die Anweisungen für erstellte und creatEtable, um die Datenbank und Tabelle zu erstellen, und verwenden Sie dann die Anweisung InsertInto, um die Daten einzulegen, und verwenden Sie schließlich die Auswahlanweisung, um die Daten abzufragen.

MySQL: Ein anfängerfreundlicher Ansatz zur DatenspeicherungMySQL: Ein anfängerfreundlicher Ansatz zur DatenspeicherungApr 17, 2025 am 12:21 AM

MySQL ist für Anfänger geeignet, da es einfach zu bedienen und leistungsfähig ist. 1.Mysql ist eine relationale Datenbank und verwendet SQL für CRUD -Operationen. 2. Es ist einfach zu installieren und erfordert, dass das Stammbenutzerkennwort konfiguriert wird. 3.. Verwenden Sie Einfügen, Aktualisieren, Löschen und Wählen Sie, um Datenvorgänge auszuführen. 4. OrderBy, wo und Join kann für komplexe Abfragen verwendet werden. 5. Debugging erfordert die Überprüfung der Syntax und verwenden Sie Erklärungen zur Analyse der Abfrage. 6. Die Optimierungsvorschläge umfassen die Verwendung von Indizes, die Auswahl des richtigen Datentyps und der guten Programmiergewohnheiten.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

SecLists

SecLists

SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

SAP NetWeaver Server-Adapter für Eclipse

SAP NetWeaver Server-Adapter für Eclipse

Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.