oracle 19c CDB vs pdb 建立
-
概念理解
CDB就是一個容器(或者說例項instance),PDB就是傳統的database概念, CDB可以包含多個pdb
來自官方文件:Administrator’s Guide--> Multitenant Administrator's Guide中
Part II Creating and Configuring a Multitenant Environment
CDB相關概念:
4.1 About Creating a CDB
The procedure for creating a multitenant container database (CDB) is similar to the procedure for creating a non-CDB.
The specific methods for creating a CDB are:
-
With the Database Configuration Assistant (DBCA), a graphical tool.
See " ".
-
With the
CREATE DATABASE
SQL statement.See " ".
簡單翻譯過來,cdb建立兩種方式,第一種 DBCA方式,第二種, CREATE DATABASE SQL方式(這其實就是11.2.0.4以前的手工建庫) 具體語句參照官文以下內容(手工的有點難度呃,需要很好的架構理解,引數準備,光有下面語句不夠的,第一次還是dbca的簡單方式,不過在使用這種簡單的dbca方式都還有莫名的報錯)
4.3.4.1指令碼內容:
CREATE DATABASE newcdb USER SYS IDENTIFIED BY sys_password USER SYSTEM IDENTIFIED BY system_password LOGFILE GROUP 1 ('/u01/logs/my/redo01a.log','/u02/logs/my/redo01b.log') SIZE 100M BLOCKSIZE 512, GROUP 2 ('/u01/logs/my/redo02a.log','/u02/logs/my/redo02b.log') SIZE 100M BLOCKSIZE 512, GROUP 3 ('/u01/logs/my/redo03a.log','/u02/logs/my/redo03b.log') SIZE 100M BLOCKSIZE 512 MAXLOGHISTORY 1 MAXLOGFILES 16 MAXLOGMEMBERS 3 MAXDATAFILES 1024 CHARACTER SET AL32UTF8 NATIONAL CHARACTER SET AL16UTF16 EXTENT MANAGEMENT LOCAL DATAFILE '/u01/app/oracle/oradata/newcdb/system01.dbf' SIZE 700M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED SYSAUX DATAFILE '/u01/app/oracle/oradata/newcdb/sysaux01.dbf' SIZE 550M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED DEFAULT TABLESPACE deftbs DATAFILE '/u01/app/oracle/oradata/newcdb/deftbs01.dbf' SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED DEFAULT TEMPORARY TABLESPACE tempts1 TEMPFILE '/u01/app/oracle/oradata/newcdb/temp01.dbf' SIZE 20M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED UNDO TABLESPACE undotbs1 DATAFILE '/u01/app/oracle/oradata/newcdb/undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED ENABLE PLUGGABLE DATABASE SEED FILE_NAME_CONVERT = ('/u01/app/oracle/oradata/newcdb/', '/u01/app/oracle/oradata/pdbseed/') SYSTEM DATAFILES SIZE 125M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED SYSAUX DATAFILES SIZE 100M USER_DATA TABLESPACE usertbs DATAFILE '/u01/app/oracle/oradata/pdbseed/usertbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED LOCAL UNDO ON;
使用指令碼建立cdb,額外需要準備以下技能,具體參照官方文件
4.2.1.2 Plan the Physical Layout 計劃物理佈局
4.2.1.3 Learn How to Manage Initialization Parameters
A CDB uses a single SPFILE or a single text initialization parameter file (PFILE).
CDB使用單獨的spfile或者pfile檔案(這也就是CDB等同於11.2.0.4以前的例項的概念)
........
-
-
DBCA建立CDB過程
第一次建立,執行dbca,選擇create db之後執行不久報錯
百度,mos都沒有找到對應的解決方法,上班前去得早,查了一個多小時無果(真要糾纏下去,難度要開SR不成),後來想想,估計當時的環境是已經執行了一個CDB例項,然後再去dbca建立,是不是和這個有關,決定下次,不啟動已有的htdb例項,然後dbca試試,果然到了今天順利了,執行過程部分截圖如下
終於順利了
再看看建立的檔案物理佈局
dbs目錄下產生4個檔案(紅線以下)
對應相關檢視檢視
select name from v$datafile;
--以下是db檔案對應的歸屬
pdb test0606包含4個db檔案
alter session set container=test0606;
alter session set container=PDB$SEED;
還有這4個(後面豎線標紅)應該是系統CDB$ROOT的
cdb_data_file檢視也可以檢視(不全,不包含PDB$SEED,只有新建的TEST0606,和系統 CDB$ROOT的 )
alter session set container=CDB$ROOT;
col file_name for a110
select con_id,file_name from cdb_data_files;
COL NAME FORMAT A15
SELECT NAME, CON_ID, DBID, CON_UID, GUID
FROM V$CONTAINERS ORDER BY CON_ID
pdb 建立
create pluggable database testpdb2 admin user salesadm identified by oracle file_name_convert=('/u01/app/oracle/oradata/TEST06/datafile/','/u01/app/oracle/oradata/TEST06/testpdb2');
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25846553/viewspace-2696667/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【CDB】Oracle CDB/PDB常用管理命令Oracle
- 1.3.2.2.2 通過Non-CDB(非CDB模式)建立PDB模式
- oracle 19c建立非OMF檔案命名格式的PDBOracle
- 1.3.2.2.2. 通過Non-CDB(非CDB模式)建立PDB模式
- oracle 19c pdb遷移Oracle
- Oracle 建立PDB-Plugging In an Unplugged PDBOracle
- 【ASK_ORACLE】Oracle 12c之CDB與PDB的備份與恢復(一)什麼是CDB與PDB?Oracle
- 【BAK_ORACLE】Oracle 12c之CDB與PDB的備份與恢復(三)CDB與PDB的備份方式Oracle
- 【PDB】Oracle 建立pdb說明(create pluggable database)OracleDatabase
- oracle 12c PDB隨CDB啟動和連結PDB的方式Oracle
- Oracle 建立PDB-from ScratchOracle
- Oracle 建立PDB-本地克隆Oracle
- ogg for oracle 19c 非cdb安裝配置Oracle
- Oracle 12c 手動建立CDB和非CDBOracle
- 多租戶:在Oracle12.2中 從Non-CDB遷移到PDB,從PDB遷移另一個CDB中Oracle
- Oracle 建立PDB-遠端克隆Oracle
- 2.6.2 Overview of Flashback PDB in a CDBView
- Oracle 12c系列(七) | Non-CDB轉換為PDBOracle
- 【資料庫升級】Oracle指令碼升級12c CDB to 19c CDB資料庫Oracle指令碼
- Oracle 19c - 手動升級 Oracle 12.x, 18c CDB 到 Oracle 19c (19.x)Oracle
- 12C關於CDB、PDB建立AWR的方法和總結
- Oracle 12C 中CDB和PDB的引數檔案管理Oracle
- Oracle 12c系列(二)|PDB的建立Oracle
- 【RECO_ORACLE】Oracle 12c之CDB與PDB的備份與恢復(四)PDB的幾種恢復方式Oracle
- 【12c cdb pdb】實驗
- oracle 12c中CDB和PDB的備份還原實驗Oracle
- 【Oracle升級】Oracle指令碼升級11g to 19c non-CDBOracle指令碼
- Oracle 12c 建立與刪除CDB、PDBsOracle
- 基於19C PDB建立方式彙總 標準化文件
- 3.1.2 CDB和PDB的職責分離
- 【PDB】 為Oracle pdb新增服務(pdb add service)Oracle
- CDB和PDB關於使用者建立和使用者許可權區別
- 4.3.4.1 在不使用Oracle OMF的情況下建立CDBOracle
- 【PDB】DBA常用命令之Oracle12.2+ cdb資料庫統一檢查Oracle資料庫
- Part III PDB建立概述-Oracle多租戶管理員指南Oracle
- G007-ORACLE-INS-DG-01 ORACLE 19C DG 1P1S-CDB Ins ON RHEL 8.2Oracle
- 【PDB】pdb閃回,Oracle還原點Oracle
- 【PDB】Oracle跨PDB檢視查詢Oracle