一台电脑搭建
来源:互联网 发布:网络挣钱 编辑:程序博客网 时间:2024/04/19 18:09
1.备库上进行相关操作
su - zhenganding
cd $HOME
stty erase "^H"
vi .std_bash_profile
umask 022
export TERM=vt100
export NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss"
export ORACLE_DOC=$ORACLE_BASE/doc
export TMP=/tmp
PATH=$PATH:$HOME/bin
export ORACLE_BASE=/paic/app/dbshare/oracle/zhenganding
export ORACLE_HOME=$ORACLE_BASE/11.2.0.4.5
export ORACLE_SID=stdorclzad
export PATH=$ORACLE_HOME/bin:$PATH
export PATH
export PS1="`hostname`:$ORACLE_SID > "
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export ORA_ENCRYPT_LOGIN=true
export SHELL_PATH=/etc/paic/shell
执行脚本
source .std_bash_profile
ORACLE_BASE和ORACLE_HOME目录需要和主库保持一致
创建必要的目录:
cd $ORACLE_BASE
mkdir -p admin/stdorclzad
cd admin/stdorclzad
mkdir adump dpdump pfile
cd $ORACLE_BASE
mkdir diag diag/rdbms diag/tnslsnr
cd diag/rdbms
mkdir -p stdorclzad/stdorclzad
cd stdorclzad/stdorclzad
mkdir alert cdump hm incident incpkg ir lck metadata stage sweep trace
cd $ORACLE_BASE
cd diag/tnslsnr
mkdir -P cnsh230235/stdorclzad
cd cnsh230235/stdorclzad
mkdir alert cdump incident incpkg lck metadata stage sweep trace
2.主库进行设置
[zhenganding@cnsh230235 ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Sat Aug 20 13:28:09 2016
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> alter database force logging;
Database altered.
SQL> select force_logging from v$database;
FOR
---
YES
SQL> select group#,bytes/1024/1024 from v$log;
GROUP# BYTES/1024/1024
---------- ---------------
1 50
2 50
3 50
将standby logfile创建到和redo logfile一样的路径下:(如果不加路径,默认创建在FRA目录下。再想向convert参数添加转换的路径,直接提示字符超过255会报错)
alter database add standby logfile thread 1 group 4('/paic/app/dbshare/oracle/zhenganding/oradata/orclzad/standby01.log') size 50M;
alter database add standby logfile thread 1 group 5('/paic/app/dbshare/oracle/zhenganding/oradata/orclzad/standby02.log') size 50M;
alter database add standby logfile thread 1 group 6('/paic/app/dbshare/oracle/zhenganding/oradata/orclzad/standby03.log') size 50M;
alter database add standby logfile thread 1 group 7('/paic/app/dbshare/oracle/zhenganding/oradata/orclzad/standby04.log') size 50M;
SQL> select group#,thread#,sequence#,archived,status from v$standby_log;
GROUP# THREAD# SEQUENCE# ARC STATUS
---------- ---------- ---------- --- ----------
4 1 0 YES UNASSIGNED
5 1 0 YES UNASSIGNED
6 1 0 YES UNASSIGNED
7 1 0 YES UNASSIGNED
将文件备份在/home/zhenganding/bakfulldb2下:
rman
RMAN> connect target /
RMAN> show all;
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 4;
RMAN>RUN {
ALLOCATE CHANNEL ch00 TYPE disk;
ALLOCATE CHANNEL ch01 TYPE disk;
ALLOCATE CHANNEL ch02 TYPE disk;
ALLOCATE CHANNEL ch03 TYPE disk;
CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 4;
CONFIGURE BACKUP OPTIMIZATION ON;
SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';
BACKUP section size 4096m FILESPERSET 4 FORMAT='/home/zhenganding/bakfulldb2/back_%d_%s_%p_%t' DATABASE;
BACKUP CURRENT CONTROLFILE FORMAT='/home/zhenganding/bakfulldb2/orclza_ctl.f';
release channel ch00;
release channel ch01;
release channel ch02;
release channel ch03;
}
RMAN> list backup;
List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
1 Full 1.22M DISK 00:00:02 20-AUG-16
BP Key: 1 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_3_1_920382248
List of Datafiles in backup set 1
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
3 Full 2366210 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/undotbs01.dbf
6 Full 2366210 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/11.2.0.4.5/tt.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
2 Full 27.45M DISK 00:00:07 20-AUG-16
BP Key: 2 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_4_1_920382248
List of Datafiles in backup set 2
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
4 Full 2366211 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/users01.dbf
5 Full 2366211 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/example01.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
3 Full 1.05M DISK 00:00:03 20-AUG-16
BP Key: 3 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_5_1_920382252
Control File Included: Ckp SCN: 2366213 Ckp time: 20-AUG-16
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
4 Full 80.00K DISK 00:00:00 20-AUG-16
BP Key: 4 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_6_1_920382256
SPFILE Included: Modification time: 27-JUL-16
SPFILE db_unique_name: ORCLZAD
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
5 Full 114.53M DISK 00:00:36 20-AUG-16
BP Key: 5 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_2_1_920382248
List of Datafiles in backup set 5
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
2 Full 2366209 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/sysaux01.dbf
7 Full 2366209 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/tbspce01.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
6 Full 246.96M DISK 00:01:11 20-AUG-16
BP Key: 6 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_1_1_920382248
List of Datafiles in backup set 6
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
1 Full 2366208 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/system01.dbf
8 Full 2094439 16-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/trans01.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
7 Full 1.05M DISK 00:00:07 20-AUG-16
BP Key: 7 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134524
Piece Name: /home/zhenganding/bakrman/orclza_ctl.f
Control File Included: Ckp SCN: 2366250 Ckp time: 20-AUG-16
RMAN>
alter system set log_archive_config = 'DG_CONFIG=(orclzad,stdorclzad)' scope = both;
alter system set log_archive_dest_2 = 'service=LISTENER_STDORCLZAD LGWR ASYNC NOAFFIRM valid_for=(online_logfiles,primary_role) db_unique_name=stdorclzad' scope = both;
alter system set local_listener =LISTENER_ORCLZAD scope = both;
alter system set log_archive_dest_state_2 = defer scope = both;
alter system set fal_server =LISTENER_STDORCLZAD scope = both;
alter system set fal_client =LISTENER_ORCLZAD scope = both;
alter system set standby_file_management = auto scope = both;
show parameter db_name
show parameter db_unique_name
show parameter log_archive_config
show parameter log_archive_dest_2
show parameter log_archive_dest_state_2
show parameter fal_server
show parameter fal_client
这里和网络相关的两个文件,设置如下(主备库实际上用的是同样的文件):
[zhenganding@cnsh230235 ~]$ cat $ORACLE_HOME/network/admin/listener.ora
ORCLZAD =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =10.31.9.242)(PORT = 1549))
)
)
)
SID_LIST_ORCLZAD=
(SID_LIST =
(SID_DESC =
(ORACLE_HOME =/paic/app/dbshare/oracle/zhenganding/11.2.0.4.5)
(SID_NAME = orclzad)
)
)
STDORCLZAD =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =10.31.9.242)(PORT = 1649))
)
)
)
SID_LIST_STDORCLZAD=
(SID_LIST =
(SID_DESC =
(ORACLE_HOME =/paic/app/dbshare/oracle/zhenganding/11.2.0.4.5)
(SID_NAME = stdorclzad)
)
)
[zhenganding@cnsh230235 ~]$ cat $ORACLE_HOME/network/admin/tnsnames.ora
LISTENER_ORCLZAD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.31.9.242)(PORT = 1549))
)
(CONNECT_DATA =
(SERVICE_NAME = orclzad)
)
)
LISTENER_STDORCLZAD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.31.9.242)(PORT = 1649))
)
(CONNECT_DATA =
(SERVICE_NAME = stdorclzad)
)
)
在备库上,打开网络监听:
lsnrctl status stdorclzad
备库上测试能否连通备库:
tnsping LISTENER_ORCLZAD
主库上测试
tnsping LISTENER_STDORCLZAD
主库上生产pfile(将其拷贝到备库上,由于是一台机器,免拷贝):
create pfile='/home/zhenganding/bakrman/initorclzad.ora' from spfile;
编辑生成的文件,修改如下参数:
db_unique_name=stdorclzad
service_names=orclzad
standby_file_management = auto
log_archive_dest_2 = g6y LGWR ASYNC NOAFFIRM valid_for=(online_logfiles,primary_role) db_unique_name=orclzad'
log_archive_dest_state_2=enable
control_files= '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/control01.ctl', '/paic/app/dbshare/oracle/zhenganding/fast_recovery_area/stdorclzad/control02.ctl'
fal_server=LISTENER_ORCLZAD
fal_client=LISTENER_STDORCLZAD
local_listener=LISTENER_STDORCLZAD
SPFILE='/paic/app/dbshare/oracle/zhenganding/11.2.0.4.5/dbs/spfilestdorclzad.ora'
db_file_name_convert='/paic/app/dbshare/oracle/zhenganding/oradata/orclzad','/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad', '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad', '/paic/app/dbshare/oracle/zhenganding/oradata/orclzad'
log_file_name_convert='/paic/app/dbshare/oracle/zhenganding/oradata/orclzad','/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad','/oradata/stdorclzad/dbshare/oracle/zhenganding/oradata/stdorclzad','/paic/app/dbshare/oracle/zhenganding/oradata/orclzad'
这里,一定要记得加db_file_name_convert和log_file_name_convert参数,这样备库的控制文件,再配合这两个参数,就可以对从库的数转据文件和日志文件的路径进行转换。
备库上,拷密码文件
cp $ORACLE_HOME/dbs/orapworclzad $ORACLE_HOME/dbs/orapwstdorclzad
备库:
sqlplus / as sysdba
create spfile='/paic/app/dbshare/oracle/zhenganding/11.2.0.4.5/dbs/spfilestdorclzad.ora' from pfile='/home/zhenganding/bakrman/initorclzad.ora';
SQL> startup nomount
ORACLE instance started.
Total System Global Area 3741458432 bytes
Fixed Size 2258720 bytes
Variable Size 1090521312 bytes
Database Buffers 2634022912 bytes
Redo Buffers 14655488 bytes
SQL> show parameter convert
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string /paic/app/dbshare/oracle/zheng
anding/oradata/orclzad, /paic/
app/dbshare/oracle/zhenganding
/oradata/stdorclzad, /paic/app
/dbshare/oracle/zhenganding/or
adata/stdorclzad, /paic/app/db
share/oracle/zhenganding/orada
ta/orclzad
log_file_name_convert string /paic/app/dbshare/oracle/zheng
anding/oradata/orclzad, /paic/
app/dbshare/oracle/zhenganding
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
/oradata/stdorclzad, /paic/app
/dbshare/oracle/zhenganding/or
adata/stdorclzad, /paic/app/db
share/oracle/zhenganding/orada
ta/orclzad
alter system set standby_archive_dest ='' scope=spfile;
alter system set log_archive_dest_1 = '' scope=spfile;
SQL> show parameter control
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time integer 7
control_files string /paic/app/dbshare/oracle/zheng
anding/oradata/stdorclzad/cont
rol01.ctl, /paic/app/dbshare/o
racle/zhenganding/fast_recover
y_area/stdorclzad/control02.ct
l
主库上,创建备库使用的控制文件
alter database create standby controlfile as '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/control01.ctl';
由于有两个控制文件,另一个则采用复制的方法
cp /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/control01.ctl /paic/app/dbshare/oracle/zhenganding/fast_recovery_area/stdorclzad/control02.ctl
备库上,使用rman恢复,这里切记修改相关的数据文件的路径:
rman target /
alter database mount;
RUN {
set new name for datafile 1 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/system01.dbf';
set new name for datafile 2 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/sysaux01.dbf';
set new name for datafile 3 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/undotbs01.dbf';
set new name for datafile 4 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/users01.dbf';
set new name for datafile 5 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/example01.dbf';
set new name for datafile 6 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/tbspce01.dbf';
set new name for datafile 7 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/trans01.dbf';
ALLOCATE CHANNEL ch00 TYPE disk;
ALLOCATE CHANNEL ch01 TYPE disk;
ALLOCATE CHANNEL ch02 TYPE disk;
ALLOCATE CHANNEL ch03 TYPE disk;
restore database;
switch datafile all;
release channel ch00;
release channel ch01;
release channel ch02;
release channel ch03;
}
以下是打印输出的日志:
RMAN> restore database;
switch datafile all;
Starting restore at 2016-08-21 21:23:41
release channel ch00; using target database control file instead of recovery catalog
release channel ch01;
release channel ch02;
release channel ch03;
}allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=35 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=46 device type=DISK
allocated channel: ORA_DISK_3
channel ORA_DISK_3: SID=56 device type=DISK
allocated channel: ORA_DISK_4
channel ORA_DISK_4: SID=68 device type=DISK
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00003 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/undotbs01.dbf
channel ORA_DISK_1: reading from backup piece /home/zhenganding/bakfulldb/back_ORCLZAD_10_1_920493383
channel ORA_DISK_2: starting datafile backup set restore
channel ORA_DISK_2: specifying datafile(s) to restore from backup set
channel ORA_DISK_2: restoring datafile 00004 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/users01.dbf
channel ORA_DISK_2: restoring datafile 00005 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/example01.dbf
channel ORA_DISK_2: reading from backup piece /home/zhenganding/bakfulldb/back_ORCLZAD_11_1_920493383
channel ORA_DISK_3: starting datafile backup set restore
channel ORA_DISK_3: specifying datafile(s) to restore from backup set
channel ORA_DISK_3: restoring datafile 00002 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/sysaux01.dbf
channel ORA_DISK_3: restoring datafile 00007 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/tbspce01.dbf
channel ORA_DISK_3: reading from backup piece /home/zhenganding/bakfulldb/back_ORCLZAD_9_1_920493383
channel ORA_DISK_4: starting datafile backup set restore
channel ORA_DISK_4: specifying datafile(s) to restore from backup set
channel ORA_DISK_4: restoring datafile 00001 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/system01.dbf
channel ORA_DISK_4: restoring datafile 00008 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/trans01.dbf
channel ORA_DISK_4: reading from backup piece /home/zhenganding/bakfulldb/back_ORCLZAD_8_1_920493383
channel ORA_DISK_1: piece handle=/home/zhenganding/bakfulldb/back_ORCLZAD_10_1_920493383 tag=TAG20160821T203622
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:15
channel ORA_DISK_2: piece handle=/home/zhenganding/bakfulldb/back_ORCLZAD_11_1_920493383 tag=TAG20160821T203622
channel ORA_DISK_2: restored backup piece 1
channel ORA_DISK_2: restore complete, elapsed time: 00:01:25
channel ORA_DISK_3: piece handle=/home/zhenganding/bakfulldb/back_ORCLZAD_9_1_920493383 tag=TAG20160821T203622
channel ORA_DISK_3: restored backup piece 1
channel ORA_DISK_3: restore complete, elapsed time: 00:01:35
channel ORA_DISK_4: piece handle=/home/zhenganding/bakfulldb/back_ORCLZAD_8_1_920493383 tag=TAG20160821T203622
channel ORA_DISK_4: restored backup piece 1
channel ORA_DISK_4: restore complete, elapsed time: 00:01:35
Finished restore at 2016-08-21 21:25:19
RMAN> exit
sqlplus '/as sysdba'
SQL> alter database convert to physical standby;
SQL> shutdown immediate
SQL> startup mount
SQL> select controlfile_type from v$database;
CONTROL
-------
STANDBY
从库上添加stanby日志
alter database add standby logfile thread 1 group 4('/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby01.log') size 50M;
alter database add standby logfile thread 1 group 5('/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby02.log') size 50M;
alter database add standby logfile thread 1 group 6('/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby03.log') size 50M;
alter database add standby logfile thread 1 group 7('/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby04.log') size 50M;
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/redo03.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/redo02.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/redo01.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby01.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby02.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby03.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby04.log
这里能够看到redo01.log联机日志,但实际上在相关的目录上是没有文件的,这点无需担心,oracle会自行生成。
cnsh230235:stdorclzad > ls /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/redo0*
ls: /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/redo0*: No such file or directory
SQL> select group#,thread#,sequence#,archived,status from v$standby_log;
GROUP# THREAD# SEQUENCE# ARC STATUS
---------- ---------- ---------- --- ----------
4 1 0 YES UNASSIGNED
5 1 0 YES UNASSIGNED
6 1 0 YES UNASSIGNED
7 1 0 YES UNASSIGNED
SQL> select protection_mode from v$database;
PROTECTION_MODE
--------------------
MAXIMUM PERFORMANCE
主库
sqlplus '/as sysdba'
SQL> alter system set log_archive_dest_state_2 = enable scope = both;
从库:
alter database recover managed standby database disconnect from session;
主库:
SQL> alter system switch logfile;
SQL> alter system switch logfile;
SQL> alter system switch logfile;
从库,执行如下语句检查在灾备环境received和archived的redo log:
SQL> select sequence#,first_time,next_time from v$archived_log order by sequence#;
SEQUENCE# FIRST_TIM NEXT_TIME
---------- --------- ---------
192 21-AUG-16 21-AUG-16
193 21-AUG-16 21-AUG-16
194 21-AUG-16 21-AUG-16
195 21-AUG-16 22-AUG-16
196 22-AUG-16 22-AUG-16
197 22-AUG-16 22-AUG-16
198 22-AUG-16 22-AUG-16
199 22-AUG-16 22-AUG-16
200 22-AUG-16 22-AUG-16
201 22-AUG-16 22-AUG-16
10 rows selected.
执行如下语句检查在灾备环境已经apply的archive redo log
SQL> select sequence#,applied from v$archived_log order by sequence#;
SEQUENCE# APPLIED
---------- ---------
192 YES
193 YES
194 YES
195 YES
196 YES
197 YES
198 YES
199 YES
200 YES
201 YES
10 rows selected.
SQL>
备库上,修改归档日志清除策略
rman target /
RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;
using target database control file instead of recovery catalog
new RMAN configuration parameters:
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;
new RMAN configuration parameters are successfully stored
RMAN> show archivelog deletion policy;
RMAN configuration parameters for database with db_unique_name STDORCLZAD are:
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;
验证同步是否正常:
备库上查询归档日志:
SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME FROM V$ARCHIVED_LOG order by sequence#;
SEQUENCE# FIRST_TIM NEXT_TIME
---------- --------- ---------
192 21-AUG-16 21-AUG-16
193 21-AUG-16 21-AUG-16
194 21-AUG-16 21-AUG-16
195 21-AUG-16 22-AUG-16
196 22-AUG-16 22-AUG-16
197 22-AUG-16 22-AUG-16
198 22-AUG-16 22-AUG-16
199 22-AUG-16 22-AUG-16
200 22-AUG-16 22-AUG-16
201 22-AUG-16 22-AUG-16
10 rows selected.
主库上,归档当前的联机日志:
SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;
System altered.
从库上收到了新的日志,多了一条SEQUENCE#为202的记录:
SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME FROM V$ARCHIVED_LOG;
SEQUENCE# FIRST_TIM NEXT_TIME
---------- --------- ---------
193 21-AUG-16 21-AUG-16
192 21-AUG-16 21-AUG-16
201 22-AUG-16 22-AUG-16
195 21-AUG-16 22-AUG-16
194 21-AUG-16 21-AUG-16
196 22-AUG-16 22-AUG-16
199 22-AUG-16 22-AUG-16
197 22-AUG-16 22-AUG-16
198 22-AUG-16 22-AUG-16
200 22-AUG-16 22-AUG-16
202 22-AUG-16 22-AUG-16
11 rows selected.
查看从库是否将归档日志应用:
SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
SEQUENCE# APPLIED
---------- ---------
192 YES
193 YES
194 YES
195 YES
196 YES
197 YES
198 YES
199 YES
200 YES
201 YES
202 YES
11 rows selected.
主库上,确认远程归档目标正确,status 状态必须为VALID
SQL> select dest_name,status,error from v$archive_dest where rownum<5;
DEST_NAME STATUS ERROR
-------------------------------------------------------------------------------- --------- --------------------------------------------------------------------------------
LOG_ARCHIVE_DEST_1 VALID
LOG_ARCHIVE_DEST_2 VALID
LOG_ARCHIVE_DEST_3 INACTIVE
LOG_ARCHIVE_DEST_4 INACTIVE
遗留的问题:
主库的convert参数还没有设置,这个在进行主从切换的时候,会出现问题。
su - zhenganding
cd $HOME
stty erase "^H"
vi .std_bash_profile
umask 022
export TERM=vt100
export NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss"
export ORACLE_DOC=$ORACLE_BASE/doc
export TMP=/tmp
PATH=$PATH:$HOME/bin
export ORACLE_BASE=/paic/app/dbshare/oracle/zhenganding
export ORACLE_HOME=$ORACLE_BASE/11.2.0.4.5
export ORACLE_SID=stdorclzad
export PATH=$ORACLE_HOME/bin:$PATH
export PATH
export PS1="`hostname`:$ORACLE_SID > "
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export ORA_ENCRYPT_LOGIN=true
export SHELL_PATH=/etc/paic/shell
执行脚本
source .std_bash_profile
ORACLE_BASE和ORACLE_HOME目录需要和主库保持一致
创建必要的目录:
cd $ORACLE_BASE
mkdir -p admin/stdorclzad
cd admin/stdorclzad
mkdir adump dpdump pfile
cd $ORACLE_BASE
mkdir diag diag/rdbms diag/tnslsnr
cd diag/rdbms
mkdir -p stdorclzad/stdorclzad
cd stdorclzad/stdorclzad
mkdir alert cdump hm incident incpkg ir lck metadata stage sweep trace
cd $ORACLE_BASE
cd diag/tnslsnr
mkdir -P cnsh230235/stdorclzad
cd cnsh230235/stdorclzad
mkdir alert cdump incident incpkg lck metadata stage sweep trace
2.主库进行设置
[zhenganding@cnsh230235 ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Sat Aug 20 13:28:09 2016
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> alter database force logging;
Database altered.
SQL> select force_logging from v$database;
FOR
---
YES
SQL> select group#,bytes/1024/1024 from v$log;
GROUP# BYTES/1024/1024
---------- ---------------
1 50
2 50
3 50
将standby logfile创建到和redo logfile一样的路径下:(如果不加路径,默认创建在FRA目录下。再想向convert参数添加转换的路径,直接提示字符超过255会报错)
alter database add standby logfile thread 1 group 4('/paic/app/dbshare/oracle/zhenganding/oradata/orclzad/standby01.log') size 50M;
alter database add standby logfile thread 1 group 5('/paic/app/dbshare/oracle/zhenganding/oradata/orclzad/standby02.log') size 50M;
alter database add standby logfile thread 1 group 6('/paic/app/dbshare/oracle/zhenganding/oradata/orclzad/standby03.log') size 50M;
alter database add standby logfile thread 1 group 7('/paic/app/dbshare/oracle/zhenganding/oradata/orclzad/standby04.log') size 50M;
SQL> select group#,thread#,sequence#,archived,status from v$standby_log;
GROUP# THREAD# SEQUENCE# ARC STATUS
---------- ---------- ---------- --- ----------
4 1 0 YES UNASSIGNED
5 1 0 YES UNASSIGNED
6 1 0 YES UNASSIGNED
7 1 0 YES UNASSIGNED
将文件备份在/home/zhenganding/bakfulldb2下:
rman
RMAN> connect target /
RMAN> show all;
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 4;
RMAN>RUN {
ALLOCATE CHANNEL ch00 TYPE disk;
ALLOCATE CHANNEL ch01 TYPE disk;
ALLOCATE CHANNEL ch02 TYPE disk;
ALLOCATE CHANNEL ch03 TYPE disk;
CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 4;
CONFIGURE BACKUP OPTIMIZATION ON;
SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';
BACKUP section size 4096m FILESPERSET 4 FORMAT='/home/zhenganding/bakfulldb2/back_%d_%s_%p_%t' DATABASE;
BACKUP CURRENT CONTROLFILE FORMAT='/home/zhenganding/bakfulldb2/orclza_ctl.f';
release channel ch00;
release channel ch01;
release channel ch02;
release channel ch03;
}
RMAN> list backup;
List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
1 Full 1.22M DISK 00:00:02 20-AUG-16
BP Key: 1 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_3_1_920382248
List of Datafiles in backup set 1
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
3 Full 2366210 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/undotbs01.dbf
6 Full 2366210 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/11.2.0.4.5/tt.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
2 Full 27.45M DISK 00:00:07 20-AUG-16
BP Key: 2 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_4_1_920382248
List of Datafiles in backup set 2
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
4 Full 2366211 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/users01.dbf
5 Full 2366211 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/example01.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
3 Full 1.05M DISK 00:00:03 20-AUG-16
BP Key: 3 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_5_1_920382252
Control File Included: Ckp SCN: 2366213 Ckp time: 20-AUG-16
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
4 Full 80.00K DISK 00:00:00 20-AUG-16
BP Key: 4 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_6_1_920382256
SPFILE Included: Modification time: 27-JUL-16
SPFILE db_unique_name: ORCLZAD
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
5 Full 114.53M DISK 00:00:36 20-AUG-16
BP Key: 5 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_2_1_920382248
List of Datafiles in backup set 5
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
2 Full 2366209 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/sysaux01.dbf
7 Full 2366209 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/tbspce01.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
6 Full 246.96M DISK 00:01:11 20-AUG-16
BP Key: 6 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134407
Piece Name: /home/zhenganding/bakrman/back_ORCLZAD_1_1_920382248
List of Datafiles in backup set 6
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
1 Full 2366208 20-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/system01.dbf
8 Full 2094439 16-AUG-16 /paic/app/dbshare/oracle/zhenganding/oradata/orclzad/trans01.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
7 Full 1.05M DISK 00:00:07 20-AUG-16
BP Key: 7 Status: AVAILABLE Compressed: YES Tag: TAG20160820T134524
Piece Name: /home/zhenganding/bakrman/orclza_ctl.f
Control File Included: Ckp SCN: 2366250 Ckp time: 20-AUG-16
RMAN>
alter system set log_archive_config = 'DG_CONFIG=(orclzad,stdorclzad)' scope = both;
alter system set log_archive_dest_2 = 'service=LISTENER_STDORCLZAD LGWR ASYNC NOAFFIRM valid_for=(online_logfiles,primary_role) db_unique_name=stdorclzad' scope = both;
alter system set local_listener =LISTENER_ORCLZAD scope = both;
alter system set log_archive_dest_state_2 = defer scope = both;
alter system set fal_server =LISTENER_STDORCLZAD scope = both;
alter system set fal_client =LISTENER_ORCLZAD scope = both;
alter system set standby_file_management = auto scope = both;
show parameter db_name
show parameter db_unique_name
show parameter log_archive_config
show parameter log_archive_dest_2
show parameter log_archive_dest_state_2
show parameter fal_server
show parameter fal_client
这里和网络相关的两个文件,设置如下(主备库实际上用的是同样的文件):
[zhenganding@cnsh230235 ~]$ cat $ORACLE_HOME/network/admin/listener.ora
ORCLZAD =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =10.31.9.242)(PORT = 1549))
)
)
)
SID_LIST_ORCLZAD=
(SID_LIST =
(SID_DESC =
(ORACLE_HOME =/paic/app/dbshare/oracle/zhenganding/11.2.0.4.5)
(SID_NAME = orclzad)
)
)
STDORCLZAD =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =10.31.9.242)(PORT = 1649))
)
)
)
SID_LIST_STDORCLZAD=
(SID_LIST =
(SID_DESC =
(ORACLE_HOME =/paic/app/dbshare/oracle/zhenganding/11.2.0.4.5)
(SID_NAME = stdorclzad)
)
)
[zhenganding@cnsh230235 ~]$ cat $ORACLE_HOME/network/admin/tnsnames.ora
LISTENER_ORCLZAD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.31.9.242)(PORT = 1549))
)
(CONNECT_DATA =
(SERVICE_NAME = orclzad)
)
)
LISTENER_STDORCLZAD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.31.9.242)(PORT = 1649))
)
(CONNECT_DATA =
(SERVICE_NAME = stdorclzad)
)
)
在备库上,打开网络监听:
lsnrctl status stdorclzad
备库上测试能否连通备库:
tnsping LISTENER_ORCLZAD
主库上测试
tnsping LISTENER_STDORCLZAD
主库上生产pfile(将其拷贝到备库上,由于是一台机器,免拷贝):
create pfile='/home/zhenganding/bakrman/initorclzad.ora' from spfile;
编辑生成的文件,修改如下参数:
db_unique_name=stdorclzad
service_names=orclzad
standby_file_management = auto
log_archive_dest_2 = g6y LGWR ASYNC NOAFFIRM valid_for=(online_logfiles,primary_role) db_unique_name=orclzad'
log_archive_dest_state_2=enable
control_files= '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/control01.ctl', '/paic/app/dbshare/oracle/zhenganding/fast_recovery_area/stdorclzad/control02.ctl'
fal_server=LISTENER_ORCLZAD
fal_client=LISTENER_STDORCLZAD
local_listener=LISTENER_STDORCLZAD
SPFILE='/paic/app/dbshare/oracle/zhenganding/11.2.0.4.5/dbs/spfilestdorclzad.ora'
db_file_name_convert='/paic/app/dbshare/oracle/zhenganding/oradata/orclzad','/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad', '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad', '/paic/app/dbshare/oracle/zhenganding/oradata/orclzad'
log_file_name_convert='/paic/app/dbshare/oracle/zhenganding/oradata/orclzad','/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad','/oradata/stdorclzad/dbshare/oracle/zhenganding/oradata/stdorclzad','/paic/app/dbshare/oracle/zhenganding/oradata/orclzad'
这里,一定要记得加db_file_name_convert和log_file_name_convert参数,这样备库的控制文件,再配合这两个参数,就可以对从库的数转据文件和日志文件的路径进行转换。
备库上,拷密码文件
cp $ORACLE_HOME/dbs/orapworclzad $ORACLE_HOME/dbs/orapwstdorclzad
备库:
sqlplus / as sysdba
create spfile='/paic/app/dbshare/oracle/zhenganding/11.2.0.4.5/dbs/spfilestdorclzad.ora' from pfile='/home/zhenganding/bakrman/initorclzad.ora';
SQL> startup nomount
ORACLE instance started.
Total System Global Area 3741458432 bytes
Fixed Size 2258720 bytes
Variable Size 1090521312 bytes
Database Buffers 2634022912 bytes
Redo Buffers 14655488 bytes
SQL> show parameter convert
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string /paic/app/dbshare/oracle/zheng
anding/oradata/orclzad, /paic/
app/dbshare/oracle/zhenganding
/oradata/stdorclzad, /paic/app
/dbshare/oracle/zhenganding/or
adata/stdorclzad, /paic/app/db
share/oracle/zhenganding/orada
ta/orclzad
log_file_name_convert string /paic/app/dbshare/oracle/zheng
anding/oradata/orclzad, /paic/
app/dbshare/oracle/zhenganding
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
/oradata/stdorclzad, /paic/app
/dbshare/oracle/zhenganding/or
adata/stdorclzad, /paic/app/db
share/oracle/zhenganding/orada
ta/orclzad
alter system set standby_archive_dest ='' scope=spfile;
alter system set log_archive_dest_1 = '' scope=spfile;
SQL> show parameter control
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time integer 7
control_files string /paic/app/dbshare/oracle/zheng
anding/oradata/stdorclzad/cont
rol01.ctl, /paic/app/dbshare/o
racle/zhenganding/fast_recover
y_area/stdorclzad/control02.ct
l
主库上,创建备库使用的控制文件
alter database create standby controlfile as '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/control01.ctl';
由于有两个控制文件,另一个则采用复制的方法
cp /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/control01.ctl /paic/app/dbshare/oracle/zhenganding/fast_recovery_area/stdorclzad/control02.ctl
备库上,使用rman恢复,这里切记修改相关的数据文件的路径:
rman target /
alter database mount;
RUN {
set new name for datafile 1 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/system01.dbf';
set new name for datafile 2 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/sysaux01.dbf';
set new name for datafile 3 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/undotbs01.dbf';
set new name for datafile 4 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/users01.dbf';
set new name for datafile 5 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/example01.dbf';
set new name for datafile 6 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/tbspce01.dbf';
set new name for datafile 7 to '/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/trans01.dbf';
ALLOCATE CHANNEL ch00 TYPE disk;
ALLOCATE CHANNEL ch01 TYPE disk;
ALLOCATE CHANNEL ch02 TYPE disk;
ALLOCATE CHANNEL ch03 TYPE disk;
restore database;
switch datafile all;
release channel ch00;
release channel ch01;
release channel ch02;
release channel ch03;
}
以下是打印输出的日志:
RMAN> restore database;
switch datafile all;
Starting restore at 2016-08-21 21:23:41
release channel ch00; using target database control file instead of recovery catalog
release channel ch01;
release channel ch02;
release channel ch03;
}allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=35 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=46 device type=DISK
allocated channel: ORA_DISK_3
channel ORA_DISK_3: SID=56 device type=DISK
allocated channel: ORA_DISK_4
channel ORA_DISK_4: SID=68 device type=DISK
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00003 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/undotbs01.dbf
channel ORA_DISK_1: reading from backup piece /home/zhenganding/bakfulldb/back_ORCLZAD_10_1_920493383
channel ORA_DISK_2: starting datafile backup set restore
channel ORA_DISK_2: specifying datafile(s) to restore from backup set
channel ORA_DISK_2: restoring datafile 00004 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/users01.dbf
channel ORA_DISK_2: restoring datafile 00005 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/example01.dbf
channel ORA_DISK_2: reading from backup piece /home/zhenganding/bakfulldb/back_ORCLZAD_11_1_920493383
channel ORA_DISK_3: starting datafile backup set restore
channel ORA_DISK_3: specifying datafile(s) to restore from backup set
channel ORA_DISK_3: restoring datafile 00002 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/sysaux01.dbf
channel ORA_DISK_3: restoring datafile 00007 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/tbspce01.dbf
channel ORA_DISK_3: reading from backup piece /home/zhenganding/bakfulldb/back_ORCLZAD_9_1_920493383
channel ORA_DISK_4: starting datafile backup set restore
channel ORA_DISK_4: specifying datafile(s) to restore from backup set
channel ORA_DISK_4: restoring datafile 00001 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/system01.dbf
channel ORA_DISK_4: restoring datafile 00008 to /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/trans01.dbf
channel ORA_DISK_4: reading from backup piece /home/zhenganding/bakfulldb/back_ORCLZAD_8_1_920493383
channel ORA_DISK_1: piece handle=/home/zhenganding/bakfulldb/back_ORCLZAD_10_1_920493383 tag=TAG20160821T203622
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:15
channel ORA_DISK_2: piece handle=/home/zhenganding/bakfulldb/back_ORCLZAD_11_1_920493383 tag=TAG20160821T203622
channel ORA_DISK_2: restored backup piece 1
channel ORA_DISK_2: restore complete, elapsed time: 00:01:25
channel ORA_DISK_3: piece handle=/home/zhenganding/bakfulldb/back_ORCLZAD_9_1_920493383 tag=TAG20160821T203622
channel ORA_DISK_3: restored backup piece 1
channel ORA_DISK_3: restore complete, elapsed time: 00:01:35
channel ORA_DISK_4: piece handle=/home/zhenganding/bakfulldb/back_ORCLZAD_8_1_920493383 tag=TAG20160821T203622
channel ORA_DISK_4: restored backup piece 1
channel ORA_DISK_4: restore complete, elapsed time: 00:01:35
Finished restore at 2016-08-21 21:25:19
RMAN> exit
sqlplus '/as sysdba'
SQL> alter database convert to physical standby;
SQL> shutdown immediate
SQL> startup mount
SQL> select controlfile_type from v$database;
CONTROL
-------
STANDBY
从库上添加stanby日志
alter database add standby logfile thread 1 group 4('/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby01.log') size 50M;
alter database add standby logfile thread 1 group 5('/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby02.log') size 50M;
alter database add standby logfile thread 1 group 6('/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby03.log') size 50M;
alter database add standby logfile thread 1 group 7('/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby04.log') size 50M;
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/redo03.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/redo02.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/redo01.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby01.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby02.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby03.log
/paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/standby04.log
这里能够看到redo01.log联机日志,但实际上在相关的目录上是没有文件的,这点无需担心,oracle会自行生成。
cnsh230235:stdorclzad > ls /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/redo0*
ls: /paic/app/dbshare/oracle/zhenganding/oradata/stdorclzad/redo0*: No such file or directory
SQL> select group#,thread#,sequence#,archived,status from v$standby_log;
GROUP# THREAD# SEQUENCE# ARC STATUS
---------- ---------- ---------- --- ----------
4 1 0 YES UNASSIGNED
5 1 0 YES UNASSIGNED
6 1 0 YES UNASSIGNED
7 1 0 YES UNASSIGNED
SQL> select protection_mode from v$database;
PROTECTION_MODE
--------------------
MAXIMUM PERFORMANCE
主库
sqlplus '/as sysdba'
SQL> alter system set log_archive_dest_state_2 = enable scope = both;
从库:
alter database recover managed standby database disconnect from session;
主库:
SQL> alter system switch logfile;
SQL> alter system switch logfile;
SQL> alter system switch logfile;
从库,执行如下语句检查在灾备环境received和archived的redo log:
SQL> select sequence#,first_time,next_time from v$archived_log order by sequence#;
SEQUENCE# FIRST_TIM NEXT_TIME
---------- --------- ---------
192 21-AUG-16 21-AUG-16
193 21-AUG-16 21-AUG-16
194 21-AUG-16 21-AUG-16
195 21-AUG-16 22-AUG-16
196 22-AUG-16 22-AUG-16
197 22-AUG-16 22-AUG-16
198 22-AUG-16 22-AUG-16
199 22-AUG-16 22-AUG-16
200 22-AUG-16 22-AUG-16
201 22-AUG-16 22-AUG-16
10 rows selected.
执行如下语句检查在灾备环境已经apply的archive redo log
SQL> select sequence#,applied from v$archived_log order by sequence#;
SEQUENCE# APPLIED
---------- ---------
192 YES
193 YES
194 YES
195 YES
196 YES
197 YES
198 YES
199 YES
200 YES
201 YES
10 rows selected.
SQL>
备库上,修改归档日志清除策略
rman target /
RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;
using target database control file instead of recovery catalog
new RMAN configuration parameters:
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;
new RMAN configuration parameters are successfully stored
RMAN> show archivelog deletion policy;
RMAN configuration parameters for database with db_unique_name STDORCLZAD are:
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;
验证同步是否正常:
备库上查询归档日志:
SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME FROM V$ARCHIVED_LOG order by sequence#;
SEQUENCE# FIRST_TIM NEXT_TIME
---------- --------- ---------
192 21-AUG-16 21-AUG-16
193 21-AUG-16 21-AUG-16
194 21-AUG-16 21-AUG-16
195 21-AUG-16 22-AUG-16
196 22-AUG-16 22-AUG-16
197 22-AUG-16 22-AUG-16
198 22-AUG-16 22-AUG-16
199 22-AUG-16 22-AUG-16
200 22-AUG-16 22-AUG-16
201 22-AUG-16 22-AUG-16
10 rows selected.
主库上,归档当前的联机日志:
SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;
System altered.
从库上收到了新的日志,多了一条SEQUENCE#为202的记录:
SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME FROM V$ARCHIVED_LOG;
SEQUENCE# FIRST_TIM NEXT_TIME
---------- --------- ---------
193 21-AUG-16 21-AUG-16
192 21-AUG-16 21-AUG-16
201 22-AUG-16 22-AUG-16
195 21-AUG-16 22-AUG-16
194 21-AUG-16 21-AUG-16
196 22-AUG-16 22-AUG-16
199 22-AUG-16 22-AUG-16
197 22-AUG-16 22-AUG-16
198 22-AUG-16 22-AUG-16
200 22-AUG-16 22-AUG-16
202 22-AUG-16 22-AUG-16
11 rows selected.
查看从库是否将归档日志应用:
SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
SEQUENCE# APPLIED
---------- ---------
192 YES
193 YES
194 YES
195 YES
196 YES
197 YES
198 YES
199 YES
200 YES
201 YES
202 YES
11 rows selected.
主库上,确认远程归档目标正确,status 状态必须为VALID
SQL> select dest_name,status,error from v$archive_dest where rownum<5;
DEST_NAME STATUS ERROR
-------------------------------------------------------------------------------- --------- --------------------------------------------------------------------------------
LOG_ARCHIVE_DEST_1 VALID
LOG_ARCHIVE_DEST_2 VALID
LOG_ARCHIVE_DEST_3 INACTIVE
LOG_ARCHIVE_DEST_4 INACTIVE
遗留的问题:
主库的convert参数还没有设置,这个在进行主从切换的时候,会出现问题。
0 0
- 一台电脑搭建
- 如何搭建一台电脑
- 一台电脑上datagurad搭建过程
- 一台电脑可开多个飞信
- 一台电脑配置多台tomcat
- 俺也想新组装一台电脑!
- 一台电脑开多个TOMCAT
- 一台电脑开多个Tomcat
- 搭建一台文件服务器
- 虚拟机从一台电脑 拷贝到另一台电脑
- 搭建只有两台电脑的局域网
- Geth多台电脑搭建集群网络
- 一台电脑上模拟多种操作系统
- 一台电脑安装多个操作系统
- VMware实现一台电脑中的网络
- 世界上只需要一台电脑?
- 周末攒了一台电脑
- 一台电脑上起多个tomcat修改说明
- Android主题设置为@android:style/Theme.Dialog报错解决办法
- Js中的原型继承和原型链
- Android 启动第三方应用
- android面试题汇总
- linux环境下安装idk
- 一台电脑搭建
- 4-2 顺序表操作集
- 从IT技术面试官的角度说说技术人的简历
- swift中switch的用法
- websocket html5 测试代码
- C语言代码
- 函数之传入参数,传出参数
- Android中ListView的几种常见的优化方法
- web页面