1. 程式人生 > >Oracle 12C 新特性之 PDB熱克隆

Oracle 12C 新特性之 PDB熱克隆



說明:版本12.2.0.1

12c r1版本中 clone 一份PDB源庫需要開啟在read only只讀模式 , 在12c r2版本中引入了local undo mode, 源PDB在read/write 讀寫模式也可以 clone 。  local undo mode 也是oracle推崇的模式。

說明: shared undo 與 Local undo 模式切換 可以參考 http://blog.csdn.net/zhang123456456/article/details/71374528

要求:
1、 Archive Log Enabled  
2、 Local Undo Enabled 
3、 destination CDB must have a public database link to the source CDB,have sufficient privileges to use the database link.

一、  克隆本地pdb

[

[email protected] ~]$ sqlplus / as sysdba
-- 檢查是否開啟 local undo
SQL> 
col PROPERTY_NAME for a25;
col PROPERTY_VALUE for a25;
select PROPERTY_NAME,PROPERTY_VALUE from database_properties where property_name='LOCAL_UNDO_ENABLED';
PROPERTY_NAME  PROPERTY_VALUE
------------------------- -------------------------
LOCAL_UNDO_ENABLED  TRUE

SQL> show pdbs
    CON_ID CON_NAME  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED  READ ONLY  NO
3 PDB01  READ WRITE NO
SQL> show parameter pdb_file_name_convert
NAME     TYPE VALUE
------------------------------------ ----------- ------------------------------
pdb_file_name_convert     string
-- clone pdb 數量為一  , 注意這裡 pdb_file_name_convert 引數生效級別設定的是 session , 如有需要,自行設定為全域性
SQL> alter session set pdb_file_name_convert='pdb01','pdb02';
Session altered.
SQL> create pluggable database pdb02 from pdb01;
Pluggable database created.
SQL> alter pluggable database pdb02 open;
Pluggable database created.
SQL> alter pluggable database pdb02 close immediate;
Pluggable database altered.
-- clone pdb 數量為多
SQL> alter session set pdb_file_name_convert='pdb01','pdb02,pdb03';
Session altered.
SQL> create pluggable database pdb03 from pdb01;
Pluggable database created.
SQL> show pdbs
    CON_ID CON_NAME  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED  READ ONLY  NO
3 PDB01  READ WRITE NO
4 PDB02  MOUNTED
5 PDB03  MOUNTED
SQL> alter pluggable database pdb02 open;
Pluggable database altered.
SQL> alter pluggable database pdb03 open;
Pluggable database altered.
SQL> show pdbs
    CON_ID CON_NAME  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED  READ ONLY  NO
3 PDB01  READ WRITE NO
4 PDB02  READ WRITE NO

5 PDB03  READ WRITE NO

二、  克隆遠端pdb
--源端
SQL> create user c##andy identified by andy container=all;
User created.
SQL> grant dba to c##andy container=all;
Grant succeeded.
-- 目標端cdb執行

SQL> create database link clonePdb connect to c##andy  identified by andy using '(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.219.24.17)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = pdb01)))';
Database link created.

-- 源端
SQL> show pdbs
    CON_ID CON_NAME  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED  READ ONLY  NO
3 PDB01  READ WRITE NO

-- 目標端cdb
SQL> show pdbs
    CON_ID CON_NAME  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED  READ ONLY  NO
3 PDB01  READ WRITE NO
4 PDB02  READ WRITE NO
5 PDB03  READ WRITE NO

SQL> alter session set pdb_file_name_convert='pdb01','pdb04';
Session altered.
-- 通過 dblink 克隆源端的 pdb 
SQL> create pluggable database pdb04 from

[email protected];
Pluggable database created.
SQL> show pdbs
    CON_ID CON_NAME  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED  READ ONLY  NO
3 PDB01  READ WRITE NO
4 PDB02  READ WRITE NO
5 PDB03  READ WRITE NO
6 PDB04  MOUNTED
SQL> alter pluggable database pdb04 open;
alter pluggable database pdb04 open
*
ERROR at line 1:
ORA-14694: database must in UPGRADE mode to begin MAX_STRING_SIZE migration
SQL> ho oerr ora 14694
14694, 00000, "database must in UPGRADE mode to begin MAX_STRING_SIZE migration"
// *Cause:  An attempt was made to update the MAX_STRING_SIZE parameter
//          to EXTENDED when the database was not in UPGRADE mode.
//* Action: Restart the database in UPGRADE mode, modify the parameter, 
//          run the utl32k.sql script in $ORACLE_HOME/rdbms/admin, and
//          restart the database in normal mode.

說明: 這個報錯的原因是目標端使用了12c的新特性extended data type ,源端沒有使用這個新特性,從源端克隆過來的pdb需要擴充套件 extended data type 新特性與目標端保持一致。有關新特性extended data type ,
參考http://blog.csdn.net/zhang123456456/article/details/71713201
-- 新克隆的pdb拓展 extended data type 新特性
SQL> alter session set container=pdb04;
Session altered.
SQL>  startup upgrade;
Pluggable Database opened.
SQL> show parameter max_string_size
NAME     TYPE VALUE
------------------------------------ ----------- ------------------------------
max_string_size     stringEXTENDED
SQL> @$ORACLE_HOME/rdbms/admin/utl32k.sql
SQL> shutdown immediate;
Pluggable Database closed.
SQL> startup;
Pluggable Database opened.
SQL> alter session set container=cdb$root;
Session altered.
SQL> show pdbs
    CON_ID CON_NAME  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED  READ ONLY  NO
3 PDB01  READ WRITE NO
4 PDB02  READ WRITE NO
5 PDB03  READ WRITE NO
6 PDB04  READ WRITE NO

相關推薦

Oracle 12C 特性 PDB克隆

 說明:版本12.2.0.1 12c r1版本中 clone 一份PDB源庫需要開啟在read only只讀模式 , 在12c r2版本中引入了local undo mode, 源PDB在read/write 讀寫模式也可以 clone 。  local undo mo

Oracle 12C 特性 db默認字符集AL32UTF8、PDB支持不同字符集

ans ica 允許 12c gbk 操作 utf contain sin 一、 db默認字符集AL32UTF8Specify the database character set when you create the database. Starting from Or

oracle 12c 特性不可見字段

創建 oracl alt created 顯式 11g 不可見 插入數據 esc 在Oracle 11g R1中,Oracle以不可見索引和虛擬字段的形式引入了一些不錯的增強特性。繼承前者並發揚光大,Oracle 12c 中引入了不可見字段思想。在之前的版本中

Oracle 12C 特性擴展數據類型(extended data type)

stand 特性 standard ava dbm har sco stat rac Oracle 12C 新特性-擴展數據類型,在12c中,與早期版本相比,諸如VARCHAR2, NAVARCHAR2以及 RAW這些數據類型的大小會從4K以及2K字節擴展至32K字節。只要

Oracle 12C 特性在線重命名、遷移活躍的數據文件

查看 查詢 存在 data gop ddl ins aux 正在 Oracle 數據庫 12c 版本中對數據文件的遷移或重命名不再需要太多繁瑣的步驟,可以使用 ALTER DATABASE MOVE DATAFILE 這樣的 SQL 語句對數據文件進行在線重命名和移動。而當

Oracle 12C 特性 sqlplus查看History命令

let date 添加 version sys com delete 自動 ber 12c裏,Oracle推出了 History 命令,這很像 Shell 中的 history ,減少了重敲 SQL ,帶來了很多便利。1. 查看history幫助SQL> help h

Oracle 12C 特性 恢復表

play 截斷 mman temp 租戶 ict total 重啟 修改表結構 RMAN的表級和表分區級恢復應用場景:1、You need to recover a very small number of tables to a particular point in t

Oracle 12c 特性varchar2長度最大值支援到32767

show parameter MAX_STRING_SIZE standard:代表12c之前的長度限制,即varchar2和nvarchar2 4是4000 bytes,raw是2000,且系統           預設是sta

Oracle 12C 特性表分割槽帶非同步全域性索引非同步維護(一次add、truncate、drop、spilt、merge多個分割槽)

實驗準備: -- 建立實驗表 CREATE TABLE p_andy (ID number(10), NAME varchar2(40)) PARTITION BY RANGE (id) (PARTITION p1 VALUES LESS THAN (10), PARTITION p2 VALUES LES

Oracle 12C 特性線上重新命名、遷移活躍的資料檔案

Oracle 資料庫 12c 版本中對資料檔案的遷移或重新命名不再需要太多繁瑣的步驟,可以使用 ALTER DATABASE MOVE DATAFILE 這樣的 SQL 語句對資料檔案進行線上重新命名和移動。而當此資料檔案正在傳輸時,終端使用者可以執行查詢,DML以及 DD

ORACLE 12C特性——CDB與PDB

  Oracle 12C引入了CDB與PDB的新特性,在ORACLE 12C資料庫引入的多租使用者環境(Multitenant Environment)中,允許一個數據庫容器(CDB)承載多個可插拔資料庫(PDB)。CDB全稱為Container Database,中文翻譯為資料庫容器,PDB全稱為Plugg

18C特性PDB snapshot Carousel,夠用嗎?

| 關於PDB快照Carousel Oracle18c新特新 pdb snapshot Carousel提供了在pdb級別下手工或者自動生成快照的功能,為開發測試用例提供了便捷。CDB為local undo和歸檔模式下,指定MAX_PDB_SNAPSHOTS控制pdb最多生成快照的數量

循序漸進:Oracle 12c特性Sharding技術解讀

引言 資料庫構架設計中主要有 Shared Everthting、Shared Nothing 和 Shared Disk: Shared Everthting:一般是針對單個主機,完全透明共享 CPU/MEMORY/IO,並行處理能力是最差的,例如 Oracle

Oracle 12c特性

Oracle Database 12c前幾天正式釋出了,如果學習一個新版本的資料庫?我通常是從New Features Guide文件看起,先通覽文件的目錄,遇到感興趣的新功能點,就開始做實驗來驗證這個新功能。當然,這之前需要先把新版本的資料庫安裝好,先把新版本的全部文件下載

Oracle 18c 特性CDB航母

給使用者介紹Oracle多租戶新特性時,多次忍不住將CDB比喻為航母,PDB則是停靠之上的艦載機。沒想到18c竟然出了航母戰鬥群,^_^18c中引入了CDB fleet新特性,能夠實現以下的功能:擴容PDB支援數量,單個CDB最大能夠支援4096個PDB,CDB fleet大

點評Oracle 11g特性執行計劃管理

摘自:http://doc.chinaunix.net/oracle/200707/156806.shtml   【內容導航】 第1頁:執行計劃管理的工作原理 第2頁:執行計劃管理的測試     摘要:本文描述了11g的新特性之一:執行計劃管理,介紹了引入該新特性的原因,以

Oracle 12c 特性:SQL Plan Directives與過量的動態取樣解析

在 12c 中,優化器進行了較大的改變,推出了 Adaptive query optimizat

Oracle Database 12c 特性:RAC Cluster Hub Node 和 Leaf Node

Oracle Database 12c 新特性:RAC Cluster Hub Node 和 Leaf Node 在 Oracle Database 12c 的 Cluster 中引入了很多新特性和新概念,其中重複最多的幾個名詞除了 Flex Cluster、F

12c特性-感受ORACLE 12C IN_MEMORY效能威力

感受ORACLE 12C IN_MEMORY效能威力       oracle 12C in_memory(簡稱IM)對資料庫效能的提升是巨大的,最重要的一點是這一切  對應用程式是透明的。首先我們來看看實驗中IM的相關引數設定 使用imemory特性的前提,要

Oracle12cr1特性容器資料庫(CDB)和可插拔資料庫(PDB) 的啟動和關閉

Oracle12c中引入的多宿主選項(multitenant option)允許一個容器資料庫容納多個獨立的可插拔資料庫(PDB)。本文將說明如何啟動和關閉容器資料庫(CDB)和可插拔資料庫(PDB)。 1.   容器資料庫(CDB) 啟動和關閉容器資料庫和以往一樣。當