久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Oracle數據版本12.2.0.1.0有哪些新特性

167次閱讀
沒有評論

共計 6809 個字符,預計需要花費 18 分鐘才能閱讀完成。

本篇內容主要講解“Oracle 數據版本 12.2.0.1.0 有哪些新特性”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓丸趣 TV 小編來帶大家學習“Oracle 數據版本 12.2.0.1.0 有哪些新特性”吧!

1. 在線重命名和重新定位活躍數據文件

可以使用 ALTER DATABASE MOVE DATAFILE 這樣的 SQL 語句對數據文件進行在線重命名和移動

 2. 表分區或子分區的在線遷移

表分區或子分區可以在線或是離線遷移至一個不同的表空間。

當指定了 ONLINE 語句,所有的 DML 操作可以在沒有任何中斷的情況下,在參與這一過程的分區或子分區上執行,還可維護表上任何本地或全局的索引

 3. 不可見字段

可以在表中創建不可見字段。

當一個字段定義為不可見時,這一字段就不會出現在通用查詢中,除非在 SQL 語句或條件中有顯式的提及這一字段,或是在表定義中有 DESCRIBED。

必須在 INSERT 語句中顯式提及不可見字段名以將不可見字段插入到數據庫中。

虛擬字段和分區字段同樣也可以定義為不可見類型。但臨時表,外部表和集群表并不支持不可見字段

set colinvisible on

alter table emp modify(sal visible);

4. 相同字段上的多重索引

只要索引類型的形式不同,一個字段就可以包含在一個 B -tree 索引中,同樣也可以包含在 Bitmap 索引中

5. DDL 日志

可以將 DDL 操作寫入 xml 和日志文件中

ALTER SYSTEM|SESSION SET ENABLE_DDL_LOGGING=TRUE;

DDL 操作會記錄在 $ORACLE_BASE/diag/rdbms/DBNAME/log/ddl 路徑下

/u01/app/oracle/diag/rdbms/prod/PROD/log/ddl

6. 臨時 undo

臨時 undo 功能中,臨時 undo 記錄可以存儲在一個臨時表中,而無需再存儲在 undo 表空間內。

這樣做的主要好處在于:減少 undo 表空間,由于信息不會被記錄在 redo 日志中,所以減少了 redo 數據的生成。

你可以在會話級別或者數據庫級別來啟用臨時 undo 選項

show parameter undo;

select name,value from v$mystat natural join v$statname where name in(redo entries , redo size)

create global temporary table temp_objects as select * from dba_objects where 1=2;  

select name,value from v$mystat natural join v$statname where name in(redo entries , redo size

insert into temp_objects select * from dba_objects;

select name,value from v$mystat natural join v$statname where name in(redo entries , redo size

drop table temp_objects;

ALTER SYSTEM SET TEMP_UNDO_ENABLED=TRUE;

show parameter undo;

select name,value from v$mystat natural join v$statname where name in(redo entries , redo size

create global temporary table temp_objects as select * from dba_objects where 1=2;  

select name,value from v$mystat natural join v$statname where name in(redo entries , redo size

insert into temp_objects select * from dba_objects;

select name,value from v$mystat natural join v$statname where name in(redo entries , redo size

7. 新的備份用戶特權

在 12c 中引入了 SYSBACKUP 特權用來在 RMAN 中執行備份和恢復命令。

因此,你可以在數據庫中創建一個本地用戶并在不授予其 SYSDBA 權限的情況下,通過授予 SYSBACKUP 權限讓其能夠在 RMAN 中執行備份和恢復相關的任務。

$ ./rman target username/password as SYSBACKUP

備份用戶權限

grant sysbackup to wangkai;

rman target wangkai/oracle@prod as sysbackup

8. 可以在 RMAN 中執行 SQL 語句

可以在不需要 SQL 前綴的情況下在 RMAN 中執行任何 SQL 和 PL/SQL 命令,即你可以從 RMAN 直接執行任何 SQL 和 PL/SQL 命令

9. RMAN 中的表級別恢復

可以在發生 drop 或 truncate 的情況下從 RMAN 備份將一個特定的表或分區恢復到某個時間點或 SCN

drop table emp1 purge;

RMAN recover table wk.emp1 until time to_date(2018-11-06 14:00:00 , yyyy-mm-dd hh34:mi:ss)

2 auxiliary destination /u01/app/backup/tmp  

3 datapump destination /u01/app/backup/tmp

執行詳情見
session.log.

select * from emp1;

10. PGA 的大小限制問題

可以通過開啟自動 PGA 管理來對 PGA 設定硬性限制,這需要對 PGA_AGGREGATE_LIMIT 參數進行設置

當超過了當前的 PGA 的限制,Oracle 會自動終止 / 中止會話或進程以保持最合適的 PGA 內存。

create or replace package demo_pkg

as

 type array is table of char(2000) index by binary_integer;

 g_data array;

end;

/

select a.name,to_char(b.value, 999,999,999)bytes,to_char(round(b.value/1024/1024,1), 99,999.9 )mbytes

from v$statname a,v$mystat b

where a.statistic#=b.statistic#

and a.name like %ga memory%

begin

for i in 1..1000000

 loop

 demo_pkg.g_data(i):= x

 end loop;

end;

/

11. 對表分區維護的增強

12c 只需要使用一條單獨的 ALTER TABLE ADD PARTITION 命令就可以添加多個新分區

select TABLE_NAME,PARTITION_NAME,tablespace_name,PARTITION_POSITION,SEGMENT_CREATED from user_tab_partitions;

ALTER TABLE sales_history
drop PARTITION p5;

ALTER TABLE sales_history ADD

partition p5 VALUES LESS THAN (TO_DATE( 01-JAN-2003 , dd-MON-yyyy)) tablespace study3,

partition p6 VALUES LESS THAN (TO_DATE( 01-JAN-2004 , dd-MON-yyyy)) tablespace study3;

select TABLE_NAME,PARTITION_NAME,tablespace_name,PARTITION_POSITION,SEGMENT_CREATED from user_tab_partitions;

12. 數據庫升級改進

預升級腳本,預升級檢查驗證,此腳本還能以修復腳本的形式解決在升級過程前后出現的各種問題

并行升級功能

SQL @/u01/app/oracle/product/12.1.0/db_1/rdbms/admin/preupgrd.sql

圖形界面:

13. 通過網絡恢復數據文件

可以在主數據庫和備用數據庫之間用一個服務名重新獲得或恢復數據文件、控制文件、參數文件、表空間或整個數據庫

場景 1,在物理備用數據庫上:

./rman target‘“username/password@standby_db_tns as sysbackup”’

RMAN recover database from service primary_db_tns using compressed backupset;

(以上示例使用備庫數據庫上定義的 primary_db_tns 連接字符串連接到主數據庫,然后執行了一個增量備份,再將這些增量備份傳輸至備用數據庫來進行同步。然而,需要確保已經對 primary_db_tns 進行了配置,即在備份數據庫端將其指向主數據庫。)

在以下示例中,我將演示一個場景通過從備用數據庫獲取數據文件來恢復主數據庫上丟失的數據文件

場景 2,在主數據庫上:

./rman target‘”username/password@primary_db_tns as sysbackup”’

RMAN restore datafile‘+DG_DISKGROUP/DBNAME/DATAFILE/filename’from service standby_db_tns;

自己實驗:備庫刪掉幾個數據文件,通過從主數據庫獲取數據文件來恢復備庫丟失的數據文件。

14. 對 Data Pump 的增強

在導出時可以將視圖轉換為表,在導入時可以關閉日志記錄

像表一樣導出視圖

views_as_tables 參數允許把視圖當成表導出。表結構匹配試圖列,視圖查詢結果對應表數據。

views_as tables=

[schema_name.]view_name[:table_name],…

例子:

conn scott/tiger@prod2

create view emp_v as select * from emp;

用 views_as_tables 參數導出視圖。

$expdp scott/tiger views_as_tables=scott.emp_v directory=test_dir dumpfile=emp_v.dmp logfile=expdp_emp_v.log

expdp 默認會創建一個臨時表來作為視圖的拷貝,但不包含數據,只是會導出提供一個元數據源。此外,也可以確定一個結構合適的表來代替,但這也許只有在只讀庫上才有意義。

禁用日志選項(disable_archive_logging)

impdp 的 transform 參數已經擴展為包括 disable_archive_logging 選項,默認值為“N”,不會影響日志行為;將該選項設置為“Y“,這將會使表和索引在導入前將日志屬性設置為 nologging,從而減少導入期間相關日志的產生,導入后再將日志屬性重置為 logging。

transform= disable_archive_logging:Y:table

transform= disable_archive_logging:Y:index

$ impdp wk/oracle directory=test_dir dumpfile=emp_v.dmp logfile=impdp_emp_v.log remap_schema=scott:wk transform= disable_archive_logging:Y

(如果數據庫運行在 force logging 模式,disable_archive_logging 選項將沒什么影響)

15. 實時自動數據診斷監視器 (ADDM) 分析

當數據庫反應遲鈍或是掛起狀態時,而且你已經配置了 Oracle 企業管理器 12c 的云控制,你就可以對嚴重的性能問題進行診斷。

這對于你了解當前數據庫發生了什么狀況有很大幫助,而且還能夠對此問題給出解決方案

16. 同時在多個表上收集統計數據

在 12c R1 中,你現在可以同時在多個表、分區以及子分區上收集統計數據。

在你開始使用它之前,你必須對數據庫進行以下設置以開啟此功能:

SQL ALTER SYSTEM SET RESOURCE_MANAGER_PLAN=’DEFAULT_MAIN’;

SQL ALTER SYSTEM SET JOB_QUEUE_PROCESSES=4;

SQL EXEC DBMS_STATS.SET_GLOBAL_PREFS(‘CONCURRENT’,‘ALL’);

SQL EXEC DBMS_STATS.GATHER_SCHEMA_STATS(‘SCOTT’);

17. ASM 的增強

自動存儲管理 (ASM) 中的增強

Flex ASM

節點上的 ASM 實例發生故障,則運行于此節點上的所有數據庫和實例都會受到影響。

為了避免 ASM 實例的單點故障,Oracle 12c 提供了一個名為 Flex ASM 的功能。

Flex ASM 是一個不同的概念和架構,只有很少數量的 ASM 實例需要運行在集群中的一些服務器上。

當某節點上的一個 ASM 實例發生故障,Oracle 集群就會在另一個不同的節點上自動啟動替代 ASM 實例以加強可用性。

另外,這一設置還為運行在此節點上的實例提供了 ASM 實例負載均衡能力。Flex ASM 的另一個優勢就是可以在單獨節點上加以配置

ASM 存儲限制放寬

ASM 支持 511 個 ASM 磁盤群組,而在 11g R2 中只支持 63 個。

11g R2 中 20 PB 的磁盤大小,現在已經將這一數字提高到 32 PB。

對 ASM 均衡操作的優化

12c 中新的 EXPLAIN WORK FOR 語句用于衡量一個給定 ASM 均衡操作所需的工作量,并在 V$ASM_ESTIMATE 動態視圖中輸入結果

使用此動態視圖,你可以調整 POWER LIMIT 語句對重新平衡操作工作進行改善

ASM 磁盤清理

在一個 ASM 磁盤群組中,新的 ASM 磁盤清理操作分為正常或高冗余兩個級別,它可以檢驗 ASM 磁盤群組中所有磁盤的邏輯數據破壞,

并且可以自動對邏輯破壞進行修復,如果檢測到有邏輯數據破壞,就會使用 ASM 鏡像磁盤。

磁盤清理可以在磁盤群組,特定磁盤或是某個文件上執行,這樣其影響可降到最小程度

ASM 的活動會話歷史(ASH)

V$ACTIVE_SESSION_HISOTRY 動態視圖現在還可以提供 ASM 實例的活動會話抽樣,然而,診斷包的使用是受到許可限制的。

18. 網格 (Grid) 基礎架構的增強

Flex 集群

Oracle 12c 在集群安裝時支持兩類配置:傳統標準集群和 Flex 集群。

在一個傳統標準集群中,所有集群中的節點都彼此緊密地整合在一起,并通過私有網絡進行互動,而且可以直接訪問存儲。

另一方面,Flex 集群在 Hub 和 Leaf 節點結構間引入了兩類節點。

分配在 Hub 中的節點類似于傳統標準集群,它們通過私有網絡彼此互連在一起并對存儲可以進行直接讀寫訪問。

而 Leaf 節點不同于 Hub 節點,它們不需要直接訪問底層存儲; 相反的是,它們通過 Hub 節點對存儲和數據進行訪問

ASM 磁盤群組中的 OCR 備份

對于 12c,OCR 現在可以在 ASM 磁盤群組中得以備份。

這簡化了通過所有節點對 OCR 備份文件的訪問。為了防止 OCR 的恢復,你不必擔心 OCR 最新的備份是在哪個節點上。

可以從任何節點輕易識別存儲在 ASM 中的最新備份并能很容易地執行恢復

支持 IPv6 協議

對于 12c,Oracle 是支持 IPv6 網絡協議配置的。

你現在可以在 IPv4 或 IPv6 上配置共有或私有網絡接口,盡管如此,你需要確保在所有集群中的節點上使用相同的 IP 協議

19. RAC 數據庫的增強

What-if 命令評估

通過 srvctl 使用新的 What-if 命令評估選項,現在可以確定運行此命令所造成的影響。

這一新添加到 srvctl 的命令,可以在沒有實際執行或是不對當前系統做任何改變的情況下模擬此命令。

這在想要對一個已存在的系統進行更改卻對結果不確定的時候特別有用。

這樣,此命令就會提供進行變更的效果。而–eval 選項也可以通過 crsctl 命令來使用

srvctl 的改進

對于 srvctl 命令還有一些新增功能。以下演示了如何用這些新增功能停止或啟動集群上的數據庫或實例資源。

srvctl start database|instance –startoption NOMOUNT|MOUNT|OPEN

srvctl stop database|instance –stopoption NOMOUNT|MOUNT|OPEN

到此,相信大家對“Oracle 數據版本 12.2.0.1.0 有哪些新特性”有了更深的了解,不妨來實際操作一番吧!這里是丸趣 TV 網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-20發表,共計6809字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 武平县| 新乐市| 杭锦后旗| 唐河县| 沁水县| 东明县| 永寿县| 平遥县| 勐海县| 华亭县| 兴海县| 曲水县| 石林| 临湘市| 泌阳县| 白朗县| 贵港市| 万源市| 鹤岗市| 吴忠市| 铁岭市| 浠水县| 长葛市| 贵南县| 绩溪县| 大理市| 晋江市| 体育| 宿松县| 将乐县| 辽宁省| 百色市| 娱乐| 北川| 莫力| 应城市| 成都市| 云浮市| 永福县| 平武县| 白朗县|