自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

淺析Oracle數(shù)據(jù)庫(kù)的表空間的移動(dòng)方法

運(yùn)維 數(shù)據(jù)庫(kù)運(yùn)維 數(shù)據(jù)庫(kù)
本文將介紹的是如何移動(dòng)Oracle數(shù)據(jù)庫(kù)的表空間,加入移動(dòng)的數(shù)據(jù)量很龐大,勢(shì)必會(huì)十分緩慢。希望通過本文能讓大家更順利的移動(dòng)。

數(shù)據(jù)庫(kù)的移動(dòng)應(yīng)該說也是比較常見的現(xiàn)象,畢竟有種種理由逼迫我們移動(dòng)。那么如何才能更快的完成移動(dòng)呢?請(qǐng)看下文。

在使用Oracle數(shù)據(jù)庫(kù)的過程中,經(jīng)常會(huì)遇到將數(shù)據(jù)庫(kù)中的數(shù)據(jù)從一個(gè)數(shù)據(jù)庫(kù)移動(dòng)到另一個(gè)數(shù)據(jù)庫(kù)的情況,如果移動(dòng)的數(shù)據(jù)量不是太大,我們可以使用EXPORT/IMPORT將數(shù)據(jù)進(jìn)行導(dǎo)出/導(dǎo)入。但如果需要搬移的數(shù)據(jù)量非常龐大,則用這種方法進(jìn)行數(shù)據(jù)移動(dòng)非常緩慢。在Oracle 11g版本中,提供了可以對(duì)表空間進(jìn)行移動(dòng)的方法,通過搬移表空間可大大降低數(shù)據(jù)遷移的速度,提高工作效率。

對(duì)表空間進(jìn)行移動(dòng)時(shí)應(yīng)注意以下幾點(diǎn):

(1)源數(shù)據(jù)庫(kù)和目標(biāo)數(shù)據(jù)庫(kù)必須在相同硬件平臺(tái)上。例如我們可以在Sun Solaris平臺(tái)的Oracle數(shù)據(jù)庫(kù)之間搬移表空間,也可以在Windows 2000平臺(tái)的Oracle數(shù)據(jù)庫(kù)之間搬移表空間,但是不能在Sun Solaris/Windows 2000之間搬移表空間。

(2)源數(shù)據(jù)庫(kù)和目標(biāo)數(shù)據(jù)庫(kù)的字符集和民族字符集必須相同。

(3)不能將表空間搬移到具有同名表空間的目標(biāo)數(shù)據(jù)庫(kù)中。

(4)在Oracle8i之間搬移表空間時(shí),源數(shù)據(jù)庫(kù)和目標(biāo)數(shù)據(jù)庫(kù)的數(shù)據(jù)塊尺寸一定要相同。

下面我們以O(shè)racle for Windows 2000為例說明移動(dòng)表空間的具體方法。

一、檢查要移動(dòng)的表空間

當(dāng)搬移表空間時(shí),如果被搬移表空間中的數(shù)據(jù)沒有和其它表空間中的數(shù)據(jù)有參照關(guān)系,則可直接對(duì)此表空間進(jìn)行搬移;如果被搬移表空間中的數(shù)據(jù)與其它表空間中的數(shù)據(jù)有參照關(guān)系,那么在移動(dòng)表空間時(shí),凡與被移動(dòng)表空間有參照關(guān)的表空間也應(yīng)進(jìn)行搬移,否則移動(dòng)到目的地的表空間中的數(shù)據(jù)是不完整的。例如表空間local包含了表A1,而表空間local2包含了表A1的索引IDX_A1,此時(shí)如果要搬移表空間local,則也應(yīng)同時(shí)搬移表空間local2,此時(shí)我們稱表空間local、local2為自包含的。在進(jìn)行表空間搬移之前,可以用下列方法查看被搬移的表空間是否為自包含表空間。

  1. SQL>execute dbms_tts.transport_set_check(ts_list=>'local',   
  2. incl_constraints=>TRUE); 

參數(shù)ts_list用于指定要搬移的表空間,incl_constraints用于指定是否檢查完整性約束。執(zhí)行完過程dbms_tts.transport_set_check之后,系統(tǒng)將違反自包含表空間的信息存入臨時(shí)表transport_set_violations。查詢?cè)摫頃r(shí),如果沒有返回任何信息,說明表空間是自包含的,否則會(huì)返回非自含表空間的原因:

二、導(dǎo)出表空間信息

為保持?jǐn)?shù)據(jù)文件的一致性,在導(dǎo)出自包含表空間數(shù)據(jù)字典信息之前,應(yīng)首先將自包含表空間轉(zhuǎn)變?yōu)橹蛔x狀態(tài),作用是使表空間信息不會(huì)發(fā)生變化。

  1. SQL>alter tablespace local read only;   
  2. SQL>alter tablespace local2 read only

將表空間設(shè)置為只讀關(guān)態(tài)時(shí),會(huì)在表空間數(shù)據(jù)文件上發(fā)出檢查點(diǎn),并且其內(nèi)容不會(huì)發(fā)生任何變化,此時(shí)就可以導(dǎo)出表空間信息了。導(dǎo)出表空間僅僅是導(dǎo)出與其相關(guān)的數(shù)據(jù)字典信息,而不是導(dǎo)出表空間的任何數(shù)據(jù),使用如下操作系統(tǒng)命令可導(dǎo)出表空間local和local2的信息。

  1. D:>EXP transport_tablespace=y tablespaces=local,local2 file=  
  2. expdat.dmp 

用戶名:internal/oracle@test as sysdba
參數(shù):transport_tablespace搬移表空間選項(xiàng),Y表示導(dǎo)出表空間信息;tablespaces用于指定要導(dǎo)出的表空間;file用于指定存放導(dǎo)出信息的文件。

導(dǎo)出表空間信息之后,使用操作系統(tǒng)命令將表空間數(shù)據(jù)文件和導(dǎo)出文件(expdat.dmp)復(fù)制到目標(biāo)數(shù)據(jù)庫(kù)所在機(jī)器相應(yīng)的目錄中。

三、導(dǎo)入表空間

在將表空間數(shù)據(jù)文件和導(dǎo)出文件復(fù)制到目標(biāo)數(shù)據(jù)庫(kù)所在機(jī)器之后,就可以將表空間信息導(dǎo)入到目標(biāo)數(shù)據(jù)庫(kù)中了。導(dǎo)入自包含表空間實(shí)際是將數(shù)據(jù)字典信息從導(dǎo)出文件裝載到目標(biāo)數(shù)據(jù)中,如表空間名稱、表空間所對(duì)應(yīng)數(shù)據(jù)文件以及數(shù)據(jù)對(duì)象名稱等。具體的操作系統(tǒng)命令如下:

  1. D:>IMP transport_tablespace=y datafiles'd:localdblocal1.dbf'   
  2. ,'d:localdblocal2.dbf’ 

用戶名:internal/oracle@test as sysdba

當(dāng)執(zhí)行完上述命令之后,會(huì)將表空間local和local2及其所包含的所有數(shù)據(jù)對(duì)象信息導(dǎo)入到目標(biāo)數(shù)據(jù)庫(kù)中。

注意:在Oracle中搬移表空間時(shí),源表空間中存放的所有數(shù)據(jù)對(duì)象的所有者在目標(biāo)數(shù)據(jù)庫(kù)中必須存在,如果不存在,則應(yīng)在導(dǎo)入表空間之前建立相應(yīng)的用戶,然后再導(dǎo)入表空間。

【編輯推薦】

  1. Oracle數(shù)據(jù)庫(kù)遷移相關(guān)技巧介紹
  2. Oracle設(shè)置系統(tǒng)參數(shù)進(jìn)行性能優(yōu)化
  3. Oracle數(shù)據(jù)庫(kù)維護(hù)中的前瞻性
  4. Oracle與SQL Server之間的數(shù)據(jù)遷移
  5. 實(shí)例講解Oracle到SQL Server主鍵遷移

 

責(zé)任編輯:彭凡 來源: IT專家網(wǎng)論壇
相關(guān)推薦

2009-05-21 09:24:42

表空間查詢Oracle

2009-03-30 14:52:43

復(fù)制數(shù)據(jù)庫(kù)Oracle

2011-08-05 12:44:57

Oracle數(shù)據(jù)庫(kù)表空間

2010-04-09 15:35:28

Oracle數(shù)據(jù)庫(kù)

2010-04-09 14:37:08

Oracle數(shù)據(jù)庫(kù)

2010-11-16 11:17:41

Oracle表空間大小

2010-04-26 10:52:46

Oracle 數(shù)據(jù)庫(kù)

2009-03-16 13:30:55

腳本數(shù)據(jù)字典Oracle

2010-03-03 15:45:08

Linux Oracl

2010-04-21 11:43:33

Oracle數(shù)據(jù)庫(kù)

2009-11-06 14:07:58

Oracle用戶表空間

2010-04-12 13:25:10

Oracle 數(shù)據(jù)庫(kù)

2010-04-22 16:08:24

Oracle數(shù)據(jù)庫(kù)

2011-03-25 10:26:34

Oracle數(shù)據(jù)庫(kù)管理表空間

2009-07-02 00:26:00

臨時(shí)表空間Oracle數(shù)據(jù)庫(kù)性能

2009-05-14 13:36:11

Oracle表空間優(yōu)化

2011-08-29 17:00:47

Oracle數(shù)據(jù)庫(kù)RM表空間數(shù)據(jù)塊介質(zhì)

2011-05-17 11:23:02

Oracle數(shù)據(jù)庫(kù)

2011-08-09 18:40:21

Oracle控制文件重做日志文件

2010-10-27 14:15:44

Oracle數(shù)據(jù)庫(kù)效率
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)