亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

ORACLE數(shù)據(jù)庫(kù)管理員的職責(zé)(轉(zhuǎn))

瀏覽:7日期:2023-11-16 19:27:16
應(yīng)按如下方式對(duì)Oracle數(shù)據(jù)庫(kù)系統(tǒng)做定期監(jiān)控:?(1). 天天對(duì)ORACLE數(shù)據(jù)庫(kù)的運(yùn)行狀態(tài),日志文件,備份情況,數(shù)據(jù)庫(kù)的空間使用情況,系統(tǒng)資源的使用情況進(jìn)行檢查,發(fā)現(xiàn)并解決問題。 (2). 每周對(duì)數(shù)據(jù)庫(kù)對(duì)象的空間擴(kuò)展情況,數(shù)據(jù)的增長(zhǎng)情況進(jìn)行監(jiān)控,對(duì)數(shù)據(jù)庫(kù)做健康檢查,對(duì)數(shù)據(jù)庫(kù)對(duì)象的狀態(tài)做檢查。 (3). 每月對(duì)表和索引等進(jìn)行Analyze,檢查表空間碎片,尋找數(shù)據(jù)庫(kù)性能調(diào)整的機(jī)會(huì),進(jìn)行數(shù)據(jù)庫(kù)性能調(diào)整,提出下一步空間治理計(jì)劃,對(duì)ORACLE數(shù)據(jù)庫(kù)狀態(tài)進(jìn)行一次全面檢查。 天天的工作: (1).確認(rèn)所有的INSTANCE狀態(tài)正常。登陸到所有數(shù)據(jù)庫(kù)或例程,檢測(cè)ORACLE后臺(tái)進(jìn)程: $ps –efgrep ora (2). 檢查文件系統(tǒng)的使用(剩余空間)。假如文件系統(tǒng)的剩余空間小于20%,需刪除不用的文件以釋放空間:$df –k(3). 檢查日志文件和trace文件記錄alert和trace文件中的錯(cuò)誤。連接到每個(gè)需治理的系統(tǒng):使用'telnet'對(duì)每個(gè)數(shù)據(jù)庫(kù),cd到bdump目錄,通常是$ORACLE_BASE/bdump使用 Unix 'tail'命令來(lái)查看alert_.log文件,假如發(fā)現(xiàn)任何新的ORA-錯(cuò)誤,記錄并解決。(4). 檢查數(shù)據(jù)庫(kù)當(dāng)日備份的有效性。對(duì)RMAN備份方式: 檢查第三方備份工具的備份日志以確定備份是否成功。對(duì)EXPORT備份方式: 檢查exp日志文件以確定備份是否成功 對(duì)其他備份方式: 檢查相應(yīng)的日志文件(5). 檢查數(shù)據(jù)文件的狀態(tài)記錄狀態(tài)不是“online”的數(shù)據(jù)文件,并做恢復(fù):Select file_name from dba_data_files where status='OFFLINE';(6). 檢查表空間的使用情況:SELECT tablespace_name,max_m,count_blocks free_blk_cnt,sum_free_m,to_char(100*sum_free_m/sum_m, '99.99') '%' AS pct_free FROM (SELECT tablespace_name,sum(bytes)/1024/1024 AS sum_m FROM dba_data_files GROUP BY tablespace_name),(SELECT tablespace_name AS fs_ts_name, max(bytes)/1024/1024 AS max_m,count(blocks) AS count_blocks,sum(bytes/1024/1024) AS sum_free_m FROM dba_free_space GROUP BY tablespace_name) WHERE tablespace_name=fs_ts_name; (7). 檢查剩余表空間: SELECT tablespace_name,sum(blocks) as free_blk,trunc(sum(bytes)/(1024*1024)) as free_m, max(bytes)/(1024) as big_chunk_k,count(*) as num_chunks FROM dba_free_space GROUP BY tablespace_name; (8). 監(jiān)控?cái)?shù)據(jù)庫(kù)性能: 運(yùn)行bstat/estat生成系統(tǒng)報(bào)告,或者使用statspack收集統(tǒng)計(jì)數(shù)據(jù); (9). 檢查數(shù)據(jù)庫(kù)性能,記錄數(shù)據(jù)庫(kù)的cpu使用、IO、buffer命中率等等; 使用vmstat,iostat,glance,top等命令。 (10). 日常出現(xiàn)問題的處理。 每周的工作:(1). 監(jiān)控?cái)?shù)據(jù)庫(kù)對(duì)象的空間擴(kuò)展情況: 根據(jù)本周天天的檢查情況找到空間擴(kuò)展很快的數(shù)據(jù)庫(kù)對(duì)象,并采取相應(yīng)的措施 -- 刪除歷史數(shù)據(jù) --- 擴(kuò)表空間alter tablespace add datafile‘xxxx.dbf’ size 10M;--- 調(diào)整數(shù)據(jù)對(duì)象的存儲(chǔ)參數(shù) next extent pct_increase (2). 監(jiān)控?cái)?shù)據(jù)量的增長(zhǎng)情況 根據(jù)本周天天的檢查情況找到記錄數(shù)量增長(zhǎng)很快的數(shù)據(jù)庫(kù)對(duì)象,并采取相應(yīng)的措施 -- 刪除歷史數(shù)據(jù) --- 擴(kuò)表空間 alter tablespace add datafile ‘xxx.dbf’ size 100M;?(3). 系統(tǒng)健康檢查檢查以下內(nèi)容: init.ora controlfile redo log file archiving sort area size tablespace(system,temporary,tablespace fragment) datafiles(autoextend,location) object(number of extent,next extent,index) rollback segment logging &tracing(alert.log,max_dump_file_size,sqlnet) (4). 檢查無(wú)效的數(shù)據(jù)庫(kù)對(duì)象:SELECT owner, object_name, object_type FROM dba_objects WHERE status='INVALID';(5). 檢查不起作用的約束 SELECT owner, constraint_name, table_name,constraint_type,status FROM dba_constraints WHERE status = 'DISABLED’ AND constraint_type = 'P'(6). 檢查無(wú)效的trigger SELECT owner,trigger_name,table_name,status FROM dba_triggers WHERE status ='DISABLED’;每月的工作(1). Analyze Tables/Indexes/Cluster analyze table estimate statistics sample 50 percent; (2). 檢查表空間碎片 根據(jù)本月每周的檢查分析數(shù)據(jù)庫(kù)碎片情況,找到相應(yīng)的解決方法。 (3). 尋找數(shù)據(jù)庫(kù)性能調(diào)整的機(jī)會(huì)比較天天對(duì)數(shù)據(jù)庫(kù)性能的監(jiān)控報(bào)告,確定是否有必要對(duì)數(shù)據(jù)庫(kù)性能進(jìn)行調(diào)整 (4). 數(shù)據(jù)庫(kù)性能調(diào)整 如有必要,進(jìn)行性能調(diào)整 (5). 提出下一步空間治理計(jì)劃 根據(jù)每周的監(jiān)控,提出空間治理的改進(jìn)方法 Oracle DBA 日常治理 目的:這篇文檔有很具體的資料記錄著對(duì)一個(gè)甚至更多的ORACLE 數(shù)據(jù)庫(kù)天天的,每月的,每年的運(yùn)行的狀態(tài)的結(jié)果及檢查的結(jié)果,在文檔的附錄中你將會(huì)看到所有檢查,修改的SQL和PL/SQL 代碼。 目錄 1.日常維護(hù)程序A. 檢查已起的所有實(shí)例B. 查找一些新的警告日志 C. 檢查DBSNMP 是否在運(yùn)行 D. 檢查數(shù)據(jù)庫(kù)備份是否正確 E. 檢查備份到磁帶中的文件是否正確 F. 檢查數(shù)據(jù)庫(kù)的性能是否正常合理,是否有足夠的空間和資源 G. 將文檔日志復(fù)制到備份的數(shù)據(jù)庫(kù)中 H. 要常看DBA 用戶手冊(cè) 2.晚間維護(hù)程序 A.收集VOLUMETRIC 的數(shù)據(jù) 3.每周維護(hù)工作 A. 查找那些破壞規(guī)則的OBJECT B. 查找是否有違反安全策略的問題 C. 查看錯(cuò)誤地方的SQL*NET 日志 D. 將所有的警告日志存檔 E. 經(jīng)常訪問供給商的主頁(yè) 4.月維護(hù)程序 A. 查看對(duì)數(shù)據(jù)庫(kù)會(huì)產(chǎn)生危害的增長(zhǎng)速度 B. 回顧以前數(shù)據(jù)庫(kù)優(yōu)化性能的調(diào)整 C. 查看I/O 的屏頸問題 D. 回顧FRAGMENTATION E. 將來(lái)的執(zhí)行計(jì)劃 F. 查看調(diào)整點(diǎn)和維護(hù) 5.附錄 A. 月維護(hù)過程 B. 晚間維護(hù)過程 C. 周維護(hù)過程 ?一.日維護(hù)過程 A.查看所有的實(shí)例是否已起 確定數(shù)據(jù)庫(kù)是可用的,把每個(gè)實(shí)例寫入日志并且運(yùn)行日?qǐng)?bào)告或是運(yùn)行測(cè)試 文件。當(dāng)然有一些操作我們是希望它能自動(dòng)運(yùn)行的。 可選擇執(zhí)行:用ORACLE 治理器中的‘PROBE’事件來(lái)查看 B.查找新的警告日志文件 1. 聯(lián)接每一個(gè)操作治理系統(tǒng) 2. 使用‘TELNET’或是可比較程序 3. 對(duì)每一個(gè)治理實(shí)例,經(jīng)常的執(zhí)行$ORACLE_BASE//bdump 操 作,并使其能回退到控制數(shù)據(jù)庫(kù)的SID。 4. 在提示下,使用UNIX 中的‘TAIL’命令查看alert_.log,或是用其他方式檢查文件中最近時(shí)期的警告日志。 5. 假如以前出現(xiàn)過的一些ORA_ERRORS 又出現(xiàn),將它記錄到數(shù)據(jù)庫(kù)恢復(fù)日志中并且仔細(xì)的研究它們,這個(gè)數(shù)據(jù)庫(kù)恢復(fù)日志在〈FILE〉中。 C.查看DBSNMP 的運(yùn)行情況檢查每個(gè)被治理機(jī)器的‘DBSNMP’進(jìn)程并將它們記錄到日志中。 在UNIX 中,在命令行中,鍵入ps –ef grep dbsnmp,將回看到2個(gè)DBSNMP 進(jìn)程在運(yùn)行。假如沒有,重啟DBSNMP。 D.查數(shù)據(jù)庫(kù)備份是否成功 E.檢查備份的磁帶文檔是否成功 F.檢查對(duì)合理的性能來(lái)說(shuō)是否有足夠的資源 1. 檢查在表空間中有沒有剩余空間。 對(duì)每一個(gè)實(shí)例來(lái)說(shuō),檢查在表空間中是否存在有剩余空間來(lái)滿足當(dāng)天 的預(yù)期的需要。當(dāng)數(shù)據(jù)庫(kù)中已有的數(shù)據(jù)是穩(wěn)定的,數(shù)據(jù)日增長(zhǎng)的平均 數(shù)也是可以計(jì)算出來(lái),最小的剩余空間至少要能滿足天天數(shù)據(jù)的增 長(zhǎng)。 A) 運(yùn)行‘FREE.SQL’來(lái)檢查表空間的剩余空間。 B) 運(yùn)行‘SPACE.SQL’來(lái)檢查表空間中的剩余空間百分率 2. 檢查回滾段 回滾段的狀態(tài)一般是在線的,除了一些為復(fù)雜工作預(yù)備的專用 段,它一般狀態(tài)是離線的。 a) 每個(gè)數(shù)據(jù)庫(kù)都有一個(gè)回滾段名字的列表。 b) 你可以用V$ROLLSTAT 來(lái)查詢?cè)诰€或是離線的回滾段的現(xiàn)在狀 態(tài). c) 對(duì)于所有回滾段的存儲(chǔ)參數(shù)及名字,可用 DBA_ROLLBACK_SEGS 來(lái)查詢。但是它不如V$ROLLSTAT正確。 3. 識(shí)別出一些過分的增長(zhǎng) 查看數(shù)據(jù)庫(kù)中超出資源或是增長(zhǎng)速度過大的段,這些段的存儲(chǔ)參 數(shù)需要調(diào)整。 a) 收集日數(shù)據(jù)大小的信息, 可以用'ANALYZE5PCT.SQL'。假如你收集的是每晚的信息,則可跳過這一步。 b) 檢查當(dāng)前的范圍,可用‘NR.EXTENTS.SQL’。 c) 查詢當(dāng)前表的大小信息。 d) 查詢當(dāng)前索引大小的信息。 e) 查詢?cè)鲩L(zhǎng)趨勢(shì)。 4. 確定空間的范圍。 假如范圍空間對(duì)象的NEXT_EXTENT 比表空間所能提供的最大范圍還要大,那么這將影響數(shù)據(jù)庫(kù)的運(yùn)行。假如我們找到了這個(gè)目標(biāo),可以用‘ALTER TABLESPACE COALESCE’調(diào)查它的位置,或加另外的數(shù)據(jù)文件。 A)運(yùn)行‘SPACEBOUND.SQL’。假如都是正常的,將不返回任何行。 5. 回顧C(jī)PU,內(nèi)存,網(wǎng)絡(luò),硬件資源論點(diǎn)的過程 A)檢查CPU的利用情況,進(jìn)到x:.htm =>system metrics=>CPU 利用頁(yè),CPU 的最大限度為400,當(dāng)CPU 的占用保持 在350 以上有一段時(shí)間的話,我們就需要查看及研究出現(xiàn)的問題。 G.將存檔日志復(fù)制到備用數(shù)據(jù)庫(kù)中 假如有一個(gè)備用數(shù)據(jù)庫(kù),將適當(dāng)?shù)拇鏅n日志復(fù)制到備用數(shù)據(jù)庫(kù)的期望 位置,備用數(shù)據(jù)庫(kù)中保存最近期的數(shù)據(jù)。 H. 經(jīng)常查閱DBA 用戶手冊(cè) 假如有可能的話,要廣泛的閱讀,包括DBA 手冊(cè),行業(yè)雜志,新聞 組或是郵件列表。 ------------------------------------------------------------- 二.晚間維護(hù)過程 大部分的數(shù)據(jù)庫(kù)產(chǎn)品將受益于每晚確定的檢查進(jìn)程的運(yùn)行。 A. 收集VOLUMETRIC 數(shù)據(jù) 1. 分析計(jì)劃和收集數(shù)據(jù) 更準(zhǔn)確的分析計(jì)算并保存結(jié)果。 a) 假如你現(xiàn)在沒有作這些的話,用‘MK VOLFACT.SQL’來(lái)創(chuàng)建測(cè)定體積的 表。 b) 收集晚間數(shù)據(jù)大小的信息,用‘ANALYZE COMP.SQL’。 c) 收集統(tǒng)計(jì)結(jié)果,用‘POP VOL.SQL’。 d) 在空閑的時(shí)候檢查數(shù)據(jù),可能的話,每周或每個(gè)月進(jìn)行。 我是用MS Excel 和ODBC 的聯(lián)接來(lái)檢查數(shù)據(jù)和圖表的增長(zhǎng) ------------------------------------------------------------- 三.每周維護(hù)過程 A. 查找被破壞的目標(biāo) 1. 對(duì)于每個(gè)給定表空間的對(duì)象來(lái)說(shuō),NEXT_EXTENT 的大小是相同的,如12/14/98,缺省的NEXT_EXTENT 的DATAHI 為1G,DATALO 為500MB, INDEXES 為256MB。 A) 檢查NEXT_EXTENT 的設(shè)置,可用‘NEXTEXT。SQL’。 B) 檢查已有的EXTENTS,可用‘EXISTEXT。SQL’。 2. 所有的表都應(yīng)該有唯一的主鍵 a) 查看那些表沒有主鍵,可用‘NO_PK.SQL’。 b) 查找那些主鍵是沒有發(fā)揮作用的,可用'DIS_PK.SQL'。 c) 所有作索引的主鍵都要是唯一的,可用'NONUPK.SQL'來(lái)檢 查。 3. 所有的索引都要放到索引表空間中。運(yùn)行‘MKREBUILD_IDX。SQL’ 4. 不同的環(huán)境之間的計(jì)劃應(yīng)該是同樣的,非凡是測(cè)試環(huán)境和成品環(huán)境之間的計(jì)劃應(yīng)該相同。 a) 檢查不同的2 個(gè)運(yùn)行環(huán)境中的數(shù)據(jù)類型是否一致,可用'DATATYPE.SQL'。 b) 在2 個(gè)不同的實(shí)例中尋找對(duì)象的不同點(diǎn),可用'OBJ_COORD.SQL'。 c) 更好的做法是,使用一種工具,象尋求軟件的計(jì)劃治理器那樣的工具。 B. 查看是否有危害到安全策略的問題。 C. 查看報(bào)錯(cuò)的SQL*NET 日志。 1. 客戶端的日志。 2. 服務(wù)器端的日志。 D..將所有的警告日志存檔 E..供給商的主頁(yè) 1. ORACLE 供給商 http://www.oracle.com http://technet.oracle.com http://www.oracle.com/support http://www.oramag.com 2. Quest Software http://www.quests.com 3. Sun Microsystems http://www.sun.com ---------------------------------------------------------------- 四.月維護(hù)過程 A.查看對(duì)數(shù)據(jù)庫(kù)會(huì)產(chǎn)生危害的增長(zhǎng)速度 1. 從以前的記錄或報(bào)告中回顧段增長(zhǎng)的變化以此來(lái)確定段增長(zhǎng)帶來(lái)危害 B. 回顧以前數(shù)據(jù)庫(kù)優(yōu)化性能的調(diào)整 1. 回顧一般ORACLE 數(shù)據(jù)庫(kù)的調(diào)整點(diǎn),比較以前的報(bào)告來(lái)確定有害的發(fā)展趨勢(shì)。 C. 查看I/O 的屏頸問題 1. 查看前期數(shù)據(jù)庫(kù)文件的活動(dòng)性,比較以前的輸出來(lái)判定有可能導(dǎo)致屏頸問題的趨勢(shì)。 D. 回顧FRAGMENTATION E. 計(jì)劃數(shù)據(jù)庫(kù)將來(lái)的性能 1. 比較ORACLE 和操作系統(tǒng)的CPU,內(nèi)存,網(wǎng)絡(luò),及硬盤的利用率以此 來(lái)確定在近期將會(huì)有的一些資源爭(zhēng)奪的趨勢(shì) 2. 當(dāng)系統(tǒng)將超出范圍時(shí)要把性能趨勢(shì)當(dāng)作服務(wù)水平的協(xié)議來(lái)看 F. 完成調(diào)整和維護(hù)工作 1.使修改滿足避免系統(tǒng)資源的爭(zhēng)奪的需要,這里面包括增加新資源或使預(yù)期的停工。 ---------------------------------------------------------------- 五.附錄 A. 日常程序 -- free.sql --To verify free space in tablespaces --Minimum amount of free space --document your thresholds: -- = m SELECT tablespace_name, sum ( blocks ) as free_blk , trunc ( sum ( bytes ) / (1024*1024) ) as free_m, max ( bytes ) / (1024) as big_chunk_k, count (*) as num_chunks FROM dba_free_space GROUP BY tablespace_name;1. Space.sql -- space.sql -- To check free, pct_free, and allocated space within a tablespace -- 11/24/98 SELECT tablespace_name, largest_free_chunk , nr_free_chunks, sum_alloc_blocks, sum_free_blocks , to_char(100*sum_free_blocks/sum_alloc_blocks, '09.99') '%' AS pct_free FROM ( SELECT tablespace_name , sum(blocks) AS sum_alloc_blocks FROM dba_data_files GROUP BY tablespace_name ) , ( SELECT tablespace_name AS fs_ts_name , max(blocks) AS largest_free_chunk , count(blocks) AS nr_free_chunks , sum(blocks) AS sum_free_blocks FROM dba_free_space GROUP BY tablespace_name ) WHERE tablespace_name = fs_ts_name 2. analyze5pct.sql -- analyze5pct.sql -- To analyze tables and indexes quickly, using a 5% sample size -- (do not use this script if you are performing the overnight -- collection of volumetric data) -- 11/30/98 BEGIN dbms_utility.analyze_schema ( '&OWNER', 'ESTIMATE', NULL, 5 ) ; END ; / 3. nr_extents.sql -- nr_extents.sql -- To find out any object reaching -- extents, and manually upgrade it to allow unlimited -- max_extents (thus only objects we *expect* to be big -- are allowed to become big) -- 11/30/98 SELECT e.owner, e.segment_type , e.segment_name , count(*) as nr_extents , s.max_extents , to_char ( sum ( e.bytes ) / ( 1024 * 1024 ) , '999,999.90') as MB FROM dba_extents e , dba_segments s WHERE e.segment_name = s.segment_name GROUP BY e.owner, e.segment_type , e.segment_name , s.max_extents HAVING count(*)> &THRESHOLD OR ( ( s.max_extents - count(*) ) ORDER BY count(*) desc 4. spacebound.sql -- spacebound.sql -- To identify space-bound objects. If all is well, no rows are returned. -- If any space-bound objects are found, look at value of NEXT extent -- size to figure out what happened. -- Then use coalesce (alter tablespace coalesce . -- Lastly, add another datafile to the tablespace if needed. -- 11/30/98 SELECT a.table_name, a.next_extent, a.tablespace_name FROM all_tables a, ( SELECT tablespace_name, max(bytes) as big_chunk FROM dba_free_space GROUP BY tablespace_name ) f WHERE f.tablespace_name = a.tablespace_name AND a.next_extent> f.big_chunk B. 每晚處理程序 1. mk_volfact.sql -- mk_volfact.sql (only run this once to set it up; do not run it nightly! ) -- -- Table UTL_VOL_FACTS CREATE TABLE utl_vol_facts ( table_name VARCHAR2(30), num_rows NUMBER, meas_dt DATE ) TABLESPACE platab STORAGE ( INITIAL 128k NEXT 128k PCTINCREASE 0 MINEXTENTS 1 MAXEXTENTS unlimited ) / -- Public Synonym CREATE PUBLIC SYNONYM utl_vol_facts FOR &OWNER..utl_vol_facts / -- Grants for UTL_VOL_FACTS GRANT SELECT ON utl_vol_facts TO public / 2. analyze_comp.sql -- -- analyze_comp.sql -- BEGIN sys.dbms_utility.analyze_schema ( '&OWNER','COMPUTE'); END ; / 3. pop_vol.sql -- -- pop_vol.sql -- insert into utl_vol_facts select table_name , NVL ( num_rows, 0) as num_rows , trunc ( last_analyzed ) as meas_dt from all_tables -- or just user_tables where owner in ('&OWNER') -- or a comma-separated list of owners / commit / C. 每周處理程序 1. nextext.sql -- -- nextext.sql -- -- To find tables that don't match the tablespace default for NEXT extent. -- The implicit rule here is that every table in a given tablespace should -- use the exact same value for NEXT, which should also be the tablespace's -- default value for NEXT. -- -- This tells us what the setting for NEXT is for these objects today. -- -- 11/30/98 SELECT segment_name, segment_type, ds.next_extent as Actual_Next , dt.tablespace_name, dt.next_extent as Default_Next FROM dba_tablespaces dt, dba_segments ds WHERE dt.tablespace_name = ds.tablespace_name AND dt.next_extent !=ds.next_extent AND ds.owner = UPPER ( '&OWNER' ) ORDER BY tablespace_name, segment_type, segment_name 2. existext.sql -- -- existext.sql -- -- To check existing extents -- -- This tells us how many of each object's extents differ in size from -- the tablespace's default size. If this report shows a lot of different -- sized extents, your free space is likely to become fragmented. If so, -- this tablespace is a candidate for reorganizing. -- -- 12/15/98 SELECT segment_name, segment_type , count(*) as nr_exts , sum ( DECODE ( dx.bytes,dt.next_extent,0,1) ) as nr_illsized_exts , dt.tablespace_name, dt.next_extent as dflt_ext_size FROM dba_tablespaces dt, dba_extents dx WHERE dt.tablespace_name = dx.tablespace_name AND dx.owner = '&OWNER' GROUP BY segment_name, segment_type, dt.tablespace_name, dt.next_extent 3. No_pk.sql -- -- no_pk.sql -- -- To find tables without PK constraint -- -- 11/2/98 SELECT table_name FROM all_tables WHERE owner = '&OWNER' MINUS SELECT table_name FROM all_constraints WHERE owner = '&&OWNER' AND constraint_type = 'P' 4. disPK.sql -- -- disPK.sql -- -- To find out which primary keys are disabled -- -- 11/30/98 SELECT owner, constraint_name, table_name, status FROM all_constraints WHERE owner = '&OWNER' AND status = 'DISABLED’ AND constraint_type = 'P' 5. nonuPK.sql -- -- nonuPK.sql -- -- To find tables with nonunique PK indexes. Requires that PK names -- follow a naming convention. An alternative query follows that -- does not have this requirement, but runs more slowly. -- -- 11/2/98 SELECT index_name, table_name, uniqueness FROM all_indexes WHERE index_name like '&PKNAME%' AND owner = '&OWNER' AND uniqueness = 'NONUNIQUE' SELECT c.constraint_name, i.tablespace_name, i.uniqueness FROM all_constraints c , all_indexes i WHERE c.owner = UPPER ( '&OWNER' ) AND i.uniqueness = 'NONUNIQUE' AND c.constraint_type = 'P' AND i.index_name = c.constraint_name 6. mkrebuild_idx.sql -- -- mkrebuild_idx.sql -- -- Rebuild indexes to have correct storage parameters -- -- 11/2/98 SELECT 'alter index ' index_name ' rebuild ' , 'tablespace INDEXES storage ' ' ( initial 256 K next 256 K pctincrease 0 ) ; ' FROM all_indexes WHERE ( tablespace_name ! = 'INDEXES' OR next_extent != ( 256 * 1024 ) ) AND owner = '&OWNER' / 7. datatype.sql -- -- datatype.sql -- -- To check datatype consistency between two environments -- -- 11/30/98 SELECT table_name, column_name, data_type, data_length, data_precision, data_scale, nullable FROM all_tab_columns -- first environment WHERE owner = '&OWNER' MINUS SELECT table_name, column_name, data_type, data_length, data_precision, data_scale, nullable FROM all_tab_columns@&my_db_link -- second environment WHERE owner = '&OWNER2' order by table_name, column_name 8. obj_coord.sql -- -- obj_coord.sql -- -- To find out any difference in objects between two instances -- -- 12/08/98 SELECT object_name, object_type FROM user_objects MINUS SELECT object_name, object_type FROM user_objects@&my_db_link;?
主站蜘蛛池模板: 91精品观看91久久久久久 | 国产玖玖 | 色一级| 黄色网页免费看 | 欧美一级视频在线高清观看 | 在线观看自拍视频 | 日韩欧美一区二区在线观看 | 小明看看免费 | 亚洲成在人线免费视频 | 九九国产在线视频 | 欧美aaaav免费大片 | 成人在线视屏 | 亚洲永久中文字幕在线 | 黄色大片视频网站 | 亚洲国产高清在线 | 国产91在线 | 日本 | 在线欧美日韩精品一区二区 | 免费观看的黄色网址 | 日本黄色毛片 | 打电话系列国产在线 | 久久久久久综合成人精品 | 能看av的网址 | 欧美日韩一区二区视频免费看 | 狼人综合伊人网 | 一级做a爱过程免费视频超级 | 国产男同志gay毛片欧美 | 亚洲精品永久www嫩草 | 狠狠色丁香九九婷婷综合五月 | 免费国内精品久久久久影院 | 欧美国产小视频 | 欧美视频二区 | 国产麻豆免费 | 欧美一级在线观看视频 | 日韩视频免费一区二区三区 | 亚洲图色视频 | 不卡一区二区在线观看 | 欧美一区二区三区免费观看视频 | 成人性色生活影片 | 毛片黄 | 成人午夜在线播放 | 国产日韩欧美综合 |