總算回來了。今天講述資料庫快速複制第二章。
一:首先準備一台伺服器A,裡面安裝了callcenter資料庫
二:再準備第二台伺服器B,裡面安裝了aaa資料庫
三:目的,将A的callcenter資料庫複制到伺服器B去,使得伺服器B啟動oracle就可以啟動callcenter資料庫跟aaa資料庫。
方法如下:
一:進入到資料庫伺服器A
[[email protected]_callcenter oradata]# pwd
/var/oracle/app/oracle/oradata
[[email protected]_callcenter oradata]# ls
callcenter
[[email protected]_callcenter oradata]# tar cvzf oradata.callcenter.tar.gz ./callcenter (将callcenter目錄打包)
二:進入到資料庫伺服器A
[[email protected]_callcenter admin]# pwd
/var/oracle/app/oracle/admin
[[email protected]_callcenter admin]# ls
callcenter
[[email protected]_callcenter oradata]# tar cvzf admin.callcenter.tar.gz ./callcenter (将callcenter目錄打包)
三:注意打包的檔案所放的各自目錄
将以上兩個壓縮的檔案oradata.callcenter.tar.gz admin.callcenter.tar.gz SCP到資料庫伺服器B的各自目錄。然後tar -xvzf 解壓縮 (這些不再煩述)
四:修改oracle 8i的監聽檔案
[[email protected]_callcenter admin]# pwd
/var/oracle/app/oracle/product/8.1.7/network/admin
[[email protected]_callcenter admin]#vi listener.ora
# LISTENER.ORA Network Configuration File: /var/oracle/app/oracle/product/8.1.7/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
)
)
(DESCRIPTION =
(PROTOCOL_STACK =
(PRESENTATION = GIOP)
(SESSION = RAW)
)
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 2481))
) )
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /var/oracle/app/oracle/product/8.1.7)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = callcenter)
(ORACLE_HOME = /var/oracle/app/oracle/product/8.1.7)
(SID_NAME = callcenter)
) (SID_DESC =
(GLOBAL_DBNAME = aaa)
(ORACLE_HOME = /var/oracle/app/oracle/product/8.1.7)
(SID_NAME = aaa)
)
)
修改tnsnames檔案屬性,增加callcenter資料庫監聽配置
[[email protected]_callcenter admin]#vi tnsnames.ora
CALLCENTER.LOCALDOMAIN =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = callcenter)
)
)
AAA.LOCALDOMAIN =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = aaa)
)
)
INST1_HTTP.LOCALDOMAIN =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = SHARED)
(SERVICE_NAME = aaa)
(PRESENTATION = )
)
)
EXTPROC_CONNECTION_DATA.LOCALDOMAIN =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
五:修改完畢後,然後lsnrctl start,不過要注意先stop哦,然後再start
六:最為重要的一點要記住,啟動這兩個資料庫之前,一定要先去這個目錄看看檔案
[[email protected]_callcenter dbs]# pwd
/var/oracle/product/8.1.7/dbs
[[email protected]_callcenter dbs]# ls
[[email protected]_callcenter dbs]# ls -al
total 44
drwxr-xr-x 2 oracle dba 4096 Apr 17 16:24 .
drwxr-xr-x 39 oracle dba 4096 Apr 29 2003 ..
lrwxrwxrwx 1 oracle dba 47 Jan 3 18:06 initBilling.ora -> /var/oracle/admin/aaa/pfile/initaaa.ora
-rw-r--r-- 1 oracle dba 9219 Oct 22 1999 initdw.ora
-rw-r--r-- 1 oracle dba 8385 Oct 22 1999 init.ora
lrwxrwxrwx 1 oracle dba 47 Apr 17 15:51 initwebcall.ora -> /var/oracle/admin/callcenter/pfile/initwebcall.ora (自己建立一個連結)
-rw-rw---- 1 oracle dba 24 Apr 17 14:42 lkaaa
-rw-rw---- 1 oracle dba 24 Apr 17 16:23 lkcallcenter (這個檔案是oracle的callcenter啟動後的産生的檔案,相當于某個程序的pid檔案,主要這個檔案不要copy過來,否則會無法啟動)
-rwSr----- 1 oracle dba 1536 Apr 29 2003 orapwaaa
-rwSr----- 1 oracle dba 1536 Apr 29 2003 orapwcallcenter (callcenter的passwd檔案,copy過來,如果不能用,可以先start force後修改passwd,産生一個passwd檔案)