Oracle 12c CDB&PDB 基本维护

简介:

1.查看数据库是否为多租户数据库(CDB)
SQL> SELECT CDB FROM V$DATABASE;

CDB

YES
2.查看当前容器名字
以下命令只能在12c客户端输入
SQL> show pdbs

CON_ID CON_NAME                       OPEN MODE  RESTRICTED
AI 代码解读

     2 PDB$SEED                       READ ONLY  NO
     3 ORCLPDB                        READ WRITE NO
AI 代码解读

SQL> show con_name

CON_NAME

CDB$ROOT

select sys_context('userenv', 'con_name') "Container DB" from dual;

3.pdb管理
3.1直接创建pdb数据库
SQL> CREATE PLUGGABLE DATABASE testdb
2 ADMIN USER testdbdb IDENTIFIED BY testdb
3 STORAGE (MAXSIZE 2G MAX_SHARED_TEMP_SIZE 100M)
4 DEFAULT TABLESPACE testdbdb DATAFILE 'C:\app\Administrator\virtual\oradata\orcl\testdbdb_001.dbf' SIZE 25M AUTOEXTEND ON;
DEFAULT TABLESPACE testdbdb DATAFILE 'C:\app\Administrator\virtual\oradata\orcl\testdbdb_001.dbf' SIZE 25M AUTOEXTEND ON
*
第 4 行出现错误:
ORA-65016: 必须指定 FILE_NAME_CONVERT
SQL> set line 1000
SQL> show parameter db_create_file_dest

NAME TYPE VALUE


db_create_file_dest string
SQL> alter system set db_create_file_dest='C:\app\Administrator\virtual\oradata';

系统已更改。

SQL> show parameter db_create_file_dest

NAME TYPE VALUE


db_create_file_dest string C:\app\Administrator\virtual\o
radata
切换到root容器创建

SQL> alter session set container=cdb$root;

会话已更改。

SQL> show con_name

CON_NAME
------------------------------ CDB$ROOT
SQL> CREATE PLUGGABLE DATABASE pdb2 ADMIN USER pdb2 IDENTIFIED BY pdb2
2 STORAGE (MAXSIZE 2G MAX_SHARED_TEMP_SIZE 100M)
3 DEFAULT TABLESPACE pdb2
4 DATAFILE 'C:\app\Administrator\virtual\oradata\orcl\pdb2\pdb201.dbf' SIZE 250M
5 AUTOEXTEND ON 6 PATH_PREFIX = 'C:\app\Administrator\virtual\oradata\orcl\pdb2'
7 FILE_NAME_CONVERT = ('C:\app\Administrator\virtual\oradata\orcl\DATAFILE\O1_MF_S
8 YSTEMB9GXSYNO.DBF', 'C:\app\Administrator\virtual\oradata\orcl\pdb2\system01.dbf'
9 ,'C:\app\Administrator\virtual\oradata\orcl\DATAFILE\O1_MF_SYSAUXB9GXSYLX.DBF'
10 ,'C:\app\Administrator\virtual\oradata\orcl\pdb2\sysaux01.dbf'
11 ,'C:\app\Administrator\virtual\oradata\orcl\DATAFILE\PDBSEED_TEMP012017-12-13_15
12 -02-15-PM.dbf','C:\app\Administrator\virtual\oradata\orcl\pdb2\temp01.dbf');
CREATE PLUGGABLE DATABASE pdb2 ADMIN USER pdb2 IDENTIFIED BY pdb2
*
第 1 行出现错误:
ORA-65005: 文件缺少文件名模式或其文件名模式无效 - C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\PDBSEED\SYSTEM01.DBF
SQL> set line 200
SQL> col file_name for a80
SQL> select con_id,file_name from cdb_data_files order by 1;

CON_ID FILE_NAME
AI 代码解读

     1 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\SYSTEM01.DBF
     1 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\USERS01.DBF
     1 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\UNDOTBS01.DBF
     1 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\SYSAUX01.DBF
     3 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\ORCLPDB\UNDOTBS01.DBF
     3 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\ORCLPDB\USERS01.DBF
     3 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\ORCLPDB\SYSTEM01.DBF
     3 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\ORCLPDB\SYSAUX01.DBF                                               
AI 代码解读

已选择 8 行。
SQL>create pluggable database pdb2 admin user pdb2 identified by oracle file_name_convert=('C:\app\Administrator\virtual\oradata\orcl\pdbseed','C:\app\Administrator\virtual\oradata\orcl\pdb2');
SQL> alter pluggable database pdb2 open read write;
SQL> create TABLESPACE pdb2
2 DATAFILE 'C:\app\Administrator\virtual\oradata\orcl\pdb2\pdb201.dbf' SIZE 250M
3 AUTOEXTEND ON
4 ;

表空间已创建。

SQL> alter user pdb2 DEFAULT TABLESPACE pdb2;

用户已更改。

SQL> select con_id,file_name from cdb_data_files order by 1;

CON_ID FILE_NAME
AI 代码解读

     4 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\PDB2\SYSTEM01.DBF
     4 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\PDB2\SYSAUX01.DBF
     4 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\PDB2\UNDOTBS01.DBF
     4 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\PDB2\PDB201.DBF
             SQL> DROP PLUGGABLE DATABASE pdb2 INCLUDING DATAFILES;
AI 代码解读

DROP PLUGGABLE DATABASE pdb2 INCLUDING DATAFILES *
第 1 行出现错误:
ORA-65025: 未在所有实例上关闭可插入数据库 PDB2。

SQL> alter pluggable database pdb2 close 2 ;

插接式数据库已变更。

SQL> DROP PLUGGABLE DATABASE pdb2 INCLUDING DATAFILES;

插接式数据库已删除。
CREATE PLUGGABLE DATABASE pdb2 ADMIN USER pdb2 IDENTIFIED BY pdb2 
STORAGE (MAXSIZE 2G MAX_SHARED_TEMP_SIZE 100M) 
PATH_PREFIX = 'C:\app\Administrator\virtual\oradata\orcl\pdb2'
FILE_NAME_CONVERT = ('C:\app\Administrator\virtual\oradata\orcl\pdbseed\system01.dbf'
, 'C:\app\Administrator\virtual\oradata\orcl\pdb2\system01.dbf'
,'C:\app\Administrator\virtual\oradata\orcl\pdbseed\sysaux01.dbf'
,'C:\app\Administrator\virtual\oradata\orcl\pdb2\sysaux01.dbf'
,'C:\app\Administrator\virtual\oradata\orcl\pdbseed\TEMP012017-12-12_14-30-01-009-PM.dbf'
,'C:\app\Administrator\virtual\oradata\orcl\pdb2\temp01.dbf',
'C:\app\Administrator\virtual\oradata\orcl\pdbseed\UNDOTBS01.DBF'
,'C:\app\Administrator\virtual\oradata\orcl\pdb2\UNDOTBS01.DBF');
SQL> alter pluggable database pdb2 open read write; 
插接式数据库已变更。

SQL> alter session set container=pdb2;

会话已更改。
SQL> create TABLESPACE pdb2 DATAFILE 'C:\app\Administrator\virtual\oradata\orcl\pdb2\pdb201.dbf' SIZE 250M AUTOEXTEND ON;

表空间已创建。

SQL> alter user pdb2 DEFAULT TABLESPACE pdb2;

用户已更改。
SQL> set line 1000
SQL> col file_name format A100
SQL> select con_id,file_name from cdb_data_files order by 1;

CON_ID FILE_NAME
AI 代码解读

     4 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\PDB2\SYSTEM01.DBF
     4 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\PDB2\SYSAUX01.DBF
     4 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\PDB2\UNDOTBS01.DBF
     4 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\ORCL\PDB2\PDB201.DBF
AI 代码解读

3.2 unplug
SQL> alter pluggable database pdb2 unplug into 'c:\pdb2.xml'; alter pluggable database pdb2 unplug into 'c:\pdb2.xml'
*
第 1 行出现错误:
ORA-65025: 未在所有实例上关闭可插入数据库 PDB2。

SQL> alter pluggable database pdb2 close; 
插接式数据库已变更。
SQL> alter pluggable database pdb2 unplug into 'C:\app\Administrator\virtual\oradata\pdb2.xml';

插接式数据库已变更。
unplug后pdb只能mount不能open
SQL> alter pluggable database pdb2 open read only;
alter pluggable database pdb2 open read only
*
第 1 行出现错误:
ORA-65086: 无法打开/关闭可插入数据库
SQL> drop pluggable database pdb2; 
插接式数据库已删除。
SQL> create pluggable database pdb2 using 'C:\app\Administrator\virtual\oradata\pdb2.xml' nocopy; 
插接式数据库已创建。
静默建pdb和cdb
dbca -silent -createDatabase -templateName C:\app\Administrator\virtual\product\12.2.0\dbhome_2\assistants\dbca\templates\General_Purpose.dbc -gdbname newtest -sid newtest -characterSet UTF8 -createAsContainerDatabase true -sysPassword zncg3008_ZNCG -systemPassword zncg3008ZNCG
Oracle 12c CDB&PDB 基本维护





     本文转自whshurk 51CTO博客,原文链接:http://blog.51cto.com/shurk/2050191,如需转载请自行联系原作者





目录
打赏
0
相关文章
百度搜索:蓝易云【docker部署并配置oracle12c的cdb和pdb教程!】
以上是使用Docker部署和配置Oracle 12c CDB和PDB的简要教程。请注意,这只是一个概述,并且可能需要根据你的实际情况进行适当的调整和配置。建议参考Oracle官方文档和相关资源,以获得更详细和全面的指导。
150 2
Oracle 12c支持哪些数据类型?
【7月更文挑战第20天】Oracle 12c支持哪些数据类型?
130 2
Oracle 12c有哪些新特性?
【7月更文挑战第20天】Oracle 12c有哪些新特性?
95 2
Oracle 12c的Adaptive执行计划:数据的“聪明导航员”
【4月更文挑战第19天】Oracle 12c的Adaptive执行计划是数据库查询的智能优化工具,能根据实际运行情况动态调整执行策略。它像一个聪明的导航系统,不仅生成初始执行计划,还能实时监控并适应统计信息和资源变化,例如自动切换索引或调整并行度。此外,它支持自适应连接和统计信息收集,提升处理复杂查询和变化数据环境的能力。数据管理员应充分利用这一特性来优化查询性能和用户体验。
Oracle 12c的内存列存储:数据的“闪电侠”
【4月更文挑战第19天】Oracle 12c的内存列存储以超高速度革新数据处理,结合列存储与内存技术,实现快速查询与压缩。它支持向量化查询和并行处理,提升效率,但需合理配置以平衡系统资源。作为数据管理员,应善用此功能,适应业务需求和技术发展。
Oracle 12c的多重索引:数据的“多维导航仪”
【4月更文挑战第19天】Oracle 12c的多重索引提升数据查询效率,如同多维导航仪。在同一表上创建针对不同列的多个索引,加速检索过程。虽然过多索引会增加存储和维护成本,但合理选择和使用索引策略,结合位图、函数索引等高级特性,能优化查询,应对复杂场景。数据管理员应善用这些工具,根据需求进行索引管理,支持企业数据分析。
Oracle 12c的不可见字段:数据的“隐形斗篷”
【4月更文挑战第19天】Oracle 12c引入了不可见字段,这是一种隐藏数据列的特性,用于增强数据安全性和实现业务逻辑。不可见字段在常规查询中不显示,但参与数据操作,适合存储敏感信息或内部元数据。创建时只需在列定义中指定“INVISIBLE”属性。虽然有其限制,如特定查询可能暴露,但正确使用能有效提升数据安全性。了解和利用这一功能对数据管理员至关重要。
Oracle 12c的TOP N语句:数据排名的“快速通道”
【4月更文挑战第19天】Oracle 12c的TOP N语句是用于快速获取数据集排名前N的记录的SQL查询方法,特别适合寻找最具代表性的数据。通过指定排序条件和数量,TOP N能高效筛选出所需信息,例如最高销售额产品或最大访问量网页。在Oracle 12c中,查询优化器对TOP N查询进行了优化,保证快速返回结果,并提供丰富的排序和过滤选项。基本用法如`SELECT ... ORDER BY ... FETCH FIRST N ROWS ONLY`,还可结合`OFFSET`进行分页查询或用`WITH TIES`保持结果完整性。掌握TOP N语句能提升数据分析效率,助力企业决策。
Oracle 12c的临时UNDO:数据的“临时保镖”
【4月更文挑战第19天】Oracle 12c引入的临时UNDO为数据安全提供新保障。它为临时操作和特定事务提供独立UNDO空间,避免共享UNDO带来的性能瓶颈和管理复杂性。临时UNDO随事务开始分配,记录修改历史,事务结束后自动释放。优点包括提高性能、简化管理及保证数据一致性。但需注意手动配置、监控和优化,以防长时间占用资源。了解其工作原理和最佳实践是提升数据库性能的关键。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等