日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

oracle pdb是什么意思,浅谈Oracle数据库12c PDB技术

發布時間:2025/3/8 数据库 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle pdb是什么意思,浅谈Oracle数据库12c PDB技术 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

PDB大致功能描述:

創建:

用create pluggable database的命令,

用file_name_convert的方式拷貝seed pdb的文件到對應的新pdb的路徑下。拷貝的是最基本system和sysaux表空間,

將新建的pdb從mount的狀態打開到read write的狀態。

建立pdb用戶的默認表空間。

拔出:

a)用dbca進行拔出有2種生成結果,一種是生成打包文件,一種是生成.xml文件和.DFB文件。

a .1)打包方式:

操作的時候,先close pdb,然后在$ORACLE_HOMEassistantsdbcatemplates,生成一個xml文件描述pdb原來文件的路徑和scn等信息;

將pdb的數據文件復制到$ORACLE_HOMEassistantsdbcatemplates路徑下;

生成一個pdb_info.txt描述本次pdb unplug的相關文件。

將上述3種類型的文件打包成一個gz包。

在cdb中,以drop pluggable database的方式,刪除pdb的信息和在物理上刪除pdb的數據文件。

a.2)生成.xml和.DFB文件的方式

也是類似,只是不打包成一個gz包,且pdb的多個數據文件也被整合在一個.DFB文件中。最后也刪除cdb中關于此pdb的信息。

插入:

如果用dbca,原來打包成gz包的來做plug就非常方便,只要選中gz包,直接plug即可。如果原來是分開文件的方式,也只需根據xml文件和.DFB文件,先restore數據文件,再create pluggable database using xml文件。

克隆:

將pdb至于read only模式,然后利用create pluggable database xxx from xxx…命令進行可克隆。注該方法需要將原pdb至于read only模式。可以常用在測試環境用克隆另外一個類似的環境。

PDB手工操作:

a)創建

SQL>?CREATE?PLUGGABLE?DATABASE?mypdb1?ADMIN?USER?pdbadmin?IDENTIFIED?BY?Orac1e_1981?ROLES=(CONNECT)

2??file_name_convert=(‘E:ORA12CAPPORACLEUSERORADATAORA12CPDBSEED’,’E:ORA12CAPPORACLEUSERORADATAORA12Cmypdb1′);

Pluggable?database?created.

SQL>

SQL>?alter?pluggable?database?mypdb1?open;

Pluggable?database?altered.

SQL>

b)拔出:

SQL>?ALTER?PLUGGABLE?DATABASE?mypdb1?CLOSE;

Pluggable?database?altered.

SQL>

SQL>?alter?pluggable?database?MYPDB1?unplug?into?‘E:ora12capporacleuserproduct12.1.0dbhome_1assistantsdbcatemplatesora12c_MYPDB1.xml’;

Pluggable?database?altered.

SQL>

SQL>?host?cp?-R?E:ora12capporacleuseroradataora12cmypdb1?E:ora12capporacleuseroradataora12cmypdb1_bak

SQL>?DROP?PLUGGABLE?DATABASE?mypdb1?including?datafiles;

Pluggable?database?dropped.

c)插入:

SQL>??–注:不需要拷貝回去temp?tablespace的文件。不然在下一個create?pluggable?database的時候會報錯ORA-01119。

SQL>?host?cp?E:ora12capporacleuseroradataora12cmypdb1_bak*.DBF??E:ora12capporacleuseroradataora12cmypdb1

SQL>

SQL>?create?pluggable?database?b_pdb1?using?‘E:ora12capporacleuserproduct12.1.0dbhome_1assistantsdbcatemplatesora12c_MYPDB1.xml’?nocopy;

Pluggable?database?created.

SQL>

SQL>?alter?pluggable?database?b_pdb1?open;

Pluggable?database?altered.

SQL>

d)克隆:

SQL>?select?dbid,name,open_mode?from?v$pdbs;

DBID?NAME???????????????????????????OPEN_MODE

———-?——————————?———-

4039091088?PDB$SEED???????????????????????READ?ONLY

2213957720?B_PDB1?????????????????????????READ?WRITE

4261134367?MYPDB2?????????????????????????READ?WRITE

SQL>

SQL>

SQL>

SQL>?alter?pluggable?database?mypdb2?close;

Pluggable?database?altered.

SQL>?alter?pluggable?database?mypdb2?open?read?only;

Pluggable?database?altered.

SQL>?create?pluggable?database?b_pdb2

2??from?MYPDB2

3??file_name_convert?=(‘E:ora12capporacleuseroradataora12cmypdb2′,’E:ora12capporacleuseroradataora12cb_pdb2’);

Pluggable?database?created.

SQL>?select?dbid,name,open_mode?from?v$pdbs;

DBID?NAME???????????????????????????OPEN_MODE

———-?——————————?———-

4039091088?PDB$SEED???????????????????????READ?ONLY

2213957720?B_PDB1?????????????????????????READ?WRITE

4261134367?MYPDB2?????????????????????????READ?ONLY

2540280635?B_PDB2?????????????????????????MOUNTED

SQL>?alter?pluggable?database?B_PDB2?open;

Pluggable?database?altered.

SQL>

常用檢查語句:

SQL>?SELECT?sys_context(‘userenv’,’con_name’)?MY_CONTAINER?FROM?dual;

MY_CONTAINER

——————–

CDB$ROOT

SQL>

SQL>?SHOW?con_name

CON_NAME

——————————

CDB$ROOT

SQL>

SQL>?SELECT

2??‘DB_NAME:?‘??||sys_context(‘userenv’,?‘db_name’)||

3??‘?/?CDB?:?‘?????||(select?cdb?from?v$database)||

4??‘?/?AUTH_ID:?‘??||sys_context(‘userenv’,?‘authenticated_identity’)||

5??‘?/?USER:?‘?????||sys_context(‘userenv’,?‘current_user’)||

6??‘?/?CONTAINER:?‘||nvl(sys_Context(‘userenv’,?‘con_Name’),?‘NON-CDB’)

7??as?“DB?DETAILS”

8??FROM?DUAL;

DB?DETAILS

—————————————————————————————————-

DB_NAME:?ora12c?/?CDB?:?YES?/?AUTH_ID:?HE-PCjijihe?/?USER:?SYS?/?CONTAINER:?CDB$ROOT

SQL>

SQL>?alter?session?set?container=MYPDB2;

Session?altered.

SQL>?SELECT

2??‘DB_NAME:?‘??||sys_context(‘userenv’,?‘db_name’)||

3??‘?/?CDB?:?‘?????||(select?cdb?from?v$database)||

4??‘?/?AUTH_ID:?‘??||sys_context(‘userenv’,?‘authenticated_identity’)||

5??‘?/?USER:?‘?????||sys_context(‘userenv’,?‘current_user’)||

6??‘?/?CONTAINER:?‘||nvl(sys_Context(‘userenv’,?‘con_Name’),?‘NON-CDB’)

7??as?“DB?DETAILS”

8??FROM?DUAL;

DB?DETAILS

————————————————————————————————

DB_NAME:?ora12c?/?CDB?:?YES?/?AUTH_ID:?HE-PCjijihe?/?USER:?SYS?/?CONTAINER:?MYPDB2

SQL>

SQL>?select?v.name,?v.open_mode,?nvl(v.restricted,?‘n/a’)?“RESTRICTED”,?d.status

2??from?v$PDBs?v?inner?join?dba_pdbs?d

3??using?(GUID)

4??order?by?v.create_scn

5??/

NAME???????????????????????????OPEN_MODE??RESTRICTED??????STATUS

——————————?———-?—————?————-

PDB$SEED???????????????????????READ?ONLY??NO??????????????NORMAL

MYPDB1?????????????????????????READ?WRITE?NO??????????????NORMAL

MYPDB2?????????????????????????READ?WRITE?NO??????????????NORMAL

SQL>?alter?pluggable?database?mypdb1?close;

Pluggable?database?altered.

SQL>?select?v.name,?v.open_mode,?nvl(v.restricted,?‘n/a’)?“RESTRICTED”,?d.status

2??from?v$PDBs?v?inner?join?dba_pdbs?d

3??using?(GUID)

4??order?by?v.create_scn

5??/

NAME???????????????????????????OPEN_MODE??RESTRICTED??????STATUS

——————————?———-?—————?————-

PDB$SEED???????????????????????READ?ONLY??NO??????????????NORMAL

MYPDB1?????????????????????????MOUNTED????n/a?????????????NORMAL

MYPDB2?????????????????????????READ?WRITE?NO??????????????NORMAL

SQL>?alter?pluggable?database?mypdb1?open?restricted;

Pluggable?database?altered.

SQL>?select?v.name,?v.open_mode,?nvl(v.restricted,?‘n/a’)?“RESTRICTED”,?d.status

2??from?v$PDBs?v?inner?join?dba_pdbs?d

3??using?(GUID)

4??order?by?v.create_scn

5??/

NAME???????????????????????????OPEN_MODE??RESTRICTED??????STATUS

——————————?———-?—————?————-

PDB$SEED???????????????????????READ?ONLY??NO??????????????NORMAL

MYPDB1?????????????????????????READ?WRITE?YES?????????????NORMAL

MYPDB2?????????????????????????READ?WRITE?NO??????????????NORMAL

SQL>

評:感覺PDB不像什么革命性的技術,只是將數據庫至于mount模式后,拷貝數據文件,做成一個備份,然后將此備份plug和unplug。這樣的技術,感覺跨平臺的遷移不太理想。

另外,由于一個cdb中可以掛多個pdb,資源的分配使用就變得非常重要了,在12c中,估計原來幾乎不常用的Resource Manager plan會逐步用起來。

關于redo,由于redo是可以多個pdb共享,因此cdb的管理者可以通過logmnr的方式去挖對應pdb的日志,從dump出來的redo log來看,redo log中含有container id(CON_ID,0為cdb,1為cdb$root, 2為pdb seed,3以上為pdb),pdbid和pxid,至少這些信息可以用于區分不同pdb中的事務。

我們一直都在努力堅持原創.......請不要一聲不吭,就悄悄拿走。

我原創,你原創,我們的內容世界才會更加精彩!

【所有原創內容版權均屬TechTarget,歡迎大家轉發分享。但未經授權,嚴禁任何媒體(平面媒體、網絡媒體、自媒體等)以及微信公眾號復制、轉載、摘編或以其他方式進行使用。】

微信公眾號

TechTarget

官方微博

TechTarget中國

總結

以上是生活随笔為你收集整理的oracle pdb是什么意思,浅谈Oracle数据库12c PDB技术的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 夜晚福利 | 三级a毛片 | 久久精品av | 国产毛茸茸 | 日日夜夜婷婷 | 99热都是精品 | 国产精品一级黄片 | 人妻少妇精品久久 | 成人午夜一区二区 | 久久精品黄色 | 手机版av| 狠狠干婷婷 | 影音先锋黑人 | 毛片动态图| 2025av在线播放 | 亚洲免费av片 | 在线观看涩涩视频 | 操极品| 日韩高清在线观看 | 久操精品在线 | 日韩毛片在线视频 | 日日久| 一区二区三区免费播放 | 天天色网站 | 黄色a一级视频 | 国产综合视频在线观看 | 精品视频在线免费 | 怡春院一区二区 | 亚洲成av| 欧美一区二区免费 | 成人在线免费观看视频 | 色一情一伦一子一伦一区 | 日本极品喷水 | 色av一区二区| 污污视频在线免费看 | 中文字幕亚洲欧美日韩 | 亚洲男女网站 | 国产精品国产一区二区三区四区 | 被扒开腿一边憋尿一边惩罚 | 久久久久亚洲av片无码下载蜜桃 | 毛片毛片毛片毛片毛片毛片毛片毛片毛片 | 很黄很色的视频 | 欧美精品自拍视频 | 韩国日本欧美一区 | 伊人在线 | 亚洲hhh | 国产少女免费观看高清 | 五月天激情开心网 | 亚洲资源在线观看 | 亚洲精品久久久久久久久 | 午夜精品成人毛片非洲 | 成人啪啪18免费游戏链接 | 性色av浪潮av | 亚洲va久久久噜噜噜久久天堂 | 99国产精品久久久久久久成人 | 李丽珍毛片 | 久久露脸国语精品国产91 | 在线国产视频一区 | 国产人妻黑人一区二区三区 | 国产午夜精品一区二区三区嫩草 | 久久性视频 | 国产色影院 | 亚洲精品不卡 | 久久久久激情 | 国产欧美一区二区三区在线看蜜臀 | 成人性生生活性生交3 | 亚洲国产欧美一区 | 日本不卡视频在线 | 黄色片视频免费在线观看 | 在线综合色 | 国产欧美日韩亚洲 | 欧美久草 | 日韩欧美视频一区二区三区 | 九九热国产 | 久久久久久无码精品大片 | av免费在线观看不卡 | 亚洲一区二区不卡在线观看 | 人人人妻人人澡人人爽欧美一区 | 久久综合色综合 | 波多野结衣一区二区三区免费视频 | 国产日日日| 国产综合久久 | 国产成人无码一区二区在线观看 | 亚洲黄色一区二区三区 | 欧美一级片一区二区 | 日韩精品免费一区二区在线观看 | 91超碰免费在线 | 久久婷婷国产 | 天天综合天天做天天综合 | 四十路av| 国产精品老牛影视 | 亚洲日本黄色 | 三浦惠理子aⅴ一二三区 | 激情内射人妻1区2区3区 | 日本不卡一区二区三区 | 最近中文字幕在线 | 久久久久久国产视频 | 亚洲综合av一区二区 | 国产精品国产三级国产专区52 |