Oracale 9i data guard 安裝配置實施方案
一. 安裝data guard 的條件
n2003 server ora9i(9.2.0.1.0) 192.168.3.135 主機名:data580 SID:PRIMARY 從庫:win2003 server 1、 在主庫和從庫的所有機器上必須安裝同一個版本的Oracle企業版。
2、 主庫必須運行在歸檔模式下。
3、 主庫和從庫的操作系統必須一樣(允許版本不同),從庫可以使用與主庫不同的目錄結構。
4、 主從庫硬件系統的體系結構必須相同。比如:主庫運行在64位的Sun Sparc系統上,如果從庫是32位的Linux Intel系統就不允許。主從庫硬件的配置可以不同,比如:CPU數量、內存大小、存儲配置等。
5、 主從庫可以是單實例的數據庫,也可以是多實例的RAC數據庫。
6、 每個主從庫必須有它自己的控制文件。
7、 如果把主從庫放在了一個系統里,則必須調整初始化參數。
8、 只要使用Data Guard就要保持主庫是FORCE LOGGING模式,如果在主庫上使用了no logging操作不生成日志,因此數據也不會傳遞到從庫。
9、 管理主從庫的用戶必須具有SYSDBA權限。 主庫:win2000 server ora9i(9.2.0.1.0) 192.168.0.111 主機名:data580 SID:PRIMARY 從庫:win2000 server ora9i(9.2.0.1.0) 192.168.0. 99 主機名:data380 SID:STANDBY
二. 安裝和配置的具體步驟
1、 主庫和從庫的Oracle 安裝的時候都選擇相同的安裝路徑 E:oracleora92 ;并且先不要安裝數據庫,即在安裝過程中“數據庫配置”一項下面選擇“只安裝軟件”;
2、 在主庫上使用DBCA(Database Configuration Assistant)建一個數據庫,SID設為PRIMARY;
3、 設置主庫歸檔路徑為e:oracleora92databaseArchive : Sql>alter system set log_archive_dest_1='LOCATION=e:oracleora92databaseArchive MANDATORY' scope=both;
4、 將主庫實例、數據庫關閉,然后啟動實例,但不打開數據庫,只啟動到數據庫掛載模式: Sql>shutdown immediate; Sql>startup mount;
5、 將主庫設置成歸檔狀態和自動歸檔模式: Sql>alter database archivelog; Sql>alter system set log_archive_start=true scope=spfile;
6、 在主庫上面創建從庫的控制文件standby.ctl : Sql>alter database create standby controlfile as 'e:oracleoradatastandby.ctl';
7、 在主庫上面分別創建主庫和從庫的初始化參數文件standby.ora(將其拷貝回從庫后轉換成從庫的 spfile):sql>create pfile’=e:oracleoradataprimary.ora from spfile Sql>create pfile='e:oracleoradatastandby.ora' from spfile;
8、 查看主庫的數據文件及其的位置: Sql>select name from v$datafile; 記下查詢結果中的數據文件的位置。
9、 關閉實例: Sql>shutdown immediate;
10、 將第6步中的standby.ctl、第7步中的standby.ora和第8步驟中的數據文件、還有E:oracleoradataPRIMARY路徑下面的聯機日志文件(REDO.LOG)、E:oracleora92database里面的口令文件PWDPRIMARY.ora備份出來,拷貝到從庫中;在從庫中創建路徑E:oracleoradataPRIMARY ,存放standby.ctl、數據文件、聯機日志文件;創建路徑E:oracleadminPRIMARY ,在里面創建空文件夾bdump、cdump、udump、create、pfile ;將standby.ora 放到E盤根目錄下面;將口令文件PWDPRIMARY.ora更名為PWDSTANDBY.ora ,放到從庫的E:oracleora92database下面。
11、 回到主庫,啟動主庫實例和數據庫: Sql>startup
12、 轉回到從庫,手動創建服務OracleServiceSTANDBY: oradim -new -sid STANDBY -startmode manual 設置環境變量:在環境變量的“Administrator的用戶變量”一欄里面新建一個值,變量名為ORACLE_SID ,變量值為STANDBY(服務名)。
13、 創建從庫監聽器OracleOraHome92TNSListener:進入Net Configuration Assistant ,使用“監聽程序配置”來創建從庫的監聽器,同時會在E:oracleora92networkadmin下面生成listener.ora文件;
14、 配置本地NET服務名:進入Net Configuration Assistant ,使用“本地NET服務名配置”來配置,同時會在E:oracleora92networkadmin下面生成tnsnames.ora文件;
15、 配置主從庫的tnsnames.ora ,都將里面的內容設置成如下內容: STANDBY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.136)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PRIMARY) ) )
16、 PRIMARY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.135)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PRIMARY) ) )
17、 修改主庫E:oracleoradata 下面的primary.ora 初始化參數文件,主要增加以下幾項 standby_file_management=AUTO *.remote_archive_enable=TRUE *.lock_name_space='standby' *.fal_server='standby' *.fal_client='primary' *.standby_archive_dest='e:oracleora92databaseArchive'
18、 進入sqlplus將primary.ora創建成主庫的spfile : Sql>create spfile from pfile='e:oracleoradataprimary.ora
19、 修改E根目錄下面的初始化參數文件standby.ora ,里面的全部內容如下(刪除了原來的control_files參數,將instance_name改成了STANDBY,最后面的7行粗體部分是新添加的內容): *.aq_tm_processes=1 *.background_dump_dest='e:oracleadminPRIMARYbdump' *.compatible='9.2.0.0.0' *.core_dump_dest='e:oracleadminPRIMARYcdump' *.db_block_size=8192 *.db_cache_size=728760320 *.db_domain='' *.db_file_multiblock_read_count=16 *.db_name='PRIMARY' *.dispatchers='(PROTOCOL=TCP) (SERVICE=PRIMARYXDB)','(PROTOCOL=TCP)' *.fast_start_mttr_target=300 *.hash_join_enabled=TRUE *.instance_name='STANDBY' *.java_pool_size=20971520 *.job_queue_processes=10 *.large_pool_size=143654912 *.log_archive_dest_1='LOCATION=e:oracleora92databaseArchive MANDATORY' *.log_archive_start=TRUE *.open_cursors=300 |
|