Oracle_ERRMG

ORA-00000 to ORA-00877

ORA-00000: 正常的成功的完成(操作)

ORA-00000: normal, successful completion

原因1: 正常执行完成。

Normal exit.

原因2: hosts文件配置错误。

ORA-00001: 违反唯一约束条件 (string.string=>[拥有者].[约束名])

ORA-00001: unique constraint (string.string) violated

原因1: UPDATE或INSERT语句试图插入重复的键。对于在DBMS MAC模式下配置的Trusted Oracle,如果在不同级别存在重复条目,您可能会看到此信息。

An UPDATE or INSERT statement attempted to insert a duplicate key. For Trusted Oracle configured in DBMS MAC mode, you may see this message if a duplicate entry exists at a different level.

ORA-00017: 会话被要求设置跟踪事件

ORA-00017: session requested to set trace event

原因1: 当前会话被要求通过另一个会话设置一个跟踪事件

The current session was requested to set a trace event by another session.

ORA-00018: 超出最大会话数

ORA-00018: maximum number of sessions exceeded

原因1: 所有会话状态对象都在使用中

All session state objects are in use.

属性 描述
参数类型 Integer
默认值 派生公式: 【?~11gR1】=”(1.1 * PROCESSES) + 5)”; 【11gR2~12cR2】=”(1.5 * PROCESSES) + 22”
可修改(不用重启及时生效) 【?~11gR2】=”否”; 【12cR1~12cR2】=”可用ALTER SYSTEM修改”
取值范围 【?~11gR1】=”1~2^31”; 【11gR2~12cR2】=”1~2^16(即1~65536)”
基础参数

SESSIONS指定可以在系统中创建的最大会话数。因为每次登录都需要一个会话,所以这个参数有效地确定了系统中最大并发用户数。您应该始终将此参数显式设置等于最大并发用户数的估计值+后台进程数+递归会话数(大约占总数的10%)。

Oracle使用此参数的默认值作为其最小值。 将SESSIONS值设置成[1~默认值)不会触发错误,因为Oracle会忽略此值直接使用默认值。

ENQUEUE_RESOURCESTRANSACTIONS参数的默认值派生自SESSIONS。因此,如果增加SESSIONS的值,则应考虑是否也调整ENQUEUE_RESOURCESTRANSACTIONS的值。 (请注意,从Oracle Database 10g release 2(10.2)起,ENQUEUE_RESOURCES已被废弃。)

在共享服务器环境中,PROCESSES的值可能相当小。因此,Oracle建议您将SESSIONS的值调整为大约1.1 *总连接数。

ORA-00019: 超出最大许可会话数

ORA-00019: maximum number of session licenses exceeded

原因1: 所有许可会话都在使用中。

All licenses are in use.

属性 描述
参数类型 Integer
默认值 0
可修改(不用重启及时生效) 可用ALTER SYSTEM修改
取值范围 0~许可会话数
基础参数
Oracle实时应用集群 多个实例可以具有不同的值,但是安装数据库的所有实例的总和应小于或等于该数据库许可的会话总数。

LICENSE_MAX_SESSIONS指定允许的并发用户会话的最大数量。达到此限制后,只有具有RESTRICTED SESSION权限的用户才能连接到数据库。无法连接的用户收到表示系统达到最大容量的警告消息。

零值表示不强制执行并发使用(会话)许可。如果将此参数设置为非零数字,则可能还需要设置LICENSE_SESSIONS_WARNING(请参阅“LICENSE_SESSIONS_WARNING”)。

不要同时启用并发使用许可和用户许可,即LICENSE_MAX_SESSIONSLICENSE_MAX_USERS两参数值至少一个要设置为零。

ORA-00020: 超出最大进程数(string=>[最大进程数])

ORA-00020: maximum number of processes (string) exceeded

原因1: 所有进程状态对象都在使用中。

All process state objects are in use.

属性 描述
参数类型 Integer
默认值 【?~10gR2】=”40~操作系统依赖数”; 【11gR1~11gR2】=”100”; 【12cR1~12cR2】=”该值是派生的,它通常取决于警报日志中报告的核心数。”
可修改(不用重启及时生效)
取值范围 6~操作系统依赖数
基础参数
Oracle实时应用集群 多个实例可以具有不同的值。

PROCESSES指定可以同时连接到Oracle的最大操作系统用户进程数。它的值应允许所有后台进程运行,如锁,作业队列进程和并行执行进程。

该参数派生了SESSIONSTRANSACTIONS参数的默认值。因此,如果更改PROCESSES的值,则应评估是否要调整这些派生参数的值。

ORA-00021: 会话附加到一些其他过程上;无法切换会话

ORA-00021: session attached to some other process; cannot switch session

原因1: 用户会话当前正由其他用户使用。

The user session is currently used by others.

ORA-00022: 会话ID无效;拒绝访问

ORA-00022: invalid session ID; access denied

原因1: 指定的会话不存在或者调用者没有访问权限。

Either the session specified does not exist or the caller does not have the privilege to access it.

ORA-00023: 会话引用进程私有内存;无法分离会话

ORA-00023: session references process private memory; cannot detach session

原因1: 试图在当前会话包含对进程专用内存的引用时分离当前会话。

An attempt was made to detach the current session when it contains references to process private memory.

ORA-00024: 在单进程模式下不允许登录多个进程

ORA-00024: logins from more than one process not allowed in single-process mode

原因1: 尝试从不同的进程登录多次,ORACLE以单进程模式启动。

Trying to login more than once from different processes for ORACLE started in single-process mode.

ORA-00439: 未启用功能: 【功能名】

ORA-00439: feature not enabled: string

原因1: 指定的功能未启用。

The specified feature is not enabled.