国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

Oracle Database 10g:最佳新特性(第三周:表空間管理)

瀏覽:6日期:2023-11-18 09:59:22
第三周:表空間治理名字中包含了什么?:改善的表空間治理 表空間治理得到了重大的改進,這可以歸因于一個 sparser SYSTEM、為用戶定義一個默認(rèn)表空間的支持、新的 SYSAUX、甚至重命名 您曾經(jīng)多少次因用戶在 SYSTEM 表空間中創(chuàng)建了非 SYS 和 SYSTEM 的段而傷透腦筋? 在 Oracle9i Database 之前,假如在創(chuàng)建用戶時沒有指定默認(rèn)表空間,那么它將默認(rèn)為 SYSTEM 表空間。假如用戶在創(chuàng)建一個段時沒有顯式地指定一個表空間,那么這個段將在 SYSTEM 中創(chuàng)建—前提是用戶在 SYSTEM 表空間中擁有配額(要么顯式地授予,要么通過系統(tǒng)權(quán)限 UNLIMITED TABLESPACE 來授予)。Oracle9i 答應(yīng) DBA 為所有未用顯式的臨時表空間子句創(chuàng)建的用戶指定一個默認(rèn)的臨時表空間,從而減少了這個問題。 在 Oracle Database 10g 中,您可以類似地為用戶指定一個默認(rèn)表空間。在數(shù)據(jù)庫創(chuàng)建期間,CREATE DATABASE 命令可以包含子句 DEFAULT TABLESPACE 。在創(chuàng)建之后,您可以通過發(fā)出以下命令來使一個表空間變成默認(rèn)表空間 ALTER DATABASE DEFAULT TABLESPACE <tsname>;未用 DEFAULT TABLESPACE 子句創(chuàng)建的所有用戶將以 作為它們的默認(rèn)表空間。您可以在任何時候通過這個 ALTER 命令來改變默認(rèn)表空間,從而答應(yīng)您在不同的節(jié)點上將不同的表空間指定為默認(rèn)表空間。 重要注重事項:擁有舊的表空間的所有用戶的默認(rèn)表空間都被修改為 ,即使有些表空間是為某些用戶顯式指定的。例如,假定用戶 USER1 和 USER2 的表空間分別是 TS1 和 TS2 — 它們是在用戶創(chuàng)建期間顯式指定的。數(shù)據(jù)庫當(dāng)前的默認(rèn)表空間是 TS2,但之后,數(shù)據(jù)庫的默認(rèn)表空間變?yōu)?TS1。即使 USER2 的默認(rèn)表空間是顯式指定為 TS2 的,它也將變?yōu)?TS1。小心這種邊界效應(yīng)! 假如在數(shù)據(jù)庫創(chuàng)建期間沒有指定默認(rèn)表空間,它將默認(rèn)為 SYSTEM。但您如何才能知道現(xiàn)有的數(shù)據(jù)庫的默認(rèn)表空間是哪一個?發(fā)出以下查詢: SELECT PROPERTY_VALUEFROM DATABASE_PROPERTIESWHERE PROPERTY_NAME = 'DEFAULT_PERMANENT_TABLESPACE';DATABASE_PROPERTIES 視圖顯示默認(rèn)表空間之外,還顯示一些非常重要的信息 — 例如默認(rèn)臨時表空間、全局?jǐn)?shù)據(jù)庫名、時區(qū)等。 非必要模式的默認(rèn)表空間 幾種模式(如智能代理用戶 DBSNMP、數(shù)據(jù)挖掘用戶 ODM)與用戶操作不直接相關(guān),但對數(shù)據(jù)庫完整性仍很重要。這些模式中的一些曾經(jīng)用 SYSTEM 作為它們的默認(rèn)表空間 — 這是在 SYSTEM 表空間內(nèi)對象增殖的又一個原因。 Oracle Database 10g 引進了一個新的稱為 SYSAUX 的表空間,它用來保存這些模式的對象。這個表空間是在數(shù)據(jù)庫創(chuàng)建期間自動創(chuàng)建的,并在本地進行治理。唯一答應(yīng)修改的是數(shù)據(jù)文件的名稱。 這種方法在 SYSTEM 損壞需要完整的數(shù)據(jù)庫恢復(fù)時,為恢復(fù)提供支持。SYSAUX 中的對象可以被恢復(fù)為任意正常的用戶對象,同時數(shù)據(jù)庫本身保持運行。 但假如您想將 SYSAUX 中的這些模式中的一些轉(zhuǎn)移到一個不同的表空間中時,該怎么辦?例如,考慮 LogMiner 使用的對象,這些對象的大小經(jīng)常增長,直到最終填滿表空間。出于可治理性的原因,您可能考慮將它們轉(zhuǎn)移到它們自己的表空間中。但實現(xiàn)這一目的的最好的方法是什么? 作為一個數(shù)據(jù)庫治理員,了解轉(zhuǎn)移這些非凡對象的正確過程對您而言是很重要的。幸運的是,Oracle Database 10g 提供了一個新的視圖使要憑猜測來做的工作形象化。這個視圖,V$SYSAUX_OCCUPANTS,列出了表空間 SYSAUX 中的模式的名稱、它們的說明、當(dāng)前使用的空間,以及如何轉(zhuǎn)移它們。(參見表 1。) 注重 LogMiner 如何被清楚地顯示為占用 7,488 KB 的空間。它歸模式 SYSTEM 所有,而要轉(zhuǎn)移對象,您需要執(zhí)行打包的過程 SYS.DBMS_LOGMNR_D.SET_TABLESPACE。不過,對于 STATSPACK 對象,這個視圖推薦使用導(dǎo)入/導(dǎo)出方法;而對于流,沒有轉(zhuǎn)移過程 — 因而您不能輕易地將它們從 SYSAUX 表空間中轉(zhuǎn)移出來。列 MOVE_PROCEDURE 默認(rèn)顯示 SYSAUX 中存在的幾乎所有工具的正確的轉(zhuǎn)移過程。也可以逆向使用轉(zhuǎn)移過程來使對象回到 SYSAUX 表空間中。 重命名一個表空間 在數(shù)據(jù)倉庫環(huán)境中(典型地,對于數(shù)據(jù)中心體系結(jié)構(gòu)),在數(shù)據(jù)庫之間傳輸表空間是很常見的。但源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫必須不存在擁有相同名稱的表空間。假如存在兩個擁有相同名稱的表空間,則目標(biāo)表空間中的段必須轉(zhuǎn)移到一個不同的表空間中,然后重新創(chuàng)建這個表空間— 這個任務(wù)說起來輕易做起來難。 Oracle Database 10g 提供了一個方便的解決方案:您可以用以下命令來簡單地重命名一個現(xiàn)有的表空間(SYSTEM 和 SYSAUX 除外) — 無論是永久表空間還是臨時表空間: ALTER TABLESPACE <oldname> RENAME TO <newname>;這個功能還將應(yīng)用在存檔過程中。假定您有一個按范圍分區(qū)的表,用于記錄銷售歷史數(shù)據(jù),每個月的這個分區(qū)位于按這個月份命名的一個表空間中 — 例如,1 月份的分區(qū)命名為 JAN,并位于一個名稱為 JAN 的表空間中。 這樣您就擁有了一個將信息保留 12 個月的策略。在 2004 年 1 月,您將能夠存檔 2003 年 1 月的數(shù)據(jù)。大致的操作流程類似于以下操作: 利用 ALTER TABLE EXCHANGE PARTITION 從分區(qū) JAN 中創(chuàng)建一個獨立的表 JAN03。 將表空間重命名為 JAN03。 為表空間 JAN03 創(chuàng)建一個可傳輸表空間集。 將表空間 JAN03 重新命名為 JAN。 將空的分區(qū)交換回表中。 第 1、2、4 和 5 步很簡單,并且不會過度地消耗資源(如重做和撤消空間)。第 3 步只是拷貝文件并只為 JAN03 輸出數(shù)據(jù)字典信息,這也是個非常輕松的過程。假如您需要恢復(fù)之前存檔的分區(qū),這個過程也非常簡單,您只需要將相同的過程反過來就行了。 Oracle Database 10g 在處理這些重命名的方式上相當(dāng)智能化。假如您重命名作為 UNDO 或默認(rèn)臨時表空間的表空間,這可能產(chǎn)生混淆。但數(shù)據(jù)庫將自動調(diào)整必要的記錄來反映這種變化。例如,將默認(rèn)表空間的名稱從 USERS 修改為 USER_DATA 將自動修改視圖 DATABASE_PROPERTIES。在修改之前,查詢: select property_value from database_propertieswhere property_name = 'DEFAULT_PERMANENT_TABLESPACE';返回 USERS。在運行下面的語句之后 alter tablespace users rename to user_data;上述查詢返回 USER_DATA,因為所有對 USERS 的引用都被修改為到 USER_DATA。 修改默認(rèn)臨時表空間的情況一樣。甚至修改 UNDO 表空間的名稱也將觸發(fā) SPFILE 中的變化,如下所示: SQL> select value from v$spparameter where name = 'undo_tablespace';VALUE--------UNDOTBS1SQL> alter tablespace undotbs1 rename to undotbs;Tablespace altered.SQL> select value from v$spparameter where name = 'undo_tablespace';VALUE--------UNDOTBS結(jié)論 在最近的幾個 Oracle 版本演變的過程中,對象處理得到了穩(wěn)定的增強。Oracle8i 引進了表從一個表空間到另一個表空間的轉(zhuǎn)移,Oracle 9i Database R2 引進了列重命名,現(xiàn)在 — 在最新的版本中 — 表空間自身的重命名成為可能。這些增強顯著地減輕了數(shù)據(jù)庫治理員的任務(wù) — 非凡是在數(shù)據(jù)倉庫或數(shù)據(jù)中心環(huán)境中。
標(biāo)簽: Oracle 數(shù)據(jù)庫
主站蜘蛛池模板: 步兵一区二区三区在线观看 | 欧美孕妇孕交 | 大学生久久香蕉国产线观看 | 亚洲国产成人久久综合一区 | 久久国产毛片 | 国产一区二区三区毛片 | 日本精品中文字幕有码 | 久久人视频 | 99精选视频| 午夜国产高清精品一区免费 | 草草国产成人免费视频 | 欧美成在线播放 | 成人午夜做爰视频免费看 | 日本三级香港三级人妇99 | 99re国产视频 | 久草在线资源 | 男女午夜爽爽 | 日本视频在线免费播放 | 国产精品免费看久久久香蕉 | 手机看片神马午夜 | 色涩五月天 | 久久成人国产 | 亚洲欧美高清在线 | 香蕉视频国产精品 | 精品在线视频免费观看 | av人摸人人人澡人人超碰 | 国产日韩欧美精品一区二区三区 | 亚洲精品国产成人 | 一级做a爰片毛片 | gv手机在线观看 | 美女张开双腿让男人桶 | 亚洲国产日韩综合久久精品 | 怡红院在线观看 | 国产精品99r8免费视频2022 | 国产精品白浆流出视频 | 99热.com| 毛片一级免费 | 亚洲经典在线 | 欧洲美女a视频一级毛片 | 手机看成人免费大片 | 三级黄色免费网站 |