溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

發(fā)布時(shí)間:2020-07-09 19:08:22 來(lái)源:網(wǎng)絡(luò) 閱讀:679 作者:余偉兵 欄目:關(guān)系型數(shù)據(jù)庫(kù)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB) ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

 上面左邊是我的個(gè)人微信,如需進(jìn)一步溝通,請(qǐng)加微信。  右邊是我的公眾號(hào)“Openstack私有云”,如有興趣,請(qǐng)關(guān)注。

    前兩天在PVE環(huán)境上搭建了oracle12C 的RAC環(huán)境(詳見(jiàn)另一篇博文“ProxmoxVE 之 安裝oracle12C rac集群”),安裝完成了grid集群環(huán)境的安裝以及oracle數(shù)據(jù)庫(kù)軟件的安裝,具備了創(chuàng)建數(shù)據(jù)庫(kù)的條件。現(xiàn)在在這個(gè)RAC環(huán)境上使用dbca創(chuàng)建數(shù)據(jù)庫(kù)CDB和PDB。


相關(guān)規(guī)劃如下:

a、存儲(chǔ)規(guī)劃:

    1、  GRID集群組件磁盤(pán)組

+grid: 1個(gè),用于OCR+VOTING DISK ,85G ,使用asmdiskc ,共享存儲(chǔ)

    2、  數(shù)據(jù)庫(kù)安裝磁盤(pán)組

+system:用于數(shù)據(jù)庫(kù)基本表空間,控制文件,參數(shù)文件等,50G,使用asmdiskd ,共享存儲(chǔ)

+recovery:用于歸檔與閃回日志空間,50G,使用asmdiske ,共享存儲(chǔ)

+data:用戶數(shù)據(jù)庫(kù)業(yè)務(wù)表空間,50G,使用asmdiskf ,共享存儲(chǔ)


b、IP規(guī)劃:

    oraclenode1:

        publicip : ens18 :192.168.1.32

        vip:192.168.1.36

        privateip :ens19 :192.168.170.32

    oraclenode2:

        publicip : ens18 :192.168.1.33

        vip:192.168.1.37

        privateip :ens19 :192.168.170.33


        scanip :192.168.1.38


c、軟件版本:

    操作系統(tǒng):CentOS 7.2

    數(shù)據(jù)庫(kù):ORACLE12c R2

    集群管理軟件:ORACLEGRID 12.2.0.1


d、主機(jī)名規(guī)劃:    

#public ip 

192.168.1.32         oraclenode1

192.168.1.33         oraclenode2

 

#private ip 

192.168.170.32  oraclenode1pri

192.168.170.32  oraclenode2pri

 

#vip ip

192.168.1.36         oraclenode1vip

192.168.1.37         oraclenode2vip

 

#scan ip

192.168.1.38         oraclenodescan


e、用戶及用戶組規(guī)劃:

groupadd -g 60001 oinstall

groupadd -g 60002 dba

groupadd -g 60003 oper

groupadd -g 60004 backupdba

groupadd -g 60005 dgdba

groupadd -g 60006 kmdba

groupadd -g 60007 asmdba

groupadd -g 60008 asmoper

groupadd -g 60009 asmadmin

useradd -u 61001 -g oinstall -G asmadmin,asmdba,dba,asmoper grid

useradd -u 61002 -g oinstall -G dba,backupdba,dgdba,kmdba,asmadmin,oper,asmdba oracle

 

echo "grid" | passwd --stdin grid

echo "oracle" | passwd --stdin oracle


f、目錄規(guī)劃:

mkdir -p /data/oracle/app/grid

mkdir -p /data/oracle/app/12.2.0.1/grid

chown -R grid:oinstall /data/oracle

 

mkdir -p /data/oracle/app/oraInventory

chown -R grid:oinstall /data/oracle/app/oraInventory

 

mkdir -p /data/oracle/app/oracle

chown -R oracle:oinstall /data/oracle/app/oracle

chmod -R 775 /data/oracle

    

asm磁盤(pán)組安裝:

    登錄grid賬號(hào),ssh grid@oraclenode1 -X   ,運(yùn)行 asmca ,按照規(guī)劃創(chuàng)建asm磁盤(pán)組,其中g(shù)rid磁盤(pán)組在配置grid的時(shí)候已經(jīng)創(chuàng)建了,剩下system、recovery、data三個(gè)磁盤(pán)組需要?jiǎng)?chuàng)建:

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

創(chuàng)建完成之后:

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

上面顯示4個(gè)asm磁盤(pán)組都已經(jīng)創(chuàng)建完成。接下來(lái)安裝CDB數(shù)據(jù)庫(kù)和PDB數(shù)據(jù)庫(kù)。


CDB數(shù)據(jù)庫(kù)安裝:

    以oracle賬號(hào)登錄,ssh oracle@oraclenode1 -X ,運(yùn)行 dbca :

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)


ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

上面這一步很重要,字符集一旦選定就不能改了。提前跟需求部門(mén)確定字符集,如果是數(shù)據(jù)庫(kù)遷移,提前確定源數(shù)據(jù)庫(kù)的字符集,使之一致。


ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

使用統(tǒng)一的密碼 : oracle

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)


ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)


ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

開(kāi)始安裝,耐心等待。。。。。

安裝完成,如下:

ProxmoxVE 之 安裝oracle12C 數(shù)據(jù)庫(kù)(CDB和PDB)

使用grid登錄,使用crsctl status res -t 命令查看狀態(tài)如下:

[grid@oraclenode2 ~]$ crsctl status res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr
               ONLINE  ONLINE       oraclenode1              STABLE
               ONLINE  ONLINE       oraclenode2              STABLE
ora.DATA.dg
               ONLINE  ONLINE       oraclenode1              STABLE
               ONLINE  ONLINE       oraclenode2              STABLE
ora.GRID.dg
               ONLINE  ONLINE       oraclenode1              STABLE
               ONLINE  ONLINE       oraclenode2              STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       oraclenode1              STABLE
               ONLINE  ONLINE       oraclenode2              STABLE
ora.RECOVERY.dg
               ONLINE  ONLINE       oraclenode1              STABLE
               ONLINE  ONLINE       oraclenode2              STABLE
ora.SYSTEM.dg
               ONLINE  ONLINE       oraclenode1              STABLE
               ONLINE  ONLINE       oraclenode2              STABLE
ora.chad
               ONLINE  ONLINE       oraclenode1              STABLE
               ONLINE  ONLINE       oraclenode2              STABLE
ora.net1.network
               ONLINE  ONLINE       oraclenode1              STABLE
               ONLINE  ONLINE       oraclenode2              STABLE
ora.ons
               ONLINE  ONLINE       oraclenode1              STABLE
               ONLINE  ONLINE       oraclenode2              STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       oraclenode1              STABLE
ora.MGMTLSNR
      1        ONLINE  ONLINE       oraclenode1              169.254.178.157 192.
                                                             168.170.32,STABLE
ora.asm
      1        ONLINE  ONLINE       oraclenode1              Started,STABLE
      2        ONLINE  ONLINE       oraclenode2              Started,STABLE
      3        OFFLINE OFFLINE                               STABLE
ora.cvu
      1        ONLINE  ONLINE       oraclenode1              STABLE
ora.mgmtdb
      1        ONLINE  ONLINE       oraclenode1              Open,STABLE
ora.oraclenode1.vip
      1        ONLINE  ONLINE       oraclenode1              STABLE
ora.oraclenode2.vip
      1        ONLINE  ONLINE       oraclenode2              STABLE
ora.orcl.db
      1        ONLINE  ONLINE       oraclenode1              Open,HOME=/data/orac
                                                             le/app/oracle/produc
                                                             t/12.2.0.1/db_1,STAB
                                                             LE
      2        ONLINE  ONLINE       oraclenode2              Open,HOME=/data/orac
                                                             le/app/oracle/produc
                                                             t/12.2.0.1/db_1,STAB
                                                             LE
ora.qosmserver
      1        ONLINE  ONLINE       oraclenode1              STABLE
ora.scan1.vip
      1        ONLINE  ONLINE       oraclenode1              STABLE
--------------------------------------------------------------------------------
[grid@oraclenode2 ~]$

現(xiàn)在就可以很開(kāi)心的使用CDB和PDB了,相關(guān)的概念和常用操作具體可以參考這個(gè)網(wǎng)址:

https://blog.51cto.com/fengfeng688/1946278

需要注意的是,oracle和grid的環(huán)境變量中有一個(gè)SID,兩個(gè)rac節(jié)點(diǎn)需要不一樣,比如數(shù)據(jù)庫(kù)安裝的時(shí)候SID前綴設(shè)置為orcldb1 ,那么兩個(gè)節(jié)點(diǎn)的$ORACLE_SID分別應(yīng)該是: 

orcldb11

orcldb12

grid的環(huán)境變量,$ORACLE_SID分別是:

ASMI

ASM2

如果SID沒(méi)有設(shè)置對(duì),查看集群資源的時(shí)候會(huì)看到db資源處于OPEN狀態(tài),但是使用oracle賬號(hào)登錄使用sqlplus進(jìn)入數(shù)據(jù)庫(kù)管理的時(shí)候會(huì)提示connect to an idle instance 。


CDB和PDB相關(guān)測(cè)試:

  

查看當(dāng)前的容器:
SQL> show con_name;
CON_NAME
------------------------------
CDB$ROOT

查看CDB中的PDB信息:
SQL> select con_id, dbid, guid, name , open_mode from v$pdbs;
    CON_ID DBID GUID
---------- ---------- --------------------------------
NAME
--------------------------------------------------------------------------------
OPEN_MODE
--------------------
 2 2349385738 7F78C92375923F6DE0532001A8C0107F
PDB$SEED
READ ONLY
 3  364970257 7F7A374E7B7E37F5E0532001A8C09EA4
ORCL_PDB1
READ WRITE
    CON_ID DBID GUID
---------- ---------- --------------------------------
NAME
--------------------------------------------------------------------------------
OPEN_MODE
--------------------

創(chuàng)建一個(gè)測(cè)試pdb:
SQL> create pluggable database test_pdb admin user admin identified by admin;
Pluggable database created.

將一個(gè)pdb打開(kāi):
SQL> alter pluggable database test_pdb open; 
Pluggable database altered.
SQL> select con_id,dbid,con_uid,guid,name,open_mode,create_scn,total_size,block_size from v$pdbs;
    CON_ID DBID CON_UID GUID
---------- ---------- ---------- --------------------------------
NAME
--------------------------------------------------------------------------------
OPEN_MODE     CREATE_SCN TOTAL_SIZE BLOCK_SIZE
-------------------- ---------- ---------- ----------
 2 2349385738 2349385738 7F78C92375923F6DE0532001A8C0107F
PDB$SEED
READ ONLY1408773  801112064 8192
 3  364970257  364970257 7F7A374E7B7E37F5E0532001A8C09EA4
ORCL_PDB1
READ WRITE1467170  911212544 8192
    CON_ID DBID CON_UID GUID
---------- ---------- ---------- --------------------------------
NAME
--------------------------------------------------------------------------------
OPEN_MODE     CREATE_SCN TOTAL_SIZE BLOCK_SIZE
-------------------- ---------- ---------- ----------
 4  841599650  841599650 7F7A57321EE03A16E0532001A8C0E4B4
TEST_PDB
READ WRITE1471014  801112064 8192

從一個(gè)pdb中克隆一個(gè)pdb:
SQL> create pluggable database test2_pdb from test_pdb; 
Pluggable database created.
SQL>  alter pluggable database test2_pdb open;          
Pluggable database altered.

切換cdb和pdb線程:
SQL> alter session set container=test_pdb;
Session altered.
SQL>  alter session set container=cdb$root; 
Session altered.

關(guān)閉一個(gè)pdb:
SQL> alter pluggable database test_pdb close;
Pluggable database altered.

關(guān)閉所有的pdb:
SQL> alter pluggable database all close;  
Pluggable database altered.

拔出pdb并生成xml文件:
SQL> alter pluggable database orcl_pdb1 unplug into '/home/oracle/orcl_pdb1.xml';
alter pluggable database orcl_pdb1 unplug into '/home/oracle/orcl_pdb1.xml'
*
ERROR at line 1:
ORA-65025: Pluggable database ORCL_PDB1 is not closed on all instances.
上面報(bào)錯(cuò),是因?yàn)樵趓ac環(huán)境,需要在所有實(shí)例中關(guān)閉pdb,在另外一個(gè)節(jié)點(diǎn)oraclenode2中也關(guān)閉pdb后,在執(zhí)行下面的語(yǔ)句:
SQL> alter pluggable database orcl_pdb1 unplug into '/home/oracle/orcl_pdb1.xml';
Pluggable database altered.

刪除pdb:
SQL> drop pluggable database orcl_pdb1 keep datafiles;
Pluggable database dropped.

在另一個(gè)節(jié)點(diǎn)oraclenode2上執(zhí)行存儲(chǔ)過(guò)程檢查pdb兼容性:
SQL> exec DBMS_PDB.Check_Plug_Compatibility(PDB_Descr_File=>'/home/oracle/orcl_pdb1.xml'); 
BEGIN DBMS_PDB.Check_Plug_Compatibility(PDB_Descr_File=>'/home/oracle/orcl_pdb1.xml'); END;
      *
ERROR at line 1:
ORA-06550: line 1, column 7:
PLS-00221: 'CHECK_PLUG_COMPATIBILITY' is not a procedure or is undefined
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
報(bào)錯(cuò)說(shuō)沒(méi)有Check_Plug_Compatibility這個(gè)存儲(chǔ)過(guò)程,忽略,因?yàn)槭峭惶准海姹臼且恢碌??!?
將xml文件拷貝到另一個(gè)節(jié)點(diǎn)oraclenode2上,并執(zhí)行從xml中創(chuàng)建pdb:
SQL> create pluggable database orcl_pdb1  using '/home/oracle/orcl_pdb1.xml' ;

Pluggable database created.
SQL> 
SQL> alter pluggable database orcl_pdb1 open;
Pluggable database altered.
SQL>

  

至此,CDB和PDB相關(guān)的簡(jiǎn)單測(cè)試完成。


總結(jié):

    在安裝完成RAC集群的情況下,再安裝數(shù)據(jù)庫(kù)軟件,安裝數(shù)據(jù)庫(kù)就顯得比較簡(jiǎn)單了,主要難點(diǎn)還是在安裝RAC集群grid上面 。

    數(shù)據(jù)庫(kù)的安裝主要的工作應(yīng)該是需要放在根據(jù)實(shí)際生產(chǎn)環(huán)境規(guī)劃存儲(chǔ),規(guī)劃數(shù)據(jù)文件,規(guī)劃CDB和PDB,以及優(yōu)化相關(guān)的數(shù)據(jù)庫(kù)參數(shù)。安裝本身來(lái)說(shuō)是比較簡(jiǎn)單的,只需要在圖形化界面中運(yùn)行dbca一路根據(jù)規(guī)劃進(jìn)行安裝即可。

    在我自己的安裝過(guò)程中,碰到一個(gè)問(wèn)題是安裝成功后發(fā)現(xiàn)sqlplus進(jìn)去提示connect to an idle instance  ,后面檢查發(fā)現(xiàn)是oracle賬號(hào)的$ORACLE_SID環(huán)境變量設(shè)置不正確導(dǎo)致的,調(diào)整正確后就正常了。

    CDB和PDB還有客戶端的連接使用這一塊沒(méi)有測(cè)試。

    從方便性上現(xiàn)在還不能說(shuō)有了PDB之后就更方便了,只能說(shuō)有了PDB之后,對(duì)于更多復(fù)雜應(yīng)用和更大型的數(shù)據(jù)庫(kù)應(yīng)用邏輯區(qū)分更清楚一些了,同一類(lèi)的業(yè)務(wù),可以新建一個(gè)CDB,在一個(gè)CDB中對(duì)每一個(gè)業(yè)務(wù)創(chuàng)建一個(gè)PDB。原來(lái)的數(shù)據(jù)庫(kù)是通過(guò)用戶schema來(lái)區(qū)分,現(xiàn)在直接通過(guò)pdb區(qū)分。另外數(shù)據(jù)導(dǎo)入導(dǎo)出方面沒(méi)有經(jīng)過(guò)測(cè)試,不知道PDB的拔出插入是不是比以前的expdp或者rman方式要效率高,只有在今后使用過(guò)程中通過(guò)實(shí)踐來(lái)檢驗(yàn)了。





向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI