freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

阿里巴巴數(shù)據(jù)庫操作手冊-資料下載頁

2025-07-07 16:00本頁面
  

【正文】 重建索引時不設(shè)置nologging選項l 重建索引時沒有指定online, 結(jié)果阻塞表上的DML操作,影響應用, 但是在11G前,rebuild online 在開始和結(jié)束階段還是會申請類型為4的TM鎖,然后再做鎖轉(zhuǎn)化,如果當時有DML沒有提交的的話, 還是會發(fā)生堵塞,所以在重建索引的時候,盡量避免并發(fā)的DML,設(shè)置online rebuild時, 在該表上將無法進行并行的DML操作。l 在9i以及之前的版本,重建索引將不會自動收集統(tǒng)計信息,需要指定COMPUTE STATISTICS參數(shù), 但是在收集索引統(tǒng)計信息的同時也會收集該列和表的統(tǒng)計信息。l 分區(qū)索引重建時應該分別對每個分區(qū)進行重建, 在9i中加online選項的話默認會將分區(qū)索引的統(tǒng)計信息清除,可能引起執(zhí)行計劃出錯。l 移動lob的數(shù)據(jù)對象, 會自動將對lob對象所對應的lob類型的索引移動到同一個表空間, 需關(guān)注該表空間空余空間大小。四、 操作流程a) 首先要明確因何種原因重建索引,根據(jù)原因確定重建方案和時間,如果不是需要緊急處理的情況,重建索引應該安排在晚上十點后完成。b) 準備重建索引腳本或命令,可用explain大致估算重建后索引需要占用的空間,檢查目標表空間定義和剩余空間,檢查臨時表空間是否足夠。c) 檢查數(shù)據(jù)庫版本,確定重建索引的其他選項, 包括是否開啟并行,是否收集統(tǒng)計信息等d) 創(chuàng)建新表上的索引操作屬于一般變更或重大變更,在做之前必須在ITIL中提交相應的變更申請。4. 2執(zhí)行過程 e) 用應用賬戶登錄數(shù)據(jù)庫,SHOW USER檢查是否連接到正確的schema。嚴禁使用sys、system等用戶建表。f) 執(zhí)行重建索引腳本或命令。對于同步庫, 則需根據(jù)重建原因判斷是否在同步庫也重建索引。g) 索引重建過程中, 需要監(jiān)控temp表空間的消耗,目標表空間的消耗, 以及通過v$session_longops 等其他視圖查看重建的進度。h) 查看過程若無報錯,退出當前登錄。若有報錯,找出報錯的地方,修改確認再執(zhí)行,直至執(zhí)行通過,最后退出當前登錄。i) 常規(guī)檢查:@dbcheck @ind j) 查看sql的執(zhí)行計劃,判斷所關(guān)注的sql執(zhí)行計劃是否正確。k) 聯(lián)系開發(fā)接口人進行應用檢查,變更是否成功以應用測試結(jié)果為準。l) 如果有修改統(tǒng)計信息, 需要檢查統(tǒng)計信息。五、 核心對象風險1) 由于核心對象通常比較大, sql關(guān)聯(lián)比較復雜,訪問比較頻繁, 重建index的變更很可能會超過十分鐘,風險比較大,所以務必要在業(yè)務低峰期進行。2) 對于核心對象的索引重建, 事先需要跟應用溝通一下,所制定的方案需要在同版本的測試庫上做完整的測試,確認下的方案需要經(jīng)過cab會議烤爐,經(jīng)過主管同意。3) 在核心對象上重建索引,需要關(guān)注新索引影響的范圍是單個sql還是會影響其他sql,應該事前在SQL全文索引中,檢查并整理出可能影響到的sql,如果重建后導致其他sql執(zhí)行計劃發(fā)生了意想不到的變化, 需要考慮后續(xù)方案或者回退方案。4) 在11G版本之前,重建索引前, 要確保索引所在表上的長事務sql已經(jīng)結(jié)束。5) 對核心大索引進行rebuild,可以在會話級加大db_file_multiblock_read_count以便加大單次讀取的block的數(shù)量, 但是在linux上單次IO的上限是1M。6) 查看索引的統(tǒng)計信息是否和表的統(tǒng)計信息相一致,再9i中,要注意到重建索引并收集索引統(tǒng)計信息會引起的表和索引列統(tǒng)計信息的改變。,7) 需要考慮用于排序的臨時表空間是否足夠,如果可能會不夠的話, 建議創(chuàng)建一個大的臨時表空間用來重建索引,重建完索引后在drop掉該表空間??紤]索引所在的表空間是否足夠, 是否預加空間。六、 回退方案重建索引的過程存在一定風險,重建后也可能會導致單條或多條sql改變執(zhí)行計劃,直接或間接影響到數(shù)據(jù)庫和應用, 必須準備好回退方案。1)若在rebuild過程中失敗了,在目標表空間創(chuàng)建的是temporary 類型的segment, 系統(tǒng)會自動清理, 對原來的索引并沒有影響, 但為了確保Smon已經(jīng)被喚醒并清理完畢, 再一次的重建最好在一個小時之后在進行。2)若rebuild index online 長時間沒有響應,系統(tǒng)仍可控的話, 不要輕易嘗試cancel ,試著找出阻塞的原因, 如果cancel 或kill后遇到數(shù)據(jù)字典不一致(Bug 3805539), 如果不著急可以等待pmon自己去過清理, 如果著急的話, 可以嘗試手動清理清理(10GR2后)Logon as sysdbaDECLARERetVal BOOLEAN。OBJECT_ID BINARY_INTEGER。WAIT_FOR_LOCK BINARY_INTEGER。BEGINOBJECT_ID := 608365。 索引的OBJECT_IDWAIT_FOR_LOCK := NULL。RetVal := ()。COMMIT。END。/3)若rebuild index已經(jīng)完全結(jié)束,則無法回滾到原先的索引, 對此引發(fā)的突發(fā)問題, 需要根據(jù)遇到的實際場景, 進行有效地決策。12刪除索引一、 目的明確刪除索引操作的風險及標準流程,最大限度避免刪除索引操作帶來的故障。二、 適用范圍l 由于新建了索引,冗余的索引可以刪除的情況。l 存在的索引沒有在被使用或者并沒有加快查詢,浪費空間和降低DML效率的情況。l 由于SQL走錯執(zhí)行計劃,通過刪除索引來調(diào)整執(zhí)行計劃的情況。l 在IMP導入或者大數(shù)據(jù)量修訂的時候,不允許先刪除索引之后再重建的方式, 而是先設(shè)置索引不可用。l 由于刪除表所引起的索引刪除不在此范圍內(nèi)。l 無特殊說明,本手冊只是針對常規(guī)Btree索引,以及我們常用到的Local Partitioned Indexes和函數(shù)索引, 不涉及Bitmap類型和domain類型的索引及其他復雜索引。l 在11G中, 如果不是為了節(jié)約空間的考慮, 可以選擇將index設(shè)置成不可見,索引正常更新,但會被CBO忽略,觀察三天沒有問題的話再刪除。三、 風險評估l 登陸錯了schema,沒有經(jīng)過檢查就刪除,導致該schema下的同名的索引被刪除。l 試圖刪除沒有在使用的索引前, 沒有monitor一段時間, 結(jié)果發(fā)現(xiàn)該索引還是有在被使用的, 導致改sql走錯執(zhí)行計劃。l 試圖刪除關(guān)聯(lián)強制唯一或主鍵的索引或者嘗試刪除local index的一個索引分區(qū)會報錯。l 如果索引正在被使用,嘗試刪除索引的話因為申請不到類型為6的TM鎖,直接拋出resource busy的錯誤l 在IMP等導入數(shù)據(jù)的時候刪除索引, 因索引缺失引發(fā)的其他sql走錯執(zhí)行計劃的風險。l 索引刪除后shared_pool中的與這個表相關(guān)的sql都會被aged out,必須重新分析,這個帶來了潛在的風險。l 嘗試刪除系統(tǒng)維護的Lob字段將會拋錯, 只能對對應的lob字段進行操作四、 操作流程a) 首先要明確因何種原因刪除索引,根據(jù)原因確定刪除方案和時間,如果不是需要緊急處理的情況,刪除索引應該安排在晚上十點后完成。b) 準備刪除索引腳本或命令,如果是刪除不會被用到的索引,需要確保沒有sql引用該索引, 我們通常的方式是:1) monitoring index usage 至少一個星期, 以索引所在的schema然后查看V$OBJECT_USAGE2) 通過查看dba_hist_sql_plan,v$segment_statistics ,idb的全文索引, AWR,報告等方式確認。c) 刪除索引前必須準備好回滾方案, copy出索引的完整定義放置變更單中, 以便能及時回滾, 并且備份索引的統(tǒng)計信息。d) 刪除索引操作屬于一般變更或重大變更,在做之前必須在ITIL中提交相應的變更申請。4. 2執(zhí)行過程 e) 用應用賬戶登錄數(shù)據(jù)庫,SHOW USER檢查是否連接到正確的schema。嚴禁使用sys、system等用戶建表。f) 執(zhí)行刪除索引腳本或命令。對于同步庫, 則需根據(jù)刪除原因判斷是否在同步庫也刪除索引。g) 查看過程若無報錯,退出當前登錄。若有報錯,找出報錯的地方,修改確認再執(zhí)行,直至執(zhí)行通過,最后退出當前登錄。h) 常規(guī)檢查:@dbcheck @ind i) 整體的loadj) 查看關(guān)注的sql的執(zhí)行計劃,判斷所關(guān)注的sql執(zhí)行計劃是否正確。五、 核心對象風險1) 由于核心對象通常比較大, sql關(guān)聯(lián)比較復雜,訪問比較頻繁, 刪除index的變更風險比較大,所以務必要在業(yè)務低峰期進行。2) 對于核心對象的索引刪除, 事先需要跟應用溝通一下,所制定的方案需要在同版本的測試庫上做完整的測試,確認下的方案需要經(jīng)過cab會議討論,經(jīng)過主管同意。3) 在核心對象上刪除索引,需要關(guān)注影響的范圍是單個sql還是會影響其他sql,應該事前在SQL全文索引中,檢查并整理出可能影響到的sql,如果刪除后導致其他sql執(zhí)行計劃發(fā)生了意想不到的變化, 需要考慮后續(xù)方案或者回退方案。六、 回退方案刪除索引的過程存在一定風險,重建后也可能會導致單條或多條sql改變執(zhí)行計劃,直接或間接影響到數(shù)據(jù)庫和應用, 必須準備好回退方案。1)因事先保存了索引創(chuàng)建的完整定義,回滾的第一選擇是創(chuàng)建一個和原先一樣的索引, 并且回滾統(tǒng)計信息。具體創(chuàng)建的方法參見《新建索引操作手冊》2)若按照原來的定義創(chuàng)建后問題還是沒有解決,則無法回滾到原先的索引, 對此引發(fā)的突發(fā)問題, 需要根據(jù)遇到的實際場景, 進行有效地決策。13加分區(qū)一、 目的明確加分區(qū)操作的風險及標準流程,最大限度避免加分區(qū)操作帶來的故障。二、 適用范圍l 日常分區(qū)表維護。l 主要考慮增加range,list分區(qū)(hash分區(qū),不允許新加分區(qū),在系統(tǒng)規(guī)劃初始的時候充分考慮數(shù)據(jù)增長情況)。l 不考慮子分區(qū)情況(目前無系統(tǒng)使用子分區(qū))。l 不適用分區(qū)分裂情況,本文后面詳細敘述為何不使用分區(qū)分裂。三、 風險評估l 登錄到錯誤的schema下,導致分區(qū)到錯誤的schema里,而應用無法訪問。l 忽略了TABLESPACE參數(shù),導致分區(qū)建到了默認表空間,導致后續(xù)空間增長和維護困難。建議分區(qū)表的表空間和產(chǎn)品DBA確認溝通好。l 對于未來增量較快的表選擇了一個空間規(guī)劃不足的表空間,導致后續(xù)空間增長和維護困難。l 腳本末尾缺少分號,導致該分區(qū)沒有被創(chuàng)建上,而執(zhí)行DDL的過程又不會報錯。l 其他原因漏建了分區(qū),導致應用訪問錯誤。l 同步庫沒有及時創(chuàng)建相應的分區(qū),或者沒有更新同步配置,導致同步及應用出問題。l 加分區(qū),可能導致SQL執(zhí)行計劃走錯的風險。這個在國際站美國庫上存在過。請務必選擇在系統(tǒng)低峰期操作。l 分區(qū)表的分區(qū)名需與應用DBA,產(chǎn)品DBA,應用團隊溝通確認,是否有特殊命名規(guī)則依賴。四、 操作流程1. 準備工作a) 在準備發(fā)布腳本時,檢查分區(qū)類型,評估tablespace的剩余空間,選擇合適的表空間,并在加分區(qū)的時候指定表空間名字。b) 嚴禁使用Spilt 方式增加分區(qū),理由如下:i. 若spilt的分區(qū)有數(shù)據(jù),會導致local index為unusable;一般分區(qū)都是大表,后果不堪設(shè)想。ii. 若spilt的分區(qū)有數(shù)據(jù),會占用大量的臨時段。舉例:1. 假設(shè)A類型的數(shù)據(jù)有200M,它會在原來的分區(qū)擴展200M的臨時段,然后再把這200M切換到新的分區(qū)里去。iii. 不要存在僥幸心理,若存在各種歷史原因,請先修改表結(jié)構(gòu)定義后,再加分區(qū)!c) 在確定加分區(qū)類型之前,先確認分區(qū)類型,然后選擇相應的action進行操作:使用下面的命令確認所有者,表名,分區(qū)類型,默認表空間,間隔:Select OWNER, table_name, PARTITIONING_TYPE,DEF_TABLESPACE_NAME,INTERVAL From Dba_Part_Tables where owner=:1 and table_name=:2。i. 如果是LIST分區(qū):若是list分區(qū),先查看list分區(qū)的定義:apollo@CRMGSelect high_value,tablespace_name From User_Tab_Partitions Where table_name=’ORD_ORDER’。HIGH_VALUE TABLESPACE_NAME—————————— —————————–’save_temp’ APOLLO_IND‘closed’ APOLLO_INDdefault APOLLO_IND說明:如果HIGH_VALUE有default,那么該表是無法再加分區(qū),會報錯:ORA14323: cannot add partition when DEFAULT partition exists如果確認沒有default,那可以直接加分區(qū)了:alter table table_name add partition partition_name values (‘分區(qū)條件’)tablespace tablespace_name。結(jié)論:list分區(qū)嚴禁給予default分區(qū),否則無法添加其他值的分區(qū)。ii. 如果是RANGE分區(qū)Range分區(qū)我們主要用在時間上比較多,對range分區(qū)進行分類,有兩種模式:apollo@CRMGSelect , From User_Part_Tables a Where =’RANGE’。TABLE_NAME INTERVAL—————————— ——————————WT2 NUMTOYMINTERVAL(1,’MO
點擊復制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1