Oracle 12c CDB与PDB管理详解

需积分: 0 7 下载量 129 浏览量 更新于2024-06-16 收藏 428KB PDF 举报
"Oracle 12c 的 CDB (Container Database) 和 PDB (Pluggable Database) 管理是数据库领域中的一个重要概念,尤其在多租户环境中。Oracle 12c 引入了这一创新特性,允许在一个单一的数据库实例中管理多个独立的数据库,从而提高资源利用率和简化管理。 1. 多租户环境 (Multitenant Environment) 在 Oracle 12c 中,多租户架构使得一个物理数据库(CDB)能够承载多个逻辑数据库(PDB)。这种设计允许各个数据库之间隔离,同时共用底层的物理资源,如内存、磁盘空间和 CPU。 2. 数据库容器 CDB (Container Database) CDB 是一个多租户环境的核心,它是一个完整的、运行时的 Oracle 数据库实例,包含一个或多个 PDB。CDB 包含系统表空间、全局临时表空间、重做日志文件等系统级别的组件,不存储用户数据,主要负责管理整个多租户环境的基础设施。 3. 可插拔数据库 PDB (Pluggable Database) PDB 是一个可以单独创建、备份、恢复和移植到另一个 CDB 的逻辑数据库。每个 PDB 都有自己的数据文件、控制文件、参数文件和 redo log 文件,拥有独立的 SCHEMA、用户、表和索引等对象,但共享 CDB 的系统资源。 4. 查看数据库是否为 CDB 通过执行 SQL 查询 `SELECT name, decode(cdb, 'YES', 'Multitenant Option enabled', 'Regular 12c Database:') AS "Multitenant Option", open_mode, con_id FROM v$database;` 可以确定当前数据库是否启用了多租户选项,以及其打开模式和连接 ID。 5. 连接到 CDB 要连接到 CDB,可以使用简易方式,首先检查监听器的状态,如 `lsnrctl status`,如果监听器未启动,需要使用 `lsnrctl start` 命令启动。连接到 CDB 后,可以管理 CDB 以及其中的 PDB。 6. PDB 管理 在 CDB 中,PDB 的操作包括创建、开启、关闭、 unplugging(拔出)和 plugging in(插入)。例如,创建 PDB 使用 `CREATE PLUGGABLE DATABASE` SQL 命令,关闭 PDB 用 `ALTER PLUGGABLE DATABASE ... CLOSE`,而打开 PDB 用 `ALTER PLUGGABLE DATABASE ... OPEN`。 7. CDB 管理 对于 CDB 的管理,涉及到对全局资源的控制,如添加、删除 PDB,调整资源分配,以及全局审计、用户管理和权限控制等。此外,CDB 的维护操作,如数据库备份和恢复,也可以影响到所有 PDB。 Oracle 12c 的 CDB 和 PDB 管理提供了一种高效、灵活的数据库管理策略,特别适合云环境和大规模部署的场景。了解并熟练掌握这些概念和操作对于 OCP(Oracle Certified Professional)认证以及日常数据库运维至关重要。"