首页 > 数据库 > Oracle > oracle 11g dataguard 搭建
1开归档
[root@db1 ~]# mkdir -p /home/oracle/arch
[root@db1 ~]# chown -R oracle.dba /home/oracle/arch
[root@db1 ~]# chmod -R 755 /home/oracle/arch
同时也在备库上面创建相应的目录存放归档
root@DB ~]# mkdir -p /home/oracle/arch
[root@DB ~]# chown -R oracle.dba /home/oracle/arc
chown: cannot access `/home/oracle/arc': No such file or directory
[root@DB ~]# chown -R oracle.dba /home/oracle/arch
[root@DB ~]# chmod -R 755 /home/oracle/arch
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance started.
Total System Global Area 1.3429E+10 bytes
Fixed Size 2217992 bytes
Variable Size 7180650488 bytes
Database Buffers 6174015488 bytes
Redo Buffers 71770112 bytes
Database mounted.
SQL> alter database force logging;
SQL> alter database archivelog;
Database altered.
SQL> alter database open;
alter system set log_archive_dest_1='location=/home/oracle/arch' scope=spfile;
SQL> alter system set log_archive_dest_2='location=sddb' scope=spfile;
alter system set log_archive_format='arch_%T_%s_%r.log' scope=spfile;
SQL> alter database add standby logfile group 5
2 '/home/oracle/oracledb/oradata/epaydb/redo05.log' size 50m;
Database altered.
SQL> alter database add standby logfile group 6
2 '/home/oracle/oracledb/oradata/epaydb/redo06.log' size 50m;
Database altered.
SQL> alter database add standby logfile group 7
2 '/home/oracle/oracledb/oradata/epaydb/redo07.log' size 50m;
oracle@db1 dbs]$ cp spfileepaydb.ora spfileepaydb.ora.bak
[oracle@db1 dbs]$ ls
hc_epaydb.dat lkEPAYDB spfileepaydb.ora
init.ora orapwepaydb spfileepaydb.ora.bak
[oracle@db1 dbs]$
SQL> create pfile from spfile;
DB_UNIQUE_NAME=pddb
LOG_ARCHIVE_CONFIG='DG_CONFIG=(pddb,sddb)'
LOG_ARCHIVE_DEST_1=
'LOCATION=/home/oracle/arch
VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
DB_UNIQUE_NAME=pddb'
LOG_ARCHIVE_DEST_2=
'SERVICE=sddb ASYNC
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=sddb'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
LOG_ARCHIVE_MAX_PROCESSES=3
FAL_SERVER=sddb
STANDBY_FILE_MANAGEMENT=AUTO
SQL> startup nomount pfile=$ORACLE_HOME/dbs/initepaydb.ora;
SQL> startup force mount;
ORACLE instance started.
Total System Global Area 1.3429E+10 bytes
Fixed Size 2217992 bytes
Variable Size 7180650488 bytes
Database Buffers 6174015488 bytes
Redo Buffers 71770112 bytes
Database mounted.
SQL> alter database create standby controlfile as '/home/oracle/standby.ctl';
[oracle@db1 epaydb]$ scp * 10.11.13.1:/home/oracle/oracledb/oradata/epaydb/
The authenticity of host '10.11.13.1 (10.11.13.1)' can't be established.
RSA key fingerprint is d9:86:46:ad:97:0f:af:f9:35:bf:c0:bb:54:3f:59:08.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.11.13.1' (RSA) to the list of known hosts.
oracle@10.11.13.1's password:
control01.ctl 100% 9520KB 9.3MB/s 00:00
epaydb.dbf 100% 5120MB 19.9MB/s 04:17
redo01.log 100% 50MB 16.7MB/s 00:03
redo02.log 100% 50MB 25.0MB/s 00:02
redo03.log 100% 50MB 16.7MB/s 00:03
redo04.log 100% 50MB 25.0MB/s 00:02
redo05.log 100% 50MB 16.7MB/s 00:03
redo06.log 100% 50MB 25.0MB/s 00:02
redo07.log 100% 50MB 16.7MB/s 00:03
sysaux01.dbf 100% 490MB 20.4MB/s 00:24
system01.dbf 100% 670MB 20.3MB/s 00:33
temp01.dbf 100% 29MB 29.0MB/s 00:01
undotbs01.dbf 100% 75MB 18.8MB/s 00:04
users01.dbf 100% 5128KB 5.0MB/s 00:00
[oracle@db1 epaydb]$
/home/oracle/oracledb/product/11/dbs
[oracle@db1 dbs]$ scp orapwepaydb 10.11.13.1:/home/oracle/oracledb/product/11/dbs/
oracle@10.11.13.1's password:
orapwepaydb 100% 1536 1.5KB/s 00:00
[oracle@db1 dbs]$
oracle@DB dbs]$ cat initepaydb.ora
epaydb.__db_cache_size=6174015488
epaydb.__java_pool_size=67108864
epaydb.__large_pool_size=67108864
epaydb.__oracle_base='/home/oracle/oracledb'#ORACLE_BASE set from environment
epaydb.__pga_aggregate_target=5435817984
epaydb.__sga_target=8053063680
epaydb.__shared_io_pool_size=0
epaydb.__shared_pool_size=1610612736
epaydb.__streams_pool_size=0
*.audit_file_dest='/home/oracle/oracledb/admin/epaydb/adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='/home/oracle/oracledb/standby.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='epaydb'
*.db_recovery_file_dest='/home/oracle/oracledb/flash_recovery_area'
*.db_recovery_file_dest_size=4070572032
*.diagnostic_dest='/home/oracle/oracledb'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=epaydbXDB)'
*.log_archive_dest_1='location=/home/oracle/arch'
*.log_archive_dest_2='location=sddb'
*.log_archive_format='arch_%T_%s_%r.log'
*.memory_target=13444841472
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'
DB_UNIQUE_NAME=sddb
LOG_ARCHIVE_CONFIG='DG_CONFIG=(sddb,pddb)'
LOG_ARCHIVE_DEST_1=
'LOCATION=/home/oracle/arch
VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
DB_UNIQUE_NAME=sddb'
LOG_ARCHIVE_DEST_2=
'SERVICE=pddb ASYNC
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=pddb'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
LOG_ARCHIVE_MAX_PROCESSES=3
FAL_SERVER=pddb
STANDBY_FILE_MANAGEMENT=AUTO
root@DB ~]# mkdir -p /home/oracle/oracledb/admin/epaydb/adump
[root@DB ~]# chown oracle.dba /home/oracle/oracledb/admin/epaydb/adump
[root@DB ~]# chown -R oracle.dba /home/oracle/oracledb/admin/epaydb/adump
[root@DB ~]# chmod -R 755 /home/oracle/oracledb/admin/epaydb/adump
[root@DB ~]# mkdir -p /home/oracle/oracledb/flash_recovery_area
[root@DB ~]# chown -R oracle.dba /home/oracle/oracledb/flash_recovery_area
[root@DB ~]# chown -R 755 /home/oracle/oracledb/flash_recovery_area
[oracle@DB admin]$ vi listener.ora
[oracle@db1 admin]$ cat listener.ora
LISTENER=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=10.10.13.1)(PORT=1521))
(ADDRESS=(PROTOCOL=ipc)(KEY=extproc))
)
)
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(SID_NAME=pddb)
(ORACLE_HOME=/home/oracle/oracledb/product/11)
(PROGRAM=extproc)
)
)
[oracle@db1 admin]$ cat tnsnames.ora
pddb=
(DESCRIPTION=
(ADDRESS= (PROTOCOL=tcp)(HOST=10.10.13.1)(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=pddb)
(SERVER=dedicated)
)
)
sddb=
(DESCRIPTION=
(ADDRESS= (PROTOCOL=tcp)(HOST=10.11.13.1)(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=sddb)
(SERVER=dedicated)
)
)
SQL> startup nomount;
ORACLE instance started.
SQL> alter database recover managed standby database disconnect from session;
Database altered.
recover managed standby database cancel;
recover automatic standby database ;
RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
SELECT MESSAGE FROM V$DATAGUARD_STATUS;
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;
alter system set standby_file_management=auto;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29898569/viewspace-1724494/ ,如需转载,请注明出处,否则将追究法律责任。