天天看點

oracle複制資料庫檔案,Oracle的資料庫快速複制 (2)

總算回來了。今天講述資料庫快速複制第二章。

一:首先準備一台伺服器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檔案)