標籤:oracle 12c 管理 建立pdb 串連 建立使用者 修改參數
1.啟動CDB和PDB資料庫
SQL> select con_id,dbid,name,open_mode from v$pdbs;
CON_ID DBID NAME OPEN_MODE
---------- ---------- ------------------------------ ----------
2 1226396669 PDB$SEED READ ONLY
3 411454583 DB12CCD MOUNTED
SQL> alter pluggable database all open;
Pluggable database altered.
SQL> select con_id,dbid,name,open_mode from v$pdbs;
CON_ID DBID NAME OPEN_MODE
---------- ---------- ------------------------------ ----------
2 1226396669 PDB$SEED READ ONLY
3 411454583 DB12CCD READ WRITE
2.建立PDB資料庫
SQL> select name,cdb from v$database;
NAME CDB
--------- ---
DB12C YES
SQL> select pdb_id,pdb_name,dbid,status,creation_scn from dba_pdbs;
PDB_ID PDB_NAME DBID STATUS CREATION_SCN
---------- -------------------- ---------- --------- ------------
3 DB12CCD 411454583 NORMAL 1744330
2 PDB$SEED1226396669 NORMAL 1594399
SQL> create pluggable database test admin user test identified by test file_name_convert=(‘/u01/app/oracle/oradata/cdb/pdbseed/‘,‘/u01/app/oracle/oradata/cdb/test/‘);
Pluggable database created.
create pluggable database test1 admin user test1 identified by test1 file_name_convert=(‘/u01/app/oracle/oradata/cdb/test/‘,‘/u01/app/oracle/oradata/cdb/test1/‘);
3.建立串連
--進入cdb
sqlplus / as sysdba
sqlplus sys/[email protected]:1521/cdb as sysdba
--進入pdb
3.1)通過tns方式用建立的admin user登入
[[email protected] ~]$ sqlplus sys/[email protected]:1521/test as sysdba
SQL> show con_name
CON_NAME
------------------------------
TEST
--查看admin user擁有的許可權
SQL> select * from session_privs;
PRIVILEGE
----------------------------------------
SET CONTAINER
CREATE PLUGGABLE DATABASE
CREATE SESSION
3.2)通過set container來串連pdb
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB MOUNTED
4 TEST READ WRITE NO
SQL> alter session set container=test;
Session altered.
SQL> show con_name
CON_NAME
------------------------------
TEST
4.開啟和關閉pdb
SQL>alter pluggable database all close immediate;
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB MOUNTED
4 TEST MOUNTED
--開啟單個pdb
SQL> alter pluggable database pdb open;
Pluggable database altered.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB READ WRITE NO
4 TEST MOUNTED
--開啟所有pdb
SQL> alter pluggable database all open;
Pluggable database altered.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB READ WRITE NO
4 TEST READ WRITE NO
--關閉所有pdb
SQL> alter pluggable database all close immediate;
Pluggable database altered.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB MOUNTED
4 TEST
5.建立使用者。
1).概述
在cdb預設是container=all,在cdb中只能建立全域使用者;
在pdb預設是container=current,在pdb只能建立本機使用者。
http://dovelauren.blog.51cto.com/9876026/1719310
如果在cdb中建立使用者會在cdb和所有的pdb中建立該使用者,但是pdb中的全域使用者需要另外授權才能夠在pdb中訪問)。
2).建立全域使用者
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL> create user c##t identified by t;
User created.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB READ WRITE NO
4 PDB1 READ WRITE NO
3).建立本機使用者
SQL> alter session set container=pdb1;
Session altered.
SQL> create user t identified by t;
User created.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
4 PDB1 READ WRITE NO
6.使用者授權
使用者授權預設情況下是只會給當前container,在cdb中也可以指定container=all,對所有open的pdb且存在該使用者都進行授權
Connected.
SQL> grant connect,resource to c##t;
Grant succeeded.
SQL> grant connect,resource to c##t container=all;
Grant succeeded.
7.修改參數
在cdb中修改,pdb會繼承進去;如果在pdb中修改會覆蓋pdb從cdb中繼承的參數含義
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL> show parameter open_cursors
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
open_cursors integer 300
SQL> alter system set open_cursors=500;
System altered.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB READ WRITE NO
4 PDB1 READ WRITE NO
SQL> alter session set container=pdb1;
Session altered.
SQL> show parameter open_cursors
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
open_cursors integer 500
SQL> alter system set open_cursors=100;
System altered.
SQL> show parameter open_cursors
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
open_cursors integer 100
SQL> show con_name
CON_NAME
------------------------------
PDB1
SQL> alter session set container=CDB$ROOT;
Session altered.
SQL> show parameter open_cursors
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
open_cursors integer 500
本文出自 “知行合一” 部落格,請務必保留此出處http://dovelauren.blog.51cto.com/9876026/1719416
Oracle 12c 日常維護