?
???
SQL> archive log list;
??? 數據庫日志模式?????存檔模式
??? 自動存檔?????????? 啟用
??? 存檔終點?????????? E:\ora10g\oradata\jssweb
??? 最早的聯機日志序列? 148
??? 下一個存檔日志序列? 150
??? 當前日志序列?????? 150
2、將primary 數據庫置為FORCE LOGGING 模式
???
SQL> alter database force logging;
??? 數據庫已更改。
???
SQL> alter database create standby controlfile as 'd:\backup\jsspdg01.ctl';
??? 數據庫已更改。
???
SQL> create pfile from spfile;
??? 文件已創建。
??? SQL> host copy e:\ora10g\product\10.2.0\db_1\database\initjssweb.ora d:\backup\initjsspdg.ora
??? 已復制1 個文件。
??? 修改客戶端初始化參數文件,增加下列內容:
??? DB_UNIQUE_NAME=jssweb
??? LOG_ARCHIVE_CONFIG='DG_CONFIG=(jssweb,jsspdg)'
??? LOG_ARCHIVE_DEST_1='LOCATION=E:\ora10g\oradata\jssweb\
??? VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=jssweb'
??? LOG_ARCHIVE_DEST_2='SERVICE=jsspdg LGWR ASYNC
??? VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=jsspdg'
??? LOG_ARCHIVE_DEST_STATE_1=ENABLE
??? LOG_ARCHIVE_DEST_STATE_2=ENABLE
??? REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
??? #--------配置standby 角色的參數用于角色轉換
??? FAL_SERVER=jsspdg
??? FAL_CLIENT=jssweb
??? DB_FILE_NAME_CONVERT='oradata\jsspdg','oradata\jssweb'
??? LOG_FILE_NAME_CONVERT='oradata\jsspdg','oradata\jssweb'
??? STANDBY_FILE_MANAGEMENT=AUTO
??? SQL> shutdown immediate
??? ... ...
??? SQL> create spfile from pfile='initjssweb.ora';
??? 文件已創建。
??? 注意需要復制所有數據文件,備份的控制文件及客戶端初始化參數文件
??? E:\ora10g>lsnrctl stop
??? E:\ora10g>lsnrctl start
??? E:\ora10g>tnsping jssweb
??? ... ...
??? Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = jss)(PORT = 1521))
??? (CONNECT_
??? DATA = (SERVER = DEDICATED) (SERVICE_NAME = jssweb)))
??? OK (30 毫秒)
??? E:\ora10g>tnsping jsspdg
??? ... ...
??? Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = jss)(PORT = 1521))
??? (CONNECT_
??? DATA = (SERVER = DEDICATED) (SERVICE_NAME = jsspdg)))
??? OK (10 毫秒)
1、通過ORADIM 創建新的OracleService
2、創建密碼文件,注意保持sys 密碼與primary 數據庫一致。
???
E:\ora10g>orapwd file=e:\ora10g\product\10.2.0\db_1\database\PWDjsspdg.ora password=verysafe entries=30
3、創建目錄
???
E:\ora10g\product\10.2.0\admin\jsspdg>mkdir adump
4、復制文件,不做過多描述
5、修改初始化參數文件
??? 增加下列參數:
???
db_unique_name=jsspdg
??? LOG_ARCHIVE_CONFIG='DG_CONFIG=(jssweb,jsspdg)'
??? DB_FILE_NAME_CONVERT='oradata\jssweb','oradata\jsspdg'
??? LOG_FILE_NAME_CONVERT='oradata\jssweb','oradata\jsspdg'
??? LOG_ARCHIVE_FORMAT=log%t_%s_%r.arc
??? LOG_ARCHIVE_DEST_1='LOCATION=E:\ora10g\oradata\jsspdg\
??? VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=jsspdg'
??? LOG_ARCHIVE_DEST_STATE_1=ENABLE
??? #---下列參數用于角色切換
??? LOG_ARCHIVE_DEST_2='SERVICE=jssweb LGWR ASYNC
??? VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=jssweb'
??? LOG_ARCHIVE_DEST_STATE_2=ENABLE
??? REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
??? FAL_SERVER=jssweb
??? FAL_CLIENT=jsspdg
??? STANDBY_FILE_MANAGEMENT=AUTO
???
SQL> create spfile from pfile='D:\backup\initjsspdg.ora';
??? 文件已創建。
???
SQL> startup mount;
??? ORACLE 例程已經啟動。
??? Total System Global Area 167772160 bytes
??? Fixed Size 1289484 bytes
??? Variable Size 62915316 bytes
??? Database Buffers 96468992 bytes
??? Redo Buffers 7098368 bytes
??? 數據庫裝載完畢。
???
SQL> alter database recover managed standby database disconnect from session;
??? 數據庫已更改。
???
SQL> show parameter instance_name;
???
NAME????????????????? TYPE??????? VALUE
???
--------------------- ----------- ------------------------------
???
instance_name???????? string????? jssweb
?
???
SQL> alter system switch logfile;
???
系統已更改。
?
???
SQL> select max(sequence#) from v$archived_log;
???
MAX(SEQUENCE#)
???
--------------
???
51
???
SQL> show parameter instance_name;
???
NAME????????????????? TYPE??????? VALUE
???
--------------------- ----------- ------------------------------
???
instance_name???????? string????? jsspdg
?
???
SQL> select max(sequence#) from v$archived_log;
???
MAX(SEQUENCE#)
???
--------------
???
51
??? 通過下列語句暫停redo 應用。
??? SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
??? 數據庫已更改。
??? 哈哈,成功鳥!現在你是不是想知道怎么把standby 變成primary 呢?接著往下看~~~~~~~~~