oracle数据库常用命令二(元数据PDB克隆 PDB子集克隆)

元数据PDB克隆

show CON_NAME
CREATE PLUGGABLE DATABASE pdb10 ADMIN USER pdb_adm IDENTIFIED BY aabb123
FILE_NAME_CONVERT=(‘D:\app\Administrator\oradata\CDB1\pdbseed’,
‘D:\app\Administrator\oradata\CDB1\pdb10’);

ALTER PLUGGABLE DATABASE pdb10 OPEN;
在这里插入图片描述
ALTER SESSION SET CONTAINER = pdb10;
CREATE TABLESPACE users
DATAFILE ‘D:\app\Administrator\oradata\CDB1\pdb10\users01.dbf’
SIZE 1M AUTOEXTEND ON NEXT 1M;
在这里插入图片描述
CREATE USER test IDENTIFIED BY test
DEFAULT TABLESPACE users
QUOTA UNLIMITED ON users;
在这里插入图片描述
CREATE TABLE test.t1 (
id NUMBER
);
INSERT INTO test.t1 VALUES (1);
COMMIT;
在这里插入图片描述
SELECT COUNT() FROM test.t1;
在这里插入图片描述
show pdbs
ALTER PLUGGABLE DATABASE pdb10 CLOSE;
ALTER PLUGGABLE DATABASE pdb10 OPEN READ ONLY;
show pdbs
在这里插入图片描述
CREATE PLUGGABLE DATABASE pdb11 FROM pdb10
FILE_NAME_CONVERT=(‘D:\app\Administrator\oradata\CDB1\PDB10’,
‘D:\app\Administrator\oradata\CDB1\PDB11’) NO DATA;
show pdbs
在这里插入图片描述
show pdbs
ALTER PLUGGABLE DATABASE pdb11 OPEN READ WRITE;
在这里插入图片描述
show pdbs
ALTER PLUGGABLE DATABASE pdb10 CLOSE;
ALTER PLUGGABLE DATABASE pdb10 OPEN READ WRITE;
在这里插入图片描述
有表无数据
ALTER SESSION SET CONTAINER = pdb11;
SELECT * FROM test.t1;
在这里插入图片描述
SELECT COUNT(
) FROM test.t1;
在这里插入图片描述

PDB子集克隆

创建PDB20
ALTER SESSION SET CONTAINER=cdb$root;
CREATE PLUGGABLE DATABASE pdb20 ADMIN USER pdb_adm IDENTIFIED BY aabb123
FILE_NAME_CONVERT=(‘D:\app\Administrator\oradata\CDB1\pdbseed’,
‘D:\app\Administrator\oradata\CDB1\pdb20’);
ALTER PLUGGABLE DATABASE pdb20 OPEN;
在这里插入图片描述
ALTER SESSION SET CONTAINER = pdb20;
CREATE TABLESPACE ts1
DATAFILE ‘D:\app\Administrator\oradata\CDB1\PDB20\ts101.dbf’
SIZE 1M AUTOEXTEND ON NEXT 1M;

CREATE USER test1 IDENTIFIED BY test1
DEFAULT TABLESPACE ts1
QUOTA UNLIMITED ON ts1;
在这里插入图片描述
CREATE TABLE test1.t1 (
id NUMBER
);
INSERT INTO test1.t1 VALUES (1);
COMMIT;
在这里插入图片描述
CREATE TABLESPACE ts2
DATAFILE ‘D:\app\Administrator\oradata\CDB1\PDB20\ts201.dbf’
SIZE 1M AUTOEXTEND ON NEXT 1M;

CREATE USER test2 IDENTIFIED BY test2
DEFAULT TABLESPACE ts2
QUOTA UNLIMITED ON ts2;
在这里插入图片描述
CREATE TABLE test2.t2 (
id NUMBER
);
INSERT INTO test2.t2 VALUES (1);
COMMIT;
在这里插入图片描述
CREATE TABLESPACE ts3
DATAFILE ‘D:\app\Administrator\oradata\CDB1\PDB20\ts301.dbf’
SIZE 1M AUTOEXTEND ON NEXT 1M;

CREATE USER test3 IDENTIFIED BY test3
DEFAULT TABLESPACE ts3
QUOTA UNLIMITED ON ts3;
在这里插入图片描述
CREATE TABLE test3.t3 (
id NUMBER
);
INSERT INTO test3.t3 VALUES (1);
COMMIT;
在这里插入图片描述
SELECT owner, table_name, tablespace_name
FROM dba_tables
WHERE table_name IN (‘T1’,‘T2’,‘T3’)
ORDER BY owner
在这里插入图片描述
ALTER SESSION SET CONTAINER=cdb$root;
CREATE PLUGGABLE DATABASE pdb21 FROM pdb20
FILE_NAME_CONVERT=(‘D:\app\Administrator\oradata\CDB1\pdb20’,
‘D:\app\Administrator\oradata\CDB1\pdb21’)
USER_TABLESPACES=(‘ts1’, ‘ts2’);
ALTER PLUGGABLE DATABASE pdb21 OPEN;
在这里插入图片描述
ALTER SESSION SET CONTAINER = pdb21;
在这里插入图片描述
在这里插入图片描述
SELECT * FROM test1.t1;
在这里插入图片描述
SELECT * FROM test2.t2;
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

创建一个不存在任何用户定义表空间的克隆
ALTER SESSION SET CONTAINER=cdb$root;
CREATE PLUGGABLE DATABASE pdb22 FROM pdb20
FILE_NAME_CONVERT=(‘D:\app\Administrator\oradata\CDB1\pdb20’,
‘D:\app\Administrator\oradata\CDB1\pdb22’)
USER_TABLESPACES=NONE;
ALTER PLUGGABLE DATABASE pdb22 OPEN;
在这里插入图片描述
ALTER SESSION SET CONTAINER = pdb22;
SELECT * FROM test1.t1;
在这里插入图片描述
在这里插入图片描述

克隆所有用户定义的表空间
ALTER SESSION SET CONTAINER=cdb$root;
CREATE PLUGGABLE DATABASE pdb23 FROM pdb20
FILE_NAME_CONVERT=(‘D:\app\Administrator\oradata\CDB1\pdb20’,
‘D:\app\Administrator\oradata\CDB1\pdb23’)
USER_TABLESPACES=ALL;
ALTER PLUGGABLE DATABASE pdb23 OPEN;
在这里插入图片描述
ALTER SESSION SET CONTAINER = pdb23;
SELECT * FROM test3.t3;
在这里插入图片描述

列出要排除的那些表空间
ALTER SESSION SET CONTAINER=cdb$root;
CREATE PLUGGABLE DATABASE pdb24 FROM pdb20
FILE_NAME_CONVERT=(‘D:\app\Administrator\oradata\CDB1\pdb20’,
‘D:\app\Administrator\oradata\CDB1\pdb24’)
USER_TABLESPACES=ALL EXCEPT(‘ts3’);
ALTER PLUGGABLE DATABASE pdb24 OPEN;
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_39568073/article/details/114709581
pdb