Oracle Database 在专用 Exadata 基础结构上的自治 AI 数据库中的支持有限
Autonomous AI Database on Dedicated Exadata Infrastructure 支持 Oracle Database Enterprise Edition 中的大部分功能。为了确保 Autonomous AI Database 的安全性和性能,一些功能的支持有限。
以下 Oracle Database 功能、选件和包对 Autonomous AI Database 的支持有限。
功能、选件或包装 | 限制 |
---|---|
数据库内存中 | 请参见 Database In-Memory 。 |
快速摄取 | 请参见 Fast Ingest 。 |
按索引组织的表 (IOT) | 不支持索引表,但尝试创建一个索引表不会生成错误。而是创建一个具有主键索引的堆表。因此,如果使用按索引组织的表,则应测试使用按索引组织的表的应用程序,以确认它们使用带主键索引的按堆组织的表。 |
Oracle Database 中的 Java(有时称为 OJVM 或数据库嵌入式 JVM) | 在数据库上执行服务维护操作时,在 Oracle Database 中使用 Java 的数据库会话将降低数据库端性能。 |
LogMiner | 请参见 Oracle LogMiner 。 |
Oracle 数据泵 | 不支持可传输表空间模式(TRANSPORT_TABLESPACES 参数)。
|
Oracle Database Advanced Queuing |
仅支持 PL/SQL 高级排队 API。 不支持用于高级排队的 Oracle Call Interface (OCI) 通知。 |
Oracle Flashback 和还原点 | 请参见Oracle Flashback and Restore Points 。 |
Oracle Label Security | 不能在策略中指定标签函数。 |
Oracle Machine Learning (OML) |
支持:
|
Oracle Real Application Testing |
SQL Performance Analyzer 和 Database Replay 是 Oracle Real Application Testing (RAT) 的关键组件。可以使用其中一个或两个组件来执行测试,具体取决于所测试的系统更改的性质和影响以及测试系统的类型。
|
Oracle Text | 请参阅 Oracle Text 。 |
Oracle XML DB | 请参阅 Oracle XML DB 。 |
SQL 命令
Autonomous AI Database on Dedicated Exadata Infrastructure 支持 Oracle Database 中提供的大多数 SQL 命令。为了确保 Autonomous AI Database 的安全性和性能,某些 SQL 命令受到限制。
本节列出了在 Autonomous AI Database on Dedicated Exadata Infrastructure 中保护安全性和性能完整性所需的 SQL 命令限制。大多数与 Oracle Database 结合使用的标准 SQL 和 PL/SQL 语法和构造都可以在 Autonomous AI Database 中运行。
注意:
如果尝试使用受限 SQL 命令,系统将生成以下错误:
ORA-01031: insufficient privileges
此错误指示您不允许在 Autonomous AI Database 中运行 SQL 命令。
Autonomous AI Database 不支持以下 SQL 命令和 PL/SQL 程序包:
ADMINISTER KEY MANAGEMENT
SYS.DBMS_SHARED_POOL
CREATE_LIBRARY
自治 AI 数据库中限制 SQL 命令
Autonomous AI Database 中提供了以下 DDL 命令,但存在一些限制:
SQL 命令 | 限制 |
---|---|
|
只允许使用以下子句:
|
|
使用 ALTER PROFILE :
|
|
只允许使用以下子句:
有关可以在 Oracle Autonomous AI Database on Dedicated Exadata Infrastructure 中设置的初始化参数的列表,请参阅修改数据库初始化参数。请注意,无法在会话级别设置其中一些参数。要确定是否可以使用 |
|
只允许使用 |
|
Autonomous AI Database 不支持使用 Autonomous AI Database 块大小固定在 8K。 |
|
将忽略以下子句:
有关 |
|
在 数据库链接只能用于 TCP 连接,因为 TCPS 连接需要 wallet。 |
|
有关 |
|
不允许使用基于 XML 方案的存储的 将忽略以下子句:
有关 |
|
Autonomous AI Database 不支持使用 Autonomous AI Database 块大小固定在 8K。 |
|
以下子句不能与 CREATE USER 语句一起使用:
|
|
仅当以以下格式使用时,才支持此命令:
如果在语法中没有
|
数据类型
Autonomous AI Database on Dedicated Exadata Infrastructure 支持 Oracle Database 中提供的大多数数据类型。为了确保 Autonomous AI Database 的安全性和性能,某些数据类型受到限制。
Autonomous AI Database 不支持或仅部分支持以下 Oracle Database 数据类型:
-
默认情况下,专用 Exadata 基础结构部署中不启用
ROWID
和UROWID
数据类型。创建表时不能指定ROWID
或UROWID
列,也不能将ROWID
或UROWID
列添加到现有表中。但是,可以通过将
ALLOW_ROWID_COLUMN_TYPE
初始化参数设置为 true 来启用ROWID
或UROWID
。See Database 19c Reference or Database 26ai Reference for more information on enabling it. - 大对象 (LOB) 数据类型:仅支持 SecureFiles LOB 存储。
- 不支持多媒体数据类型。(Oracle Multimedia 在 Oracle Database 中不受支持。)
有关 Oracle 数据类型的列表,请参阅 Oracle Database 19c SQL Language Reference 或 Oracle Database 26ai SQL Language Reference。
数据库内存中
Oracle Database In-Memory(Database In-Memory,数据库内存)是一套功能,可显著提高实时分析和混合工作负载的性能。
内存中列存储(IM 列存储)是数据库内存中的一项关键功能。IM 列存储以专为快速扫描而优化的特殊压缩列格式维护表、分区和单个列的副本。IM 列存储位于内存区中,内存区是系统全局区 (system global area,SGA) 的可选部分。有关此功能的更多信息,请参阅 Database 19c In-Memory Guide 或 Database 26ai In-Memory Guide 。
通过 Autonomous AI Database on Dedicated Exadata Infrastructure ,您可以在预配数据库或更高版本时,将其系统全局区 (SGA) 的百分比分配给内存中列存储(IM 列存储),从而为您的 Autonomous AI Database 启用数据库内存中。您还可以从 Oracle Cloud Infrastructure (OCI) 控制台上的 Details 页面为现有 Autonomous AI Database 启用或禁用 Database In-Memory。
下面介绍了为 Autonomous AI Database 启用 Database In-Memory 之前和之后要考虑的注意事项:
- 仅在启用了至少 16 个 ECPU 或 4 个 OCPU 的 Autonomous AI Database 上支持打开或关闭数据库内存中功能。
- 如果将自治 AI 数据库缩减至少于 16 个 ECPU 或 4 个 OCPU,则会自动为该数据库禁用数据库内存中功能。
- 还可以对从数据库实例或备份克隆的数据库启用数据库内存中功能,无论克隆源是否启用了数据库内存中功能。由于这些设置不是从克隆继承的,因此可以在克隆时或以后手动启用内存中数据库。
- 在以下情况下,您的性能可能会降低:
- 在启用数据库内存中时导致重新引导数据库的任何打补丁活动。
- 使用启用了数据库内存中功能的 Autonomous AI Database 重新启动自治容器数据库。
- 如果在 Autonomous Data Guard 设置中为主 Autonomous AI Database 启用 Database In-Memory,则备用数据库也将具有相同的设置。但是,您无法在备用数据库上更改这些设置。
- 为了更好地管理和共享底层 SGA/内存资源,Oracle 建议为 Database In-Memory 配置的所有 Autonomous AI Database 都位于同一自治容器数据库中。
有关详细说明,请参阅启用或禁用数据库内存中或在专用 Exadata 基础结构上创建 Autonomous AI Database。
手动创建的外部表
您可以使用 SQL CREATE TABLE...ORGANIZATION EXTERNAL
语句手动创建外部表,而不使用 DBMS_CLOUD.CREATE_EXTERNAL_TABLE 过程。当您这样做时,会有一些限制。
-
支持
ORACLE_LOADER
和ORACLE_BIGDATA
访问驱动程序。不支持ORACLE_DATAPUMP
、ORACLE_HDFS
和ORACLE_HIVE
访问驱动程序。 -
如果要将存储在云对象存储中的文件指定为数据源位置,则必须使用云对象存储 URI 格式中所述的 URI 格式之一。
Oracle LogMiner
LogMiner 是 Oracle Database 的一部分,可用于通过 SQL 接口查询联机和归档重做日志文件。重做日志文件包含有关数据库操作历史记录的信息。
对用户数据或数据库字典所做的所有更改都记录在 Oracle 重做日志文件中,以执行数据库恢复操作。由于 LogMiner 为重做日志文件提供了一个定义明确、易于使用且全面的关系接口,因此它可以用作强大的数据审计工具和复杂的数据分析工具。有关 LogMiner 的主要功能,请参阅 Oracle Database 19c Utilities 或 Oracle AI Database 26ai Utilities 中的 LogMiner Benefits 。
-
无法从自治 AI 数据库使用
DBMS_LOGMNR.ADD_LOGFILE
和DBS_LOGMNR.REMOVE_LOGFILE
过程。 -
只能使用 SCN 或时间范围参数调用
dbms_logmnr.start_logmnr
过程。查询V$LOGMNR_CONTENTS
视图后,将返回所连接 Autonomous AI Database 的指定 SCN 或时间范围中的数据。 -
每个 Autonomous AI Database 只允许一个 LogMiner 会话。
-
默认情况下, Autonomous AI Database 归档日志文件保留至多:
- 对于未设置 GoldenGate 捕获和 Autonomous Data Guard 的数据库,需要 3 天时间。
- 对于未启用 GoldenGate 捕获的 Autonomous Data Guard 数据库,需要 7 天的时间。
- 启用了 GoldenGate 捕获的数据库需要 15 天。
日志文件保留期取决于数据库事务处理速率,并不总是保证达到上述指定的天数。尝试挖掘不可用日志文件时可能存在实例。在这种情况下,LogMiner 报告
ORA-1285: "error reading file"
。
Oracle Text
下面介绍了对 Autonomous AI Database on Dedicated Exadata Infrastructure 中 Oracle Text 功能的支持。为了确保 Autonomous AI Database 的安全性和性能,一些 Oracle Text 功能受到限制。
Oracle Text 功能 | Autonomous AI Database 支持 | 更多信息 |
---|---|---|
执行日志记录的所有日志记录以及 API,例如 ctx_report.query_log_summary |
不支持 | 请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的 QUERY_LOG_SUMMARY |
文件和 URL 数据存储 | 不支持 | 请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的 Datastore Type |
带 BIG_IO 选项的 CREATE INDEX
|
默认情况下不支持。英尺 1 | 请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的使用 CONTEXT 索引的 BIG_IO 选项改进响应时间 |
OPTIMIZE_INDEX 处于重建模式
|
默认情况下不支持。(请参阅脚注 1)。 | Oracle Database 19c 或 Oracle Database 26ai 中的 OPTIMIZE_INDEX |
脚注 1 如果您将创建触发器的权限授予用户 (GRANT CREATE TRIGGER
),则支持此操作。还必须在会话级别 (ALTER SESSION DISABLE PARALLEL DML
) 禁用并行 DML。
有关 Oracle Text 的详细信息,请参阅 Oracle Text 19c Application Developer's Guide 或 Oracle Text 26ai Application Developer's Guide 。
Oracle XML DB
下面介绍了对 Autonomous AI Database on Dedicated Exadata Infrastructure 中 Oracle XML DB 功能的支持。为了确保 Autonomous AI Database 的安全性和性能,一些 Oracle XML DB 受到限制。
注意:
如果使用 Oracle Data Pump 将包含XMLType
列的表迁移到 Autonomous AI Database on Dedicated Exadata Infrastructure ,则需要在使用 Oracle Data Pump 导出 (expdp) 之前转换为非模式二进制 XML。
支持以下功能:
-
完全支持 XMLQuery、XMLTable 和其他 SQL/XML 标准函数
-
索引方案,包括使用 SQL/XML 表达式的功能索引、结构化 XMLIndex 和 XQuery 全文索引
不支持或仅部分支持以下功能。
面积图 | XML DB 功能 | Autonomous AI Database 支持 | 更多信息 |
---|---|---|---|
资料档案库 | XML DB 协议 | 无 | 请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的 Repository Access Using Protocols |
资料档案库 | XML DB 资源 | 无 | 请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的 Oracle XML DB Repository Resources |
资料档案库 | XML DB ACL | 无 | 请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的 Repository Access Control |
存储 | XML 方案注册 | 无 | 请参阅 XML 模式注册(使用 Oracle XML DB 19c 或 Oracle XML DB 26ai ) |
存储 | CLOB | 无 | 已过时 |
存储 | 对象关系型 | 无 | 请参阅 Oracle Database 19c 或 Oracle Database 26c 中的 XML Schema and Object-Relational XMLType |
存储 | 二进制 XML | 是(仅限非基于方案的) | 请参阅 XMLType Storage Models in Oracle Database 19c 或 Oracle Database 26ai |
指数 | 结构性 XML 索引 | 是 | 请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的 XMLIndex Structured Component |
指数 | XQuery 全文索引 | 是 | 请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的为全文查询的 XML 数据编制索引 |
指数 | 非结构化 XMLIndex | 无 | 请参见 XMLIndex Unstructured Component in Oracle database 19c 或 Oracle Database 26ai |
程序包 | XML DOM 程序包 | 是 | 请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的 PL/SQL DOM API for XMLType (DBMS_XMLDOM) |
程序包 | XML 解析器包 | 是 | 请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的 PL/SQL Parser API for XMLType (DBMS_XMLPARSER) |
程序包 | XSL 处理器 (DBMS_XSLPROCESSOR) | 是 | 请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的 PL/SQL XSLT Processor for XMLType (DBMS_XSLPROCESSOR) |
有关 Oracle XML DB 的详细信息,请参阅 Oracle XML DB 19c Developer's Guide 或 Oracle XML DB 26ai Developer's Guide 。
Oracle Flashback 和还原点
下面介绍了 Autonomous AI Database on Dedicated Exadata Infrastructure 中对 Oracle Flashback 和 Restore Points 的支持。为了确保 Autonomous AI Database 的安全性和性能,一些 Oracle Flashback 和 Restore Point 功能受到限制。
要将数据库还原并恢复到某个时间点,请参见 Restore and Recover 。
闪回和恢复点功能 | Autonomous AI Database on Dedicated Exadata Infrastructure 支持 |
---|---|
DBMS_FLASHBACK |
是,但 DBMS_FLASHBACK.TRANSACTION_BACKOUT 过程除外。
|
闪存时间移动 |
是,但使用带有 |
闪回删除 | 是 |
闪回查询 | 是 |
闪回表 | 是 |
闪回事务处理 | 是 |
闪回事务处理查询 | 是 |
闪回版本查询 | 是 |
还原点 | 无 |
保证的还原点 | 无 |
有关使用闪回功能的信息,请参见 About Oracle Database 19c Flashback Technology 或 About Oracle Database 26ai Flashback Technology 。
数据库重放
您可以使用“数据库重放”来捕获生产系统上的工作量,并使用原始工作量的精确计时、并行性和事务处理特征在测试系统上重放该工作量。这样可以测试系统更改的效果而不会影响生产系统。
使用捕获生产工作量这一方法,将不必开发模拟工作量或脚本,从而显著地降低成本并节约大量时间。在数据库重放的帮助下,可以在几天内完成对使用负载模拟工具耗时数月的复杂应用的真实测试。这使您可以快速测试更改并以更高的置信度和更低风险来采用新技术。有关数据库重放的更多信息,请参见 Oracle 19c Testing Guide 或 Oracle 26ai Testing Guide 中的 Introduction to Database Replay 。
在 Oracle Autonomous AI Database on Dedicated Exadata Infrastructure 中使用 Real Application Testing (RAT) 的数据库重放组件与其在 Oracle Database 中的实施相同。有关将数据库重放与数据库一起使用的过程,请参阅 Oracle Database 19c 或 Oracle Database 26ai 中的数据库重放。
- Oracle 建议使用连接到 Autonomous AI Database 的网络文件系统 (Network File System,NFS) 或文件存储系统 (File Storage System,FSS) 来存储捕获和重放文件。有关指导,请参阅 Attach Network File System 和 Attach External File System 。
- 对于数据库重放,重放客户机 (wrc) 可以与重放数据库相同,也可以是重放数据库较低的版本。但是,重放客户机支持的最低版本为 19.24 。
- Autonomous AI Database 不支持
dbms_workload_capture.import_awr
和dbms_workload_replay.import_awr
。也就是说,无法使用数据库重放导入自动工作量资料档案库 (AWR) 数据。因此,建议在非自治数据库(最好是 Oracle Database 26c instance )上生成 AWR 比较报告,以实现更好的兼容性。
数据库 PL/SQL 程序包
下面介绍了在 Autonomous AI Database on Dedicated Exadata Infrastructure 中使用 PL/SQL 程序包之前、期间和之后需要考虑的注意事项。
列出 Autonomous AI Database on Dedicated Exadata Infrastructure 中存在限制和说明的 Oracle Database PL/SQL 程序包。
DBMS_DEBUG_JDWP
DBMS_DEBUG_JDWP_CUSTOM
UTL_TCP
注意:
虽然 Autonomous AI Database on Dedicated Exadata Infrastructure 不支持UTL_TCP
程序包,但UTL_TCP.CRLF
常量可以与其他程序包一起用于特定实例。有关使用UTL_TCP.CRLF
的示例,请参见 SMTP Send Email Sample Code 。
UTL_HTTP
说明- 允许通过 IP 地址建立连接。
- 缺省情况下,会启用出站端口 80 和 443。
- 允许 HTTP、HTTPS 和 HTTP_PROXY 连接。
APEX_WEB_SERVICE
PL/SQL 程序包在UTL_HTTP
上分层。- 在调用
UTL_HTTP
子程序之前,必须先使用SET_WALLET
子程序设置 wallet 位置。由于这是期次级别的设置,因此必须在每个期次之前对其进行设置。有关更多信息,请参见《Oracle Database 19c PL/SQL Packages and Types Reference 》或《Oracle Database 26ai PL/SQL Packages and Types Reference 》中的 UTL_HTTP 。BEGIN UTL_HTTP.SET_WALLET(path => 'file:/var/opt/oracle/dbaas_acfs/grid/tcps_wallets'); END; /
UTL_SMTP
说明- 允许通过 IP 地址建立连接。
- 默认情况下启用出站端口 25、465、587 和 2525。
- 简单和安全 (SSL) SMTP 端点均可访问。
- Oracle Cloud Infrastructure (OCI) Email Delivery Service 和第三方 SMTP 服务器均受电子邮件提供商支持。有关在第三方服务器与 Autonomous AI Database 租户之间建立连接的详细信息,请参阅 Oracle Cloud Infrastructure - Networking and Connectivity 。
- 但是,与 Oracle Enterprise Edition 内部部署数据库不同,不能将 localhost 设置为 SMTP 服务器。平台上也禁用了
sendmail()
服务。 APEX_MAIL
PL/SQL 程序包在UTL_SMTP
上分层。
DBMS_AQADM
说明DBMS_AQADM.MOVE_QUEUE_TABLE
只能在ONLINE
模式下用于将高级队列 (Advanced Queuing,AQ) 表从一个表空间移动到另一个表空间或在同一表空间中。有关使用 19c 及更高版本上的DBMS_AQADM.MOVE_QUEUE_TABLE
在表空间之间移动 AQ 表的指导,请参见 My Oracle Support (MOS) 简讯:文档 ID 2867445.1 。- 即使在
ONLINE
模式下,当表或方案名称区分大小写并且包含特殊标识符时,也无法使用DBMS_AQADM.MOVE_QUEUE_TABLE
来移动 AQ 表。