专用 Exadata 基础结构上的自治 AI 数据库中的 Oracle Database 特性

本文提供了有关在专用 Exadata 基础结构上使用 Autonomous AI Database 中的 Oracle AI Database 功能和选件的信息。

有关自治 AI Database Serverless 部署中的等效信息,请参见 Autonomous AI Database for Experienced Database Users

您可以通过 Oracle Database 19c 或 Oracle AI Database 26ai 预配自治 AI 数据库,具体取决于其父自治容器数据库 (Autonomous Container Database,ACD) 的数据库软件版本。例如,要使用 Oracle AI Database 26ai 创建自治 AI 数据库,您必须选择 Oracle 数据库软件版本为 26ai 的 ACD。有关这些数据库版本支持的数据库功能的完整列表,请参阅 Oracle Help Center 上的 Oracle Database 26aiOracle Database 19c

自治 AI 数据库为您配置和优化数据库。您无需执行管理操作来配置数据库。此服务中不提供仅用于数据库管理的 SQL 命令。同样,其他管理接口和实用程序(如 RMAN)不可用。

下面我们将讨论自治 AI 数据库中 Oracle 数据库的一些主要功能:

注:在 2021 年 9 月之前创建的自治 AI 数据库默认使用 AES128 算法。

如果需要,可以使用 ALTER TABLESPACE 命令更改表空间的加密算法。例如,要将 DATA 表空间的加密算法更改为 AES256,请输入:

  ALTER TABLESPACE data ENCRYPTION ONLINE USING 'AES256' REKEY;

自治 AI 数据库的最新特性

自治 AI 数据库包含最新的 Oracle Database 功能。

自治 AI 数据库包含以下功能:

ADMIN 用户和 SYS 用户

在 Oracle Autonomous AI Database on Dedicated Exadata Infrastructure 中,预定义的管理用户为 ADMIN。在 Oracle Database 中,预定义的管理用户为 SYS。虽然这两个用户在各自的数据库中具有相同的用途,但它们并不相同,并且不具有相同的权限集。

由于基于专用 Exadata 基础结构的 Oracle Autonomous AI Database 强制实施安全控制并为您执行管理数据库任务,因此 ADMIN 用户没有 SYS 用户那样多的权限。下面是 ADMIN 用户具有但 Oracle Database 中的 SYS 用户具有的权限列表:

ALTER LOCKDOWN PROFILE
BACKUP ANY TABLE
BECOME USER
CREATE ANY JOB
CREATE ANY LIBRARY
CREATE LIBRARY
CREATE LOCKDOWN PROFILE
CREATE PLUGGABLE DATABASE
DEQUEUE ANY QUEUE
DROP LOCKDOWN PROFILE
EM EXPRESS CONNECT
ENQUEUE ANY QUEUE
EXPORT FULL DATABASE
FLASHBACK ANY TABLE
FLASHBACK ARCHIVE ADMINISTER
GRANT ANY PRIVILEGE
GRANT ANY ROLE
IMPORT FULL DATABASE
INHERIT ANY PRIVILEGES
LOGMINING
MANAGE ANY FILE GROUP
MANAGE ANY QUEUE
MANAGE FILE GROUP
USE ANY JOB RESOURCE
USE ANY SQL TRANSLATION PROFILE

具有 ANY 关键字(例如 SELECT ANY TABLECREATE ANY PROCEDURE)的所有系统特权都接受 COMMON_SCHEMA_ACCESS 锁定,ADMIN 用户无法将其用于公用用户方案。

与本地部署 Oracle 数据库不同,本地部署的 ANY 关键字适用于除 SYS 以外的所有用户, ANY 权限仅适用于自治 AI 数据库中的非公用用户。

数据库初始化参数

自治 AI 数据库在预配数据库时自动配置数据库初始化参数。您无需设置任何初始化参数即可开始使用服务。但是,如果需要,可以修改一些参数。

可修改的初始化参数列表

注:单击以下列表中的初始化参数以了解有关该参数的更多信息。有关下面不可单击的参数,请参阅 Oracle Database 19c ReferenceOracle Database 26ai Reference 以了解更多信息。

ALLOW_ROWID_COLUMN_TYPE
APPROX_FOR_AGGREGATION
APPROX_FOR_COUNT_DISTINCT
APPROX_FOR_PERCENTILE
AWR_PDB_AUTOFLUSH_ENABLED
CONTAINER_DATA
CURRENT_SCHEMA (Session only by using ALTER SESSION)
CURSOR_SHARING
DB_BLOCK_CHECKING
DDL_LOCK_TIMEOUT
FIXED_DATE
GLOBAL_NAMES
HEAT_MAP
IGNORE_SESSION_SET_PARAM_ERRORS
INMEMORY_OPTIMIZED_ARITHMETIC (Allowed only with ALTER SYSTEM)
INMEMORY_QUERY (Allowed with ALTER SYSTEM and ALTER SESSION)
JOB_QUEUE_PROCESSES (You can only lower its value or bring it back to the original value)
LDAP_DIRECTORY_ACCESS
MAX_IDLE_TIME
NLS_CALENDAR
NLS_COMP
NLS_CURRENCY
NLS_DATE_FORMAT
NLS_DATE_LANGUAGE
NLS_DUAL_CURRENCY
NLS_ISO_CURRENCY
NLS_LANGUAGE
NLS_LENGTH_SEMANTICS
NLS_NCHAR_CONV_EXCP
NLS_NUMERIC_CHARACTERS
NLS_SORT
NLS_TERRITORY
NLS_TIME_FORMAT
NLS_TIME_TZ_FORMAT
NLS_TIMESTAMP_FORMAT
NLS_TIMESTAMP_TZ_FORMAT
OPEN_CURSORS (Allowed range of values are 1000 to 4000)
OPEN_LINKS (You must set SCOPE=SPFILE and restart the Autonomous Database after modifying this parameter)
OPTIMIZER_CAPTURE_SQL_PLAN_BASELINES (Session only by using ALTER SESSION)
OPTIMIZER_IGNORE_HINTS
OPTIMIZER_IGNORE_PARALLEL_HINTS
OPTIMIZER_INMEMORY_AWARE (Allowed with ALTER SYSTEM and ALTER SESSION)
OPTIMIZER_MODE
PARALLEL_MIN_DEGREE
PARALLEL_DEGREE_LIMIT
PLSCOPE_SETTINGS
PLSQL_CCFLAGS
PLSQL_DEBUG
PLSQL_OPTIMIZE_LEVEL
PLSQL_WARNINGS
QUERY_REWRITE_INTEGRITY
RECYCLEBIN
RESULT_CACHE_MODE
SESSION_EXIT_ON_PACKAGE_STATE_ERROR
SQL_TRACE (Allowed only with ALTER SESSION)
STATISTICS_LEVEL (Session only by using ALTER SESSION)
SYSDATE_AT_DBTIMEZONE Select a Time Zone for SYSDATE on Autonomous AI Database
TIME_ZONE
UNDO_RETENTION (min=300 and max=86400)

SYSDATE_AT_DBTIMEZONE 在自治 AI 数据库上为 SYSDATE 选择时区

SYSDATE_AT_DBTIMEZONE 允许在会话中对调用 SYSDATESYSTIMESTAMP 时返回的日期和时间值进行特殊处理。

根据 SYSDATE_AT_DBTIMEZONE 的值,您可以看到基于默认自治 AI 数据库时区、协调世界时 (Coordinated Universal Time,UTC) 或在数据库中设置的时区的日期和时间。

属性 说明  
参数类型 布尔  
默认值 FALSE  
可修改 ALTER SESSION, ALTER SYSTEM  
值范围 TRUE FALSE

默认自治 AI 数据库时区

默认自治 AI 数据库时区为协调世界时 (Coordinated Universal Time,UTC),默认情况下调用 SYSDATESYSTIMESTAMP 返回日期和时间 (UTC)。

要更改数据库时区,可以运行以下语句。

此示例将数据库时区设置为 UTC-5

ALTER DATABASE SET TIME_ZONE='-05:00';

此示例为美国东海岸设置数据库时区:America/New_York,并在 DST 交换机上自动调整时间:

ALTER DATABASE SET TIME_ZONE='America/New_York';

注:必须重新启动自治 AI 数据库实例才能使更改生效。

设置数据库时区后,默认情况下 SYSDATESYSTIMESTAMP 会继续以 UTC 格式返回日期和时间(默认情况下 SYSDATE_AT_DBTIMEZONEFALSE)。如果在会话中将 SYSDATE_AT_DBTIMEZONE 设置为 TRUE,则 SYSDATESYSTIMESTAMP 将返回数据库时区。

有关将 SET TIME_ZONE 子句与 ALTER DATABASE 一起使用的详细信息,请参阅 Oracle Database 19cOracle Database 26ai 中的设置数据库时区

在会话中使用 SYSDATE_AT_DBTIMEZONE

当会话中的 SYSDATE_AT_DBTIMEZONEFALSE 时,对 SYSDATE 的调用和基于默认自治 AI 数据库时区协调世界时 (Coordinated Universal Time,UTC) 的 SYSTIMESTAMP 返回值。

当会话中的 SYSDATE_AT_DBTIMEZONETRUE 时,对 SYSDATESYSTIMESTAMP 的调用将根据数据库时区返回日期和时间。

注:SYSDATE_AT_DBTIMEZONE 设置为 TRUE 仅影响在应用程序 SQL 中使用 SYSDATESYSTIMESTAMP 作为运算符(例如,在查询、DML 和 CTAS 操作中)。使用此参数时,建议客户机/会话时区与数据库时区匹配。

范例

以下示例根据 SYSDATE_AT_DBTIMEZONE 参数值返回两个不同时区的日期和时间:

SQL> SELECT DBTIMEZONE FROM DUAL;
DBTIMEZONE
_____________
-05:00
SQL> ALTER SESSION SET SYSDATE_AT_DBTIMEZONE=FALSE;
Session altered.
SQL> SELECT SYSTIMESTAMP FROM DUAL;
SYSTIMESTAMP
______________________________________
27-JAN-22 06.59.45.708082000 PM GMT
SQL> ALTER SESSION SET SYSDATE_AT_DBTIMEZONE=TRUE;
Session altered.
SQL> SELECT SYSTIMESTAMP FROM DUAL;
SYSTIMESTAMP
_________________________________________
27-JAN-22 02.14.47.578946000 PM -05:00

注:在 Database Actions 的 SQL 工作表中执行 SYSDATESYSTIMESTAMP 查询时,返回的时间和日期值采用 UTC 格式(当 SYSDATE_AT_DBTIMEZONE 参数设置为 TRUEFALSE 时)。要在 Database Actions 中工作时获取数据库时区,请按如下方式使用 TO_CHAR()

SQL> SELECT TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DD"T"HH24:MI:SS TZH":"TZM') FROM DUAL;
TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DD"T"HH24:MI:SSTZH":"TZM')
___________________________________________________________
2022-01-27T14:15:00 -05:00

相关内容