日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Oracle數(shù)據(jù)庫(kù)遷移指南:快速move數(shù)據(jù)的技巧(oracle數(shù)據(jù)庫(kù)move)

在數(shù)據(jù)庫(kù)管理領(lǐng)域,數(shù)據(jù)庫(kù)遷移是一項(xiàng)重要的任務(wù)。它涉及到將一個(gè)或多個(gè)數(shù)據(jù)庫(kù)或應(yīng)用程序從一個(gè)環(huán)境轉(zhuǎn)移到另一個(gè)環(huán)境,通常是遷移基礎(chǔ)架構(gòu)或托管提供商、更新版本或平臺(tái)或合并數(shù)據(jù)庫(kù)。雖然Oracle數(shù)據(jù)庫(kù)遷移是一項(xiàng)繁瑣的任務(wù),但必須完成此任務(wù),既確保數(shù)據(jù)的完整性,又確保數(shù)據(jù)的安全性。在本文中,我們將分享一些Oracle數(shù)據(jù)庫(kù)遷移的技巧,以幫助您在遷移過(guò)程中快速移動(dòng)數(shù)據(jù)。

成都創(chuàng)新互聯(lián)公司專注于汕尾網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供汕尾營(yíng)銷型網(wǎng)站建設(shè),汕尾網(wǎng)站制作、汕尾網(wǎng)頁(yè)設(shè)計(jì)、汕尾網(wǎng)站官網(wǎng)定制、微信小程序定制開發(fā)服務(wù),打造汕尾網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供汕尾網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

準(zhǔn)備工作

在開始Oracle數(shù)據(jù)庫(kù)遷移之前,必須先進(jìn)行一些準(zhǔn)備工作。這些準(zhǔn)備工作包括:

1.存儲(chǔ)備份和日志文件

在遷移過(guò)程中,您需要備份整個(gè)數(shù)據(jù)庫(kù)和日志文件。因此,您需要有足夠的存儲(chǔ)空間,以便存儲(chǔ)這些文件。備份數(shù)據(jù)庫(kù)和日志文件可以幫助您在遷移過(guò)程中避免數(shù)據(jù)丟失。

2.確認(rèn)遷移目標(biāo)環(huán)境

在遷移之前,您需要確認(rèn)目標(biāo)數(shù)據(jù)庫(kù)環(huán)境是否符合要求。目標(biāo)環(huán)境需要具有足夠的存儲(chǔ)空間、性能和安全性,以保持新數(shù)據(jù)庫(kù)的平穩(wěn)運(yùn)行。此外,新環(huán)境必須具有足夠的權(quán)限,以允許您完成遷移。

3.創(chuàng)建遷移計(jì)劃

創(chuàng)建遷移計(jì)劃可以幫助您規(guī)劃遷移過(guò)程的步驟和時(shí)間。此外,遷移計(jì)劃還應(yīng)包括備份和還原方案、驗(yàn)證和測(cè)試計(jì)劃以及后續(xù)支持和維護(hù)計(jì)劃。

快速move數(shù)據(jù)的技巧

1.使用Oracle Data Pump

Oracle Data Pump是一種快速移動(dòng)數(shù)據(jù)的工具,它允許將數(shù)據(jù)以二進(jìn)制格式從源數(shù)據(jù)庫(kù)導(dǎo)出并導(dǎo)入到目標(biāo)數(shù)據(jù)庫(kù)。使用Data Pump可以大大加快數(shù)據(jù)的遷移速度。此外,Data Pump還可以將數(shù)據(jù)導(dǎo)出到平面文件中,以便在遷移過(guò)程中進(jìn)行手動(dòng)處理。

2.使用Oracle GoldenGate

Oracle GoldenGate是一種高性能、高可用性的數(shù)據(jù)復(fù)制和同步工具,它允許在不影響源數(shù)據(jù)庫(kù)的情況下將數(shù)據(jù)復(fù)制到目標(biāo)數(shù)據(jù)庫(kù)。GoldenGate可以在不同的操作系統(tǒng)、數(shù)據(jù)庫(kù)版本和架構(gòu)之間進(jìn)行復(fù)制。使用GoldenGate可以減少數(shù)據(jù)遷移的停機(jī)時(shí)間,并提高遷移的效率。

3.使用Oracle Transportable Tablespaces

Oracle Transportable Tablespaces允許在同一操作系統(tǒng)上的不同Oracle數(shù)據(jù)庫(kù)之間移動(dòng)數(shù)據(jù)。使用Transportable Tablespaces可以避免在目標(biāo)數(shù)據(jù)庫(kù)中重新創(chuàng)建表和索引,并減少數(shù)據(jù)遷移的時(shí)間。此外,Transportable Tablespaces還可以使遷移過(guò)程更加容易,因?yàn)槟槐刂匦掳惭b任何軟件或創(chuàng)建新的數(shù)據(jù)庫(kù)實(shí)例。

4.使用Oracle RMAN

Oracle Recovery Manager(RMAN)是一種備份和還原數(shù)據(jù)庫(kù)的工具。使用RMAN可以將整個(gè)數(shù)據(jù)庫(kù)備份到磁盤或磁帶,并快速還原到目標(biāo)數(shù)據(jù)庫(kù)中。此外,使用RMAN還可以在備份和還原過(guò)程中對(duì)數(shù)據(jù)進(jìn)行壓縮,從而減少數(shù)據(jù)遷移的時(shí)間和存儲(chǔ)空間。

在Oracle數(shù)據(jù)庫(kù)遷移過(guò)程中,快速移動(dòng)數(shù)據(jù)是至關(guān)重要的。使用Oracle Data Pump、Oracle GoldenGate、Oracle Transportable Tablespaces和Oracle RMAN等工具可以大大加快數(shù)據(jù)的遷移速度。此外,在啟動(dòng)遷移之前做好充分的準(zhǔn)備工作和規(guī)劃,可以幫助您避免中斷和數(shù)據(jù)丟失,并確保數(shù)據(jù)庫(kù)遷移的安全和完整性。

成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù)!

學(xué)習(xí)oracle視頻,看到指定表空間數(shù)據(jù)文件移動(dòng)到指定位置遇到問題,host move執(zhí)行無(wú)任何效果

我今天學(xué)習(xí)oracle也到這兒,發(fā)現(xiàn)敲了命令,在相應(yīng)的磁盤沒看到dbf文件,此時(shí)我用的是pl/sql developer 里的命令窗口

后來(lái)銷山仔我使用虧汪sqlplus來(lái)進(jìn)行同樣的操作,發(fā)現(xiàn)在相應(yīng)的磁盤中找到了dbf文件,我覺得可能是使用工具的問題。

自己的一點(diǎn)心得,不知道對(duì)與否,希望對(duì)你有幫唯碼助

是能移走的棗肆鉛呀,不應(yīng)該沒反映的。記雹洞得移走之后還要rename datafile.

例如:

SQL> select file_name from dba_data_files;

FILE_NAME

/u01/oracle/oradata/oradb/users01.dbf

/u01/oracle/oradata/oradb/undotbs01.dbf

/u01/oracle/oradata/oradb/sysaux01.dbf

/u01/oracle/oradata/oradb/system01.dbf

/u01/oracle/oradata/oradb/encrypted_ts01.dbf

SQL> alter tablespace users offline;

Tablespace altered.

SQL> alter tablespace users rename datafile ‘/u01/凳好oracle/oradata/oradb/users01.dbf’ to ‘/u01/oracle/users02.dbf’;

Tablespace altered.

SQL> alter tablespace users online;

Tablespace altered.

SQL> select file_name from dba_data_files;

FILE_NAME

/u01/oracle/users02.dbf

/u01/oracle/oradata/oradb/undotbs01.dbf

/u01/oracle/oradata/oradb/sysaux01.dbf

/u01/oracle/oradata/oradb/system01.dbf

/u01/oracle/oradata/oradb/encrypted_ts01.dbf

SQL> !ls -a /u01/oracle/users02.dbf

/u01/oracle/users02.dbf

SQL> !ls -a /u01/oracle/oradata/oradb/users01.dbf

ls: /u01/oracle/oradata/oradb/users01.dbf: No such file or directory

我倒,host命緩中令就是在sql/plus中執(zhí)迅哪攜行操作系統(tǒng)的命令,如果被移動(dòng)的表空間文件處于在在線狀畝伏態(tài),當(dāng)然不能讓你移動(dòng)了!這個(gè)時(shí)候你可以把表空間文件設(shè)置為冷備份狀態(tài),這個(gè)時(shí)候可以移動(dòng)。

我也遇到這個(gè)問凱雹芹題,后來(lái)發(fā)現(xiàn)是因?yàn)樵赑L/SQL developer中運(yùn)盯畢行這條肆備命令就無(wú)效,在sqlplus中運(yùn)行才有效

如何重建LOB類型的索引和LOB段

當(dāng)我們想重建LOB類型的索引的時(shí)候,就會(huì)出現(xiàn)報(bào)錯(cuò),重現(xiàn)如下:

create table test

( id int,

txt clob

);

SQL> select * from user_segments;

SEGMENT_NAMEPARTITION_NAME SEGMENT_TYPETABLESPACE_NAME

BYTES BLOCKS EXTENTS INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS PCT_INCREASE FREELISTS FREELIST_GROUPS BUFFER_POOL

TESTTABLEUSERS

DEFAULT

SYS_ILC00002$$ LOBINDEXUSERS

DEFAULT

SYS_LOBC00002$$ LOBSEGMENTUSERS

DEFAULT

alter index SYS_ILC00002$$ rebuild tablespace users ONLINE NOLOGGING

ORA-02327: 無(wú)法以數(shù)據(jù)類型 LOB 的型伍表達(dá)式創(chuàng)建索引

我們先回憶一下相關(guān)辯伏知識(shí),以下來(lái)自O(shè)RACLE 9I&10G編程藝術(shù)

lobindex和lobsegment,它們做什么用?創(chuàng)建這些段是為了支持我們的LOB列。我們的實(shí)際LOB數(shù)據(jù)就存儲(chǔ)在lobsegment中(確實(shí),LOB數(shù)據(jù)也有可能存儲(chǔ)在表T中,不過(guò)稍后討論

ENABLE STORAGE IN ROW子句時(shí)還會(huì)更詳細(xì)地說(shuō)明這個(gè)內(nèi)容)。lobindex用卜灶或于執(zhí)行LOB的導(dǎo)航,來(lái)找出其中的某些部分。創(chuàng)建一個(gè)LOB列時(shí),一般來(lái)說(shuō),存儲(chǔ)在行中的這是一個(gè)指針(

pointer),或LOB定位器(LOB locator)。我們的應(yīng)用所獲取的就是這個(gè)LOB定位器。當(dāng)請(qǐng)求得到LOB的“12.000~2,000字節(jié)”時(shí),將對(duì)lobindex使用LOB定位器來(lái)找出這些字節(jié)存

儲(chǔ)在哪里,然后再訪問lobsegment??梢杂胠obindex很容易地找到LOB的各個(gè)部分。由此說(shuō)來(lái),可以把LOB想成是一種主/明細(xì)關(guān)系。

表中的LOB實(shí)際上只是指向lobindex,lobindex再指向LOB本身的各個(gè)部分。為了得到LOB中的N~M字節(jié),要對(duì)表中的指針(LOB定位器)解除引用,遍歷lobindex結(jié)構(gòu)來(lái)找到所需的

數(shù)據(jù)庫(kù)(chunk),然后按順序訪問。這使得隨機(jī)訪問LOB的任何部分都能同樣迅速,你可以用同樣快的速度得到LOB的最前面、中間或最后面的部分,因?yàn)闊o(wú)需再?gòu)念^開始遍歷LOB

。

ORACLE也說(shuō):The LOB index is an internal structure that is strongly associated with the LOB storage. 也就是說(shuō)不讓直接重建

但是我覺得可以明確INDEX是用來(lái)確定LOBSEGMENT的位置,如果經(jīng)常對(duì)表中的行進(jìn)行DML或者對(duì)大字段進(jìn)行DML,我覺得重建還是用必要的。

既然是索引就要遵守索引的原則。大量的DML必然使索引的頁(yè)節(jié)點(diǎn)越來(lái)越多,深度越來(lái)越大,但是其中包含了空閑空間。

ORACLE METALINK 說(shuō) Use the ALTER TABLE … MOVE command which will rebuild the indexes ,也就是使用ALTER TABLE MOVE語(yǔ)句來(lái)進(jìn)行REBUILD索引。

下面就測(cè)試一下:

首先理解幾個(gè)概念,才能了解實(shí)驗(yàn)結(jié)果:

1、IN ROW 默認(rèn)的這個(gè)子句是(ENABLE STORAGE IN ROW),也就是小于4000字節(jié)就存儲(chǔ)在表段中,如果大于4000字節(jié)就存儲(chǔ)在lob段中,同時(shí)使用LOBINDEX來(lái)指定位置,我這里使

用DISABLE STORAGE IN ROW,也就是不管多大都存在LOBSEGMENT中。

2、CHUNK 表示最小LOGSEGMENT最小的存儲(chǔ)單元,而且一個(gè)CHUNK只限于一個(gè)SEGMENT行使用,如果一個(gè)CHUNK設(shè)置為32K,你的SEGMENT行只有2K那就要浪費(fèi)30k。

3、CACHE 表示是否把讀取寫入LOGSEGMENT記錄到緩存,默認(rèn)是NOCACHE,可以是CACHE和CACHE READS,前者讀寫都保存,后者讀保存,寫是直接寫。而NOCACHE,就是直接讀寫。

下面是我建立表的語(yǔ)句。

CREATE TABLE “PPTEST”.”TEST2″

( “ID” NUMBER(*,0),

“TXT” CLOB

) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING

STORAGE(INITIALNEXTMINEXTENTS 1 MAXEXTENTS

PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)

TABLESPACE “USERS”

LOB (“TXT”) STORE AS (

TABLESPACE “USERS” DISABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10

NOCACHE

STORAGE(INITIALNEXTMINEXTENTS 1 MAXEXTENTS

PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT))

我這里DISABLE STORAGE IN ROW CHUNK 8192,CHUNK是8K。

現(xiàn)在我插入數(shù)據(jù)

SQL> insert into test2

2 select * from test;

rows inserted

這里有58W多行,計(jì)算一下SEGMENTS占用空間。589824*8K=4.5G

查看一下:

select SEGMENT_NAME,SEGMENT_TYPE,BYTES/1024/1024/1024 gb,BLOCKS from user_segments;

SYS_ILC00002$$ LOBINDEX. 3968

SYS_LOBC00002$$LOBSEGMENT.95328

TESTTABLE0. 2432

確實(shí)我們的LOGSEGMENT是4.5G。

現(xiàn)在我們收集統(tǒng)計(jì)信息,并且對(duì)索引進(jìn)行分析如下:

SQL> execute dbms_stats.gather_schema_stats(ownname => ‘PPTEST’,cascade => true);

PL/SQL procedure successfully completed

yze index SYS_ILC00002$$ validate structure;

yze index SYS_ILC00002$$ compute statistics;

過(guò)后查看都沒有發(fā)現(xiàn)LOGINDEX的結(jié)構(gòu)信息,不知道為何。

但是考慮進(jìn)行了大量的DML夠后進(jìn)行REBULIDING索引的大小肯定會(huì)減少。

現(xiàn)在我們來(lái)進(jìn)行REBULDING實(shí)驗(yàn)。

首先模擬大量刪除插入,

delete test2;

insert into test2

select id,txt from (select rownum rn, id, txt from test) where mod(rn, 8) = 0;

先全部刪除,然后再插入1/8的數(shù)據(jù)。(過(guò)程巨慢)

SQL> delete test2;

rows deleted

查看

select SEGMENT_NAME,SEGMENT_TYPE,BYTES/1024/1024/1024 gb,BLOCKS from user_segments;

SYS_ILC00002$$ LOBINDEX.240

SYS_LOBC00002$$LOBSEGMENT.03520

TESTTABLE0. 2432

索引的塊大量增加,占用空間也大量增加,這里我也不太明白為何大量增加。這時(shí)其實(shí)沒有任何數(shù)據(jù)了。

然后進(jìn)行了插入。

SQL> insert into test2

2 select id,txt from (select rownum rn, id, txt from test) where mod(rn, 8) = 0;

73728 rows inserted

查看

select SEGMENT_NAME,SEGMENT_TYPE,BYTES/1024/1024/1024 gb,BLOCKS from user_segments;

SYS_ILC00002$$ LOBINDEX.1264

SYS_LOBC00002$$LOBSEGMENT.69056

TESTTABLE0. 2432

其實(shí)這個(gè)時(shí)候數(shù)據(jù)只是以前的1/8 但是LOGSEGMENT和LOBINDEX 卻更大。所以有大量的浪費(fèi)空間。

我們直接重建TEST2表

SQL> alter table test2 move tablespace users;

查看

SYS_ILC00002$$ LOBINDEX.1264

SYS_LOBC00002$$LOBSEGMENT.69056

TESTTABLE0. 384

只是重建了TEST2段

使用語(yǔ)句

ALTER TABLE test2 MOVE

TABLESPACE users

LOB (TXT) STORE AS lobsegment

(TABLESPACE users );

進(jìn)行重建

重建期間可以看到臨時(shí)對(duì)象如下:

4.TEMPORARY. 80

4.TEMPORARY.7408

4.TEMPORARY. 128

顯然表本身,LOBSEGMENT和LOBINDEX都再重建

然后查看

SQL> select SEGMENT_NAME,SEGMENT_TYPE,BYTES/1024/1024/1024 gb,BLOCKS from user_segments;

SEGMENT_NAMESEGMENT_TYPE GB BLOCKS

TESTTABLE0. 384

LOBSEGMENT LOBSEGMENT.74496

SYS_ILC00002$$ LOBINDEX. 512

因?yàn)槲疫@里使用 lobsegment所以以前的SYS_LOBC00002$$ 變?yōu)榱薒OBSEGMENT,可以看到這個(gè)時(shí)候容量正常了。0.56G剛好是以前的1/8.

如果想單獨(dú)重建會(huì)報(bào)錯(cuò)。METALINK上記錄如下:

Explanation

The ‘ALTER TABLE foo MODIFY LOB (lobcol) …’ syntax does not allow

for a change of tablespace

ALTER TABLE my_lob

MODIFY LOB (a_lob)

(TABLESPACE new_tbsp);

(TABLESPACE new_tbsp)

*

ORA-22853: invalid LOB storage option specification

You have to use the MOVE keyword instead as shown in the examples.

結(jié)論:

1、LOGSEGMENT不會(huì)重用HWM以下的空間,所以大量DML會(huì)不斷增加它的大小。

2、進(jìn)行LOBsegment和LOBINDEX重建很有必要,使用語(yǔ)法如下:

ALTER TABLE test2 MOVE

TABLESPACE users

LOB (TXT) STORE AS lobsegment

(TABLESPACE users );

必須和表一起重建,單獨(dú)重建LOBSEGMENT或者LOGINDEX沒有辦法。

分兩種情況,一種是移動(dòng)普簡(jiǎn)桐通索引,另一種是移動(dòng)分區(qū)索引。

oracle移動(dòng)普通索引到其他表空間語(yǔ)法:攔饑坦

alter index 索引名 rebuild tablespace 其他表空間;

oracle移動(dòng)分區(qū)索引到其他表空間語(yǔ)法:

alter table 表名 move partition 分區(qū)名 tablespace 其他表空間肢弊;

oracle數(shù)據(jù)庫(kù) move的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于oracle數(shù)據(jù)庫(kù) move,Oracle數(shù)據(jù)庫(kù)遷移指南:快速move數(shù)據(jù)的技巧,學(xué)習(xí)oracle視頻,看到指定表空間數(shù)據(jù)文件移動(dòng)到指定位置遇到問題,host move執(zhí)行無(wú)任何效果,如何重建LOB類型的索引和LOB段的信息別忘了在本站進(jìn)行查找喔。

四川成都云服務(wù)器租用托管【創(chuàng)新互聯(lián)】提供各地服務(wù)器租用,電信服務(wù)器托管、移動(dòng)服務(wù)器托管、聯(lián)通服務(wù)器托管,云服務(wù)器虛擬主機(jī)租用。成都機(jī)房托管咨詢:13518219792
創(chuàng)新互聯(lián)(www.cdcxhl.com)擁有10多年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗(yàn)、開啟建站+互聯(lián)網(wǎng)銷售服務(wù),與企業(yè)客戶共同成長(zhǎng),共創(chuàng)價(jià)值。


文章標(biāo)題:Oracle數(shù)據(jù)庫(kù)遷移指南:快速move數(shù)據(jù)的技巧(oracle數(shù)據(jù)庫(kù)move)
分享網(wǎng)址:http://m.5511xx.com/article/dpiepcs.html