Oracle 12c带来新的乐趣(oracle 12c20)
Oracle 12c带来新的乐趣
Oracle 12c是Oracle公司最新推出的数据库管理系统,它具有许多新的特性和功能,为数据库管理员和开发人员带来了全新的乐趣和便利。下面将介绍Oracle 12c的一些主要特性和功能。
1. Contner数据库
从Oracle 12c开始,数据库被分为一个或多个容器数据库和多个种子数据库。一个容器数据库包含多个种子数据库,而每个种子数据库又包含多个用户数据库。这种架构使数据库的管理更为灵活和高效。例如,可以在容器数据库中创建和更新系统级的对象,以及共享表和索引等,而不需要在每个用户数据库上进行操作。
以下是在SQL*Plus中创建容器及种子数据库的示例代码:
SQL> CREATE PLUGGABLE DATABASE pdb1 ADMIN USER admin IDENTIFIED BY admin123;
SQL> ALTER PLUGGABLE DATABASE pdb1 OPEN;
2. 多租户
Oracle 12c支持多租户,这意味着在一个数据库实例中,可以为多个租户提供服务,而每个租户之间互相隔离。通过使用容器数据库和多个种子数据库,每个租户可以拥有自己的用户数据库,并使用自己的表、索引等对象,以及自己的安全权限和角色。
以下示例代码演示了如何创建一个新的租户:
SQL> CREATE USER tenant1 IDENTIFIED BY tenant123 CONTNER=ALL;
SQL> GRANT CREATE SESSION, CREATE TABLE TO tenant1 CONTNER=ALL;
3. 数据库统一化
Oracle 12c引入了数据库统一化的概念,这意味着无论是在容器数据库、种子数据库或者用户数据库中,都可以使用相同的SQL语句来访问数据和管理对象。这简化了数据库的维护和管理,减少了对SQL语法的学习和理解成本。
以下示例代码演示了如何在容器数据库中创建一个表,并在用户数据库中查询该表:
SQL> CREATE TABLE t1 ( id NUMBER, name VARCHAR2(20) );
SQL> INSERT INTO t1 VALUES ( 1, 'John' );SQL> SELECT * FROM t1;
4. 数据库管理器
Oracle 12c引入了数据库管理器,使得管理数据库的任务更为简单和可控。其中最重要的是 Automatic Data Optimization (ADO),它可以实现自动数据压缩和移动,以有效地管理存储空间。ADO可以基于指定的条件和策略自动识别和处理数据,从而减少数据管理的工作量。
以下示例代码演示了如何使用ADO策略:
BEGIN
DBMS_ILM.ADD_POLICY ( policy_name => 'MyAdoPolicy',
table_name => 'sales_data', compression => DBMS_ILM.COMPRESS_FOR_OLTP,
enable => TRUE);END;
/
总结
Oracle 12c带来了许多新的特性和功能,包括容器数据库、多租户、数据库统一化和数据库管理器等。这些特性和功能使得数据库管理员和开发人员能够更加高效地管理数据库和开发应用程序,提高了数据库的灵活性、可扩展性和安全性。如果你即将使用Oracle 12c,现在就开始尝试这些特性和功能,享受它们带来的新的乐趣吧!