国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

關(guān)于TimesTen中對象變更小結(jié)

IT那活兒 / 1923人閱讀
關(guān)于TimesTen中對象變更小結(jié)
一、背景介紹

由于近期的工作較多的集中于TimesTen內(nèi)存庫的遷移割接,為了熟悉TT庫的主備庫數(shù)據(jù)同步機制以及同步參數(shù)規(guī)則等等,通過對一套主備庫新增表字段以及添加新表的方式進行了測試練習(xí),以下是測試過程。


二、測試需求

1. TTUSER .BS_SP 增加字段:SYNC_SRC_KEY  行數(shù):5412626 大小:1.65G

2. 新增的表

create table TTUSER.BS_SPSE
(
  KEY_ID NUMBER(18) not null,
  SYNC_SRC_KEY VARCHAR2 (50 BYTE) not null,
  ATTROID NUMBER(14) not null,
  ATTRID VARCHAR2(32 BYTE) not null,
  ATTRVALUE VARCHAR2(128 BYTE),
  STARTDATE DATE,
  ENDDATE DATE,
  SPSERVID VARCHAR2(32 BYTE),
  CANCELOID NUMBER(14)
)

 3. 新建表加索引

create unique index TTUSER.IDX_BS_SPSE_UIDon TTUSER.BS_SPSE (KEY_ID,ATTRID,SYNC_SRC_KEY,ATTROID);


三、檢查內(nèi)存庫參數(shù)配置

Command> call ttconfiguration;----查看當(dāng)前參數(shù)
< CacheAwtMethod, 1 >
< CacheAwtParallelism, 1 >
< CkptFrequency, 0 >
< CkptLogVolume, 256 >
< CkptRate, 0 >
< CkptReadThreads, 1 >
< CommitBufferSizeMax, 10 >
< ConnectionCharacterSet, US7ASCII >
< ConnectionName, sampledb >
< Connections, 245 >
< DDLReplicationAction, INCLUDE >
< DDLReplicationLevel, 2 >

< DataBaseCharacterSet, AL32UTF8 >
< DataStore, /timesten/ttuser/datads/sampledb >
< DynamicLoadEnable, 1 >
< DurableCommits, 0 >


四. 操作步驟介紹

1. 創(chuàng)建備份表

create table  TTUSER .BS_SP_0507 as select * from TTUSER .BS_SP;

2. 核對數(shù)據(jù):

select count(1)from (SELECT *FROM  TTUSER .BS_SPminus SELECT *FROM TTUSER .BS_SP_0507);
select count(1)from (SELECT *FROM  TTUSER .BS_SP_0507minus SELECT *FROM  TTUSER .BS_SP);

3. 添加字段:

添加字段用刪除表后修改建表語句將新字段加入重新建表的方式

alter session set ddl_replication_level=2;

說明:
DDLReplicationLevel 連接屬性可以控制復(fù)制對象的行為。
DDLReplicationLevel = 1:不復(fù)制表,索引和同義詞的create 和 drop,只復(fù)制復(fù)制表的添加和刪除列操作
DDLReplicationLevel = 2: 缺省,復(fù)制表,索引和同義詞的create 和 drop;DDLReplicationAction 必須設(shè)置為INCLUDE(缺省)
DDLReplicationLevel = 3:除了2 的所有行為外,還復(fù)制視圖,序列,ttCacheUidPwdSet,以及可以為一個表加一個非空的列
alter session set ddl_replication_action=EXCLUDE;
truncate table TTUSER.BS_SP;
drop table  TTUSER.BS_SP;
4. 新建表結(jié)構(gòu)

create table TTUSER.BS_SP (
        KEY_ID TT_BIGINT NOT NULL,
        SP_ID VARCHAR2(64 BYTE) NOT INLINE,
        SP_BIZ_ID VARCHAR2(64 BYTE) NOT INLINE,
        BIZ_TYPE VARCHAR2(32 BYTE) INLINE,
        PACKAGE_ID VARCHAR2(4 BYTE) INLINE,
        STATUS      TT_TINYINT,
        THRD_NUM VARCHAR2(20 BYTE) INLINE,
        AVAILTIME DATE NOT NULL,
        EXPIRETIME DATE,
        OID         TT_BIGINT NOT NULL DEFAULT 0,
        PRODUCT_OID TT_BIGINT,
    SYNC_SRC_KEY VARCHAR2(50 BYTE)
    );
create unique index TTUSER.PK_BS_SP on TTUSER.BS_SP (KEY_ID, OID);

-----添加字段新建表之后,主庫表結(jié)構(gòu)及索引幾分鐘的時間內(nèi)自動同步到備庫當(dāng)中。

create table TTUSER.BS_SPSE
(
  KEY_ID NUMBER(18) not null,
  SYNC_SRC_KEY VARCHAR2 (50 BYTE) not null,
  ATTROID NUMBER(14) not null,
  ATTRID VARCHAR2(32 BYTE) not null,
  ATTRVALUE VARCHAR2(128 BYTE),
  STARTDATE DATE,
  ENDDATE DATE,
  SPSERVID VARCHAR2(32 BYTE),
  CANCELOID NUMBER(14)
);
create unique index TTUSER.IDX_BS_SPSE_UID on TTUSER.BS_SPSE (KEY_ID,ATTRID,SYNC_SRC_KEY,ATTROID);
------新建表之后,表結(jié)構(gòu)會自動同步到備庫。


五. 新增表加入復(fù)制關(guān)系

alter session set ddl_replication_level=2;
alter session set ddl_replication_action=EXCLUDE;
alter active standby pair include table TTUSER.BS_SP; ---調(diào)整asp關(guān)系同步
alter active standby pair include table TTUSER.BS_SPSE; ---調(diào)整asp關(guān)系同步

——主庫已修改過的兩個表放開asp關(guān)系中的同步為include之后,會自動同步到備庫asp關(guān)系中(無需兩邊都執(zhí)行)。


六. 數(shù)據(jù)回插操作

insert into TTUSER.BS_SP (KEY_ID,SP_ID,SP_BIZ_ID,BIZ_TYPE,PACKAGE_ID,STATUS,THRD_NUM,AVAILTIME,EXPIRETIME,OID,PRODUCT_OID)
select KEY_ID,SP_ID,SP_BIZ_ID,BIZ_TYPE,PACKAGE_ID,STATUS,THRD_NUM,AVAILTIME,EXPIRETIME,OID,PRODUCT_OID from TTUSER .BS_SP_0507;
commit;

注:主庫insert之后,不會立即同步到備庫,因為數(shù)據(jù)量大提交后會在備庫產(chǎn)生大量的鎖(如下),經(jīng)過一段時間后(十分鐘左右)鎖會自動消失,之后查詢備庫數(shù)據(jù)會與主庫一致,主備數(shù)據(jù)自動同步完成。

41982 0x2cf00f0          2030.1426   Active      Database  0x01312d0001312d00   IX    0
                                                   Row       BMUFVUAAACvjgcABiU   Xn    0 TTUSER.BS_SP
                                                   Row       BMUFVUAAACvjgcAAiU   Xn    0 TTUSER.BS_SP
                                                   Row       BMUFVUAAACvjgcAPiT   Xn    0 TTUSER.BS_SP
                                                   Row       BMUFVUAAACvjgcAOiT   Xn    0 TTUSER.BS_SP
                                                   Row       BMUFVUAAACvjgcANiT   Xn    0 TTUSER.BS_SP
                                                   Row       BMUFVUAAACvjgcAMiT   Xn    0 TTUSER.BS_SP
                                                   Row       BMUFVUAAACvjgcALiT   Xn    0 TTUSER.BS_SP
                                                   Row       BMUFVUAAACvjgcAKiT   Xn    0 TTUSER.BS_SP
                                                   Row       BMUFVUAAACvjgcAJiT   Xn    0 TTUSER.BS_SP


七. 核對數(shù)據(jù)

select count(1) from (SELECT * FROM  TTUSER .BS_SP minus SELECT * FROM  TTUSER .BS_SP_0507);
select count(1) from (SELECT * FROM  TTUSER .BS_SP_0507 minus SELECT * FROM  TTUSER .BS_SP);


八. 收集統(tǒng)計信息

call ttOptEstimateStats(TTUSER.BS_SP,1,51 PERCENT);
call ttOptEstimateStats(TTUSER.BS_SPSE,1,51 PERCENT);


END


更多精彩干貨分享

點擊下方名片關(guān)注

IT那活兒

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/129896.html

相關(guān)文章

  • Android開發(fā)經(jīng)驗實戰(zhàn)總結(jié)

    摘要:以前一直想寫一篇總結(jié)開發(fā)經(jīng)驗的文章,估計當(dāng)時的我還達不到某種水平,所以思路跟不上,下筆又捉襟見肘。在需求都還沒完成的時候把大量時間花在優(yōu)化上是本末倒置的優(yōu)化要用實際數(shù)據(jù)說話,借助測試工具進行檢測如網(wǎng)易的騰訊的和,科大訊飛的,的。 以前一直想寫一篇總結(jié) Android 開發(fā)經(jīng)驗的文章,估計當(dāng)時的我還達不到某種水平,所以思路跟不上,下筆又捉襟見肘。近日,思路較為明朗,于是重新操起鍵盤開始碼...

    iflove 評論0 收藏0
  • 談一談Vuex

    摘要:是什么官方文檔說道是一個專為應(yīng)用程序開發(fā)的狀態(tài)管理模式。觸發(fā)之別名篇觸發(fā)之對象展開運算符篇觸發(fā)之對象展開運算符別名篇先引用官方文檔的說法類似于,不同在于提交的是,而不是直接變更狀態(tài)。 Vuex是什么 官方文檔說道:Vuex 是一個專為 Vue.js 應(yīng)用程序開發(fā)的狀態(tài)管理模式。它采用集中式存儲管理應(yīng)用的所有組件的狀態(tài),并以相應(yīng)的規(guī)則保證狀態(tài)以一種可預(yù)測的方式發(fā)生變化 什么是狀態(tài)管理模式...

    nifhlheimr 評論0 收藏0
  • vue-router 實現(xiàn)分析

    摘要:而組件在創(chuàng)建時,又怎么會去調(diào)用呢這是由于將自身作為一個插件安裝到了,通過注冊了一個鉤子函數(shù),從而在之后所有的組件創(chuàng)建時都會調(diào)用該鉤子函數(shù),給了檢查是否有參數(shù),從而進行初始化的機會。 vue-router 是 Vue.js 官方的路由庫,本著學(xué)習(xí)的目的,我對 vue-router 的源碼進行了閱讀和分析,分享出來給其他感興趣的同學(xué)做個參考吧。 參考 源碼:vuejs/vue-route...

    psychola 評論0 收藏0
  • PaaS大戰(zhàn)一觸即發(fā) Oracle劍拔弩張

    摘要:和聯(lián)合總裁及董事會成員將在下周宣布更多的戰(zhàn)略。曾在去年月的大會上宣布了公共云計劃,其中包含了和的相關(guān)功能,以及云服務(wù)和數(shù)據(jù)庫云服務(wù)。目前已經(jīng)表示將會把和整合進自身的公有云之中。但截至到目前,這些組件仍然處在預(yù)覽階段。 在當(dāng)前的云計算時代,PaaS領(lǐng)域已經(jīng)成為各大巨頭必爭之地。PaaS提供應(yīng)用服務(wù)引擎,用戶基于該應(yīng)用服務(wù)引擎可構(gòu)建該類的應(yīng)用,典型的案例有Google App Engine、...

    劉永祥 評論0 收藏0
  • Vue用props給data賦初始值遇到的問題

    摘要:基于此,我們很自然的就想到中有監(jiān)聽作用的兩個功能。正如在所說小結(jié)一下文章開頭的問題是一個關(guān)于基本數(shù)據(jù)類型和引用數(shù)據(jù)類型賦值的問題在初始化時被遞歸遍歷轉(zhuǎn)化是用于實現(xiàn)雙向綁定這么看來,二者是沒有任何關(guān)系的。想當(dāng)然和不加深究實為大忌,引以為戒。 2018-11-28更:文章發(fā)布后因為存在理解錯誤,經(jīng)@Kim09AI同學(xué)提醒后做了調(diào)整,在此深表感謝。其他不足之處,還望不吝賜教。 前言 前段時間...

    luck 評論0 收藏0

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<