主頁 > 知識庫 > Oracle數(shù)據(jù)庫部分遷至閃存存儲的實現(xiàn)方法

Oracle數(shù)據(jù)庫部分遷至閃存存儲的實現(xiàn)方法

熱門標(biāo)簽:AI電銷 網(wǎng)站排名優(yōu)化 百度競價排名 鐵路電話系統(tǒng) Linux服務(wù)器 呼叫中心市場需求 地方門戶網(wǎng)站 服務(wù)外包

環(huán)境:Oracle 11.2.0.4 RAC(2 nodes)

說明:假設(shè)新增閃存掛載點是/flash(使用了第三方的集群文件系統(tǒng)),如果是使用Oracle的ASM,則本文提及的所有/flash目錄都可以認(rèn)定是新的閃存磁盤組是+FLASH。

1 實施需求

為提高數(shù)據(jù)庫IO性能,采購了全閃存陣列存儲,但由于前期預(yù)算有限,只能將部分?jǐn)?shù)據(jù)遷移到閃存存儲上(當(dāng)然,如果條件允許,還是強(qiáng)烈建議將數(shù)據(jù)庫整體全部遷移到閃存)。經(jīng)評估,最終確認(rèn)將業(yè)務(wù)高峰時刻,IO壓力最大的表空間整體遷移到閃存存儲上,此外,將數(shù)據(jù)庫的redo和undo遷移到閃存存儲上。

注:本文方案實際是我對某生產(chǎn)環(huán)境的真實需求而編寫,由于該場景具有普適性,故脫敏后發(fā)表。

2 確認(rèn)遷移表空間信息

主要根據(jù)業(yè)務(wù)高峰(以歷史DBTime為主要參考指標(biāo)),從對應(yīng)AWR報告中的Tablespace IO Stats部分篩選出IO壓力最大的表空間。比如我這里確定數(shù)據(jù)庫需要遷移到閃存的表空間是TBS_D_JINGYU。

具體依據(jù):

a.抽查平日數(shù)據(jù)庫的AWR報告,根據(jù)Tablespace IO Stats部分,TOP1就是TBS_D_JINGYU,而且比其他表空間高一個數(shù)量級。

b.抽查業(yè)務(wù)高峰時段數(shù)據(jù)庫的AWR報告,根據(jù)Tablespace IO Stats部分,TOP1多數(shù)情況也是TBS_D_JINGYU,但由于業(yè)務(wù)高峰期很多表空間都比較忙,不如平日明顯,但綜合考慮,還是選擇TBS_D_JINGYU表空間。

TBS_D_JINGYU表空間大?。寒?dāng)前大小是2160G,預(yù)估數(shù)據(jù)量按30%的增長率,至少需要空間為2810G。

3 確認(rèn)redo信息

將所有redo日志文件遷移到閃存。

很多年前,在Oracle界就一直流傳一個說法:不建議將redo放在SSD上,就連Oracle官方文檔都有對應(yīng)的說法。所以直到現(xiàn)在還有很多人不敢將redo放在SSD上。而實際上,這個觀點早已經(jīng)過時,目前的企業(yè)級閃存卡經(jīng)實際測試,是完全可以用來存放redo的。

確認(rèn)redo信息,我這里是2節(jié)點RAC,redo相關(guān)信息是:一共有兩個線程,每個線程有7組日志,每個日志大小為2G??偞笮?8G。group組號是31-37,41-47。

4 確認(rèn)undo信息

確認(rèn)undo信息:

TABLESPACE_NAME        FREE_SPACE USED_SPACE TABLESPACE_SIZE USED_PERCENT
------------------------------ ---------- ---------- --------------- ------------
UNDOTBS1            176.668823 4.33117676       181  2.39291534
UNDOTBS2            47.9354248 .064575195       48  .134531657

可以看到,UNDOTBS1大小181G,UNDOTBS2大小48G。總大小229G。

5 表空間遷移到閃存

5.1 確認(rèn)閃存空間符合最小需求

假設(shè)閃存掛載目錄是/flash;按表空間30% 預(yù)留增長空間計算,對應(yīng)閃存掛載目錄空間最小值:

數(shù)據(jù)庫遷移至閃存的空間最小需求:top tablespace + redo + undo =2810G + 28G + 229G=3067G

注:如果數(shù)據(jù)表空間和對應(yīng)索引表空間是分開規(guī)劃的,那么強(qiáng)烈建議將這個IO最高的數(shù)據(jù)表空間對應(yīng)的索引表空間也一起遷移,這樣總空間需求量就還要加上對應(yīng)索引表空間的需求。

5.2 表空間遷移到閃存

使用backup as copy tablesapce來實現(xiàn)表空間TBS_D_JINGYU的遷移工作:

RMAN> backup as copy tablespace TBS_D_JINGYU format '/flash/oradata/jydb5/';
SQL> alter tablespace TBS_D_JINGYU offline;
RMAN> switch tablespace TBS_D_JINGYU to copy;
RMAN> recover tablespace TBS_D_JINGYU;
SQL> alter tablespace TBS_D_JINGYU online;

6 redo遷移到閃存

新增redo logfile,刪除歷史redo。

redo遷移到閃存的操作命令:

--新增redo logfile
alter database add logfile THREAD 1 group 11 '/flash/oradata/jydb5/redo11.log' SIZE 2147483648;
alter database add logfile THREAD 1 group 12 '/flash/oradata/jydb5/redo12.log' SIZE 2147483648;
alter database add logfile THREAD 1 group 13 '/flash/oradata/jydb5/redo13.log' SIZE 2147483648;
alter database add logfile THREAD 1 group 14 '/flash/oradata/jydb5/redo14.log' SIZE 2147483648;
alter database add logfile THREAD 1 group 15 '/flash/oradata/jydb5/redo15.log' SIZE 2147483648;
alter database add logfile THREAD 1 group 16 '/flash/oradata/jydb5/redo16.log' SIZE 2147483648;
alter database add logfile THREAD 1 group 17 '/flash/oradata/jydb5/redo17.log' SIZE 2147483648;
alter database add logfile THREAD 2 group 21 '/flash/oradata/jydb5/redo21.log' SIZE 2147483648;
alter database add logfile THREAD 2 group 22 '/flash/oradata/jydb5/redo22.log' SIZE 2147483648;
alter database add logfile THREAD 2 group 23 '/flash/oradata/jydb5/redo23.log' SIZE 2147483648;
alter database add logfile THREAD 2 group 24 '/flash/oradata/jydb5/redo24.log' SIZE 2147483648;
alter database add logfile THREAD 2 group 25 '/flash/oradata/jydb5/redo25.log' SIZE 2147483648;
alter database add logfile THREAD 2 group 26 '/flash/oradata/jydb5/redo26.log' SIZE 2147483648;
alter database add logfile THREAD 2 group 27 '/flash/oradata/jydb5/redo27.log' SIZE 2147483648;
--刪除歷史redo
alter database drop logfile group 31;
alter database drop logfile group 32;
alter database drop logfile group 33;
alter database drop logfile group 34;
alter database drop logfile group 35;
alter database drop logfile group 36;
alter database drop logfile group 37;
alter database drop logfile group 41;
alter database drop logfile group 42;
alter database drop logfile group 43;
alter database drop logfile group 44;
alter database drop logfile group 45;
alter database drop logfile group 46;
alter database drop logfile group 47;

7 undo遷移到閃存

undo遷移實質(zhì)就是通過創(chuàng)建新的undo表空間,然后修改默認(rèn)undo表空間的設(shè)置,最終刪除歷史undo表空間。

undo表空間遷移到閃存:

create undo tablespace UNDOTBS11 datafile '/flash/oradata/jydb5/undotbs101.dbf' SIZE 30G;
create undo tablespace UNDOTBS21 datafile '/flash/oradata/jydb5/undotbs201.dbf' SIZE 24G;
alter tablespace undotbs11 add datafile '/flash/oradata/jydb5/undotbs102.dbf' SIZE 30G;
alter tablespace undotbs11 add datafile '/flash/oradata/jydb5/undotbs103.dbf' SIZE 30G;
alter tablespace undotbs11 add datafile '/flash/oradata/jydb5/undotbs104.dbf' SIZE 30G;
alter tablespace undotbs11 add datafile '/flash/oradata/jydb5/undotbs105.dbf' SIZE 30G;
alter tablespace undotbs11 add datafile '/flash/oradata/jydb5/undotbs106.dbf' SIZE 31G;
alter tablespace undotbs21 add datafile '/flash/oradata/jydb5/undotbs202.dbf' SIZE 24G;
--show parameter undo
alter system set undo_tablespace=UNDOTBS11 sid = 'jydb51';
alter system set undo_tablespace=UNDOTBS21 sid = 'jydb52';
--select SEGMENT_NAME ,STATUS ,TABLESPACE_NAME from dba_rollback_segs;(確認(rèn)offline)
drop tablespace undotbs1 including contents and datafiles;
drop tablespace undotbs2 including contents and datafiles;

8 備庫修改參數(shù)

數(shù)據(jù)庫環(huán)境中還有一個ADG備庫。

針對備庫,主要需要修改db_file_name_convert和log_file_name_convert參數(shù)值,增加對新目錄的映射關(guān)系。

以上這篇Oracle數(shù)據(jù)庫部分遷至閃存存儲的實現(xiàn)方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • oracle 數(shù)據(jù)庫數(shù)據(jù)遷移解決方案
  • Oracle數(shù)據(jù)塊實現(xiàn)原理深入解讀
  • Oracle中 關(guān)于數(shù)據(jù)庫存儲過程和存儲函數(shù)的使用

標(biāo)簽:仙桃 崇左 湖南 蘭州 銅川 湘潭 黃山 衡水

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Oracle數(shù)據(jù)庫部分遷至閃存存儲的實現(xiàn)方法》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266