5.關閉主庫資料庫,備份資料檔案到從庫
確定需要copy過去的資料檔案以及redo log
sqlplus /nolog
SQL> conn / as sysdba;
SQL> select file_name from dba_data_files;
確定所要copy資料檔案
SQL> select member from v$logfile;
確定所要copy聯機日至檔案
SQL> shutdown immediate;
copy 上面選出的所有檔案到從庫上相應的目錄.
6.開啟主庫資料庫,修改為歸檔方式(oracle9i使用者操作)
手工建立歸檔目錄C:\Oracle\Arch
sqlplus /nolog
SQL> conn / as sysdba;
Connected.
SQL> startup mount;
SQL> alter database archivelog;
SQL> archive log start;
SQL> archive log list;
SQL> alter database open;
SQL> alter system set LOG_ARCHIVE_DEST_1='LOCATION=C:\Oracle\Arch';
SQL> alter system set log_archive_format='%t_%s.dbf' scope=spfile;
SQL> alter system set log_archive_start=true scope=spfile;
重新啟動資料庫,使修改結果生效
SQL> shutdown immediate;
察看歸檔模式
SQL> startup
SQL> archive log list;
7.在主庫上製作從庫control file
sqlplus /nolog
SQL> conn / as sysdba;
SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS 'C:\Oracle\control01.ctl';
copy主庫C:\oracle\control01.ctl 到從庫 C:\oracle\oradata\poramals\目錄下
15.copy 主庫的C:\oracle\ora92\database\pwdpormals.ora到從庫相應目錄
16.建立從庫執行個體名 dos>oradim -new -sid pormals
17.啟動從庫
sqlplus /nolog
SQL> startup nomount;
SQL> ALTER DATABASE MOUNT STANDBY DATABASE;
將從庫置為standby模式
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
18.在主庫上設定到從庫的歸檔
SQL> alter system set log_archive_dest_2='SERVICE=standby MANDATORY REOPEN=60';
SQL> select *from v$log;
切換當前聯機日誌
SQL> alter system switch logfile;
SQL> select *from v$log;
察看從庫後台日誌
C:\oracle\admin\pormals\bdump\pormals_arler.
看當前歸檔日誌是否已經正常完成恢複
至此data guard配置完成。
19.測試一下
在主庫上
SQL> create user test identified by 密碼;
SQL> grant connect ,resource to test ;
SQL> conn test/密碼@primary;
SQL> create table test(name varchar2(20));
SQL> insert into test values('hi,data guard');
SQL> commit;
SQL> conn / as sysdba
SQL> alter system switch logfile;