Skip to content

Fatih Acar's blog

About of Database Systems and Information Technologies

Menu
  • Home
  • About Me
  • Contact Me
Menu

Oracle 12c R2 Error Codes and Solution Suggestions from ORA-01900 to ORA-02100

Posted on 14/08/201612/12/2016 by Fatih Acar

Oracle 12c R2 Error Codes and Solution Suggestions from ORA-01900 to ORA-02100

ORA-01900: LOGFILE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01901: ROLLBACK keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01902: SEGMENT keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01903: EVENTS keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01904: DATAFILE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01905: STORAGE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01906: BACKUP keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01907: TABLESPACE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01908: EXISTS keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01909: REUSE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01910: TABLES keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01911: CONTENTS keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01912: ROW keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01913: EXCLUSIVE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01914: invalid auditing option for sequence numbers

Cause: AUDIT or NOAUDIT on a sequence number specifies an auditing option that is not legal for sequence numbers.

Action: The following options may not be used for sequence numbers and should be removed: COMMENT, DELETE, INDEX, INSERT, LOCK, RENAME, UPDATE, REFERENCES, EXECUTE

ORA-01915: invalid auditing option for views

Cause: AUDIT or NOAUDIT on a view specifies an auditing option that is not legal for views.

Action: The following options may not be used for views and should be removed: ALTER, INDEX, REFERENCES, EXECUTE

ORA-01916: keyword ONLINE, OFFLINE, RESIZE, AUTOEXTEND, END, DROP, ENABLE, REMOVE, SUSPEND, ENCRYPT, or DECRYPT expected

Cause: An expected keyword was not used for the data file or the temporary file clause. Note the ENCRYPT and DECRYPT keywords are only applicable to the data file.

Action: Use the correct syntax.

ORA-01917: user or role ‘string‘ does not exist

Cause: There is not a user or role by that name.

Action: Re-specify the name.

ORA-01918: user ‘string‘ does not exist

Cause: User does not exist in the system.

Action: Verify the user name is correct.

ORA-01919: role ‘string‘ does not exist

Cause: Role by that name does not exist.

Action: Verify you are using the correct role name.

ORA-01920: user name ‘string‘ conflicts with another user or role name

Cause: There is already a user or role with that name.

Action: Specify a different user name.

ORA-01921: role name ‘string‘ conflicts with another user or role name

Cause: There is already a user or role with that name.

Action: Specify a different role name.

ORA-01922: CASCADE must be specified to drop ‘string‘

Cause: Cascade is required to remove this user from the system. The user own’s object which will need to be dropped.

Action: Specify cascade.

ORA-01923: CASCADE aborted, objects locked by another user

Cause: Cannot drop the user’s objects; someone has them locked.

Action: Use the lock monitor to determine who has the objects locked.

ORA-01924: role ‘string‘ not granted or does not exist

Cause: Either the role was not granted to the user, or the role did not exist.

Action: Create the role or grant the role to the user and retry the operation.

ORA-01925: unused error
ORA-01926: cannot GRANT to a role WITH GRANT OPTION

Cause: Role cannot have a privilege with the grant option.

Action: Perform the grant without the grant option.

ORA-01927: cannot REVOKE privileges you did not grant

Cause: You can only revoke privileges you granted.

Action: Don’t revoke these privileges.

ORA-01928: GRANT option not granted for all privileges

Cause: In order to grant a privilege, you must first have the privilege with the grant option.

Action: Obtain the privilege with the grant option and try again.

ORA-01929: no privileges to GRANT

Cause: “ALL” was specified but the user doesn’t have any privileges with the grant option.

Action: Don’t grant privileges on that object.

ORA-01930: auditing the object is not supported

Cause: AUDIT or NOAUDIT was specified for an object that cannot be audited.

Action: Don’t attempt to AUDIT the object.

ORA-01931: cannot grant string to a role

Cause: An attempt to grant privileges to a role failed. UNLIMITED TABLESPACE, REFERENCES, INDEX, Administrative Privileges like SYSDBA, SYSOPER, SYSASM, SYSBACKUP, SYSDG, SYSKM, and SYSRAC cannot be granted to a role.

Action: Grant privilege directly to the user. For administrative privilege grants, some additional restrictions apply : * SYSBACKUP, SYSDG or SYSKM administrative privileges can be granted only when the password file is in format “12” or higher. * SYSASM administrative privilege can be granted, only when connected to an ASM instance. * SYSRAC administrative privilege cannot be granted to a user because only operating system authentication is supported for SYSRAC privilege.

ORA-01932: ADMIN option not granted for role ‘string‘

Cause: The operation requires the admin option on the role.

Action: Obtain the grant option and re-try.

ORA-01933: cannot create a stored object using privileges from a role

Cause: An attempt was made to create a stored object using privileges from a role. Stored objects cannot use privileges from roles.

Action: Grant the privileges required to the user directly.

ORA-01934: circular role grant detected

Cause: Roles cannot be granted circularly. Also, a role cannot be granted to itself.

Action: Do not perform the grant.

ORA-01935: missing user or role name

Cause: A user or role name was expected.

Action: Specify a user or role name.

ORA-01936: cannot specify owner when creating users or roles

Cause: Users and roles do not have owners.

Action: Don’t specify an owner.

ORA-01937: missing or invalid role name

Cause: A valid role name was expected.

Action: Specify a valid role name.

ORA-01938: IDENTIFIED BY must be specified for CREATE USER

Cause: Cannot create a user without specifying a password or “IDENTIFIED EXTERNALLY”.

Action: Specify one of the password clauses.

ORA-01939: only the ADMIN OPTION can be specified

Cause: System privileges and roles can only be granted with the admin option. The grant option cannot be used with system privileges and roles. The delegate option cannot be used with system privileges.

Action: Specify the admin option.

ORA-01940: cannot drop a user that is currently connected

Cause: Attempt was made to drop a user that is currently logged in.

Action: Make sure user is logged off, then repeat command.

ORA-01941: SEQUENCE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01942: IDENTIFIED BY and EXTERNALLY cannot both be specified

Cause: A user cannot be specified to have and not have a password.

Action: Specify only one of the options.

ORA-01943: IDENTIFIED BY already specified

Cause: The identified clause has been given twice.

Action: Use only one identified by clause.

ORA-01944: IDENTIFIED EXTERNALLY already specified

Cause: The identified externaly clause has been given twice.

Action: Use only one identified clause.

ORA-01945: DEFAULT ROLE[S] already specified

Cause: The default roles clause has been given twice.

Action: Use only on default role clause.

ORA-01946: DEFAULT TABLESPACE already specified

Cause: The default tablespace clause has been given twice.

Action: Use only one default tablespace clause.

ORA-01947: TEMPORARY TABLESPACE already specified

Cause: The temporary tablespace clause has been given twice.

Action: Use only one temporary tablespace clause.

ORA-01948: identifier’s name length (string) exceeds maximum (string)

Cause: A name has been specified that is too long. For example, dbms_session.is_role_enabled() specifies a role name that is too long.

Action: Change the application or command to use a correct identifier.

ORA-01949: ROLE keyword expected

Cause: The role keyword is required here.

Action: Specify the role keyword.

ORA-01950: no privileges on tablespace ‘string‘

Cause: User does not have privileges to allocate an extent in the specified tablespace.

Action: Grant the user the appropriate system privileges or grant the user space resource on the tablespace.

ORA-01951: ROLE ‘string‘ not granted to ‘string‘

Cause: The role you tried to revoke was not granted to the user.

Action: Don’t try to revoke a privilege which is not granted.

ORA-01952: system privileges not granted to ‘string‘

Cause: A system privilege you tried to revoke was not granted to the user.

Action: Make sure the privileges you are trying to revoke are granted.

ORA-01953: command no longer valid, see ALTER USER

Cause: The syntax for assigning quotas on tablespaces has changed. The ALTER USER command is now used to perform the functionality

Action: Use the alter user command instead.

ORA-01954: DEFAULT ROLE clause not valid for CREATE USER

Cause: Default roles cannot be specified for create user.

Action: Grant and alter the user’s default roles after creating the user.

ORA-01955: DEFAULT ROLE ‘string‘ not granted to user

Cause: The user being altered does not have the specified role granted directly to the user. Note, sub-roles cannot be used in the default role clause.

Action: Grant the role to the user.

ORA-01956: invalid command when OS_ROLES are being used

Cause: This command cannot be used when the INIT.ORA parameter OS_ROLES is TRUE.

Action: Grant the role to the user in the operating system.

ORA-01957: Keyword MIN or MAX expected, not found
ORA-01958: Must supply an integer for the LAYER option
ORA-01959: Must supply an integer for the OPCODE option
ORA-01960: Invalid dump logfile option
ORA-01961: Invalid dump option
ORA-01962: Must specify a file number or log sequence number
ORA-01963: Must specify a block number
ORA-01964: Must specify a time for the TIME option
ORA-01965: Must specify a PERIOD
ORA-01966: DEFAULT COLLATION already specified

Cause: The default collation clause was specified twice.

Action: Use only one default collation clause.

ORA-01967: invalid option for CREATE CONTROLFILE

Cause: An invalid CREATE CONTROLFILE option is present.

Action: Specify only valid CREATE CONTROLFILE options.

ORA-01968: Only specify RESETLOGS or NORESETLOGS once

Cause: The keyword RESETLOGS or NORESETLOGS has appeared more than once

Action: Be sure to specify RESETLOGS or NORESETLOGS exactly once.

ORA-01969: You must specify RESETLOGS or NORESETLOGS

Cause: Missing a RESETLOGS or a NORESETLOGS

Action: Be sure to specify RESETLOGS or NORESETLOGS exactly once.

ORA-01970: You must specify a database name for CREATE CONTROLFILE

Cause: Missing a database name

Action: Retype CREATE CONTROLFILE command with the DATABASE keyword.

ORA-01971: Illegal ALTER TRACING option
ORA-01972: Must specify a string for ALTER TRACING ENABLE or DISABLE
ORA-01973: Missing change number

Cause: Keyword “CHANGE” found but change number not specified.

Action: Fix command line and resubmit

ORA-01974: Illegal archive option

Cause: Not a valid option to the “ALTER SYSTEM ARCHIVE” command

Action: n/a

ORA-01975: Illegal character in change number string
ORA-01976: Missing change number
ORA-01977: Missing thread number

Cause: Keyword “THREAD” found but thread number not specified.

Action: Fix command line and resubmit

ORA-01978: Missing sequence number

Cause: Keyword “SEQUENCE” found but sequence number not specified.

Action: Fix command line and resubmit

ORA-01979: missing or invalid password for role ‘string‘

Cause: An attempt was made to enable a role without giving the proper password.

Action: Use the IDENTIFIED BY clause in SET ROLE to specify the correct password.

ORA-01980: error during OS ROLE initialization

Cause: An OS error occurred while loading a users OS ROLES.

Action: Check the OS error.

ORA-01981: CASCADE CONSTRAINTS must be specified to perform this revoke

Cause: During this revoke some foreign key contraints will be removed. In order to perform this automatically, CASCADE CONSTRAINTS must be specified.

Action: Remove the constraints or specify CASCADE CONSTRAINTS.

ORA-01982: invalid auditing option for tables

Cause: AUDIT or NOAUDIT on a table specifies an auditing option that is not legal for tables.

Action: The following options may not be used for tables and should be removed: REFERENCES, EXECUTE

ORA-01983: invalid auditing option for DEFAULT

Cause: AUDIT or NOAUDIT on a DEFAULT specifies an auditing option that is not legal for DEFAULT.

Action: The following options may not be used for DEFAULT and should be removed: REFERENCES

ORA-01984: invalid auditing option for procedures/packages/functions

Cause: AUDIT or NOAUDIT on a DEFAULT specifies an auditing option that is not legal for procedures, packages, or functions.

Action: The following options may not be used for procedures, packages, and functions and should be removed: all but EXECUTE

ORA-01985: cannot create user as LICENSE_MAX_USERS parameter exceeded

Cause: Maximum users in the database license limit exceeded.

Action: Increase license limit.

ORA-01986: OPTIMIZER_GOAL is obsolete

Cause: An obsolete parameter, OPTIMIZER_GOAL, was referenced.

Action: Use the OPTIMIZER_MODE parameter.

ORA-01987: client os username is too long

Cause: A client’s os username is too long for the os logon to succeed.

Action: Use a shorter os username.

ORA-01988: remote os logon is not allowed

Cause: Remote os login attempted when not allowed.

Action: Use a local client, or use the remote_os_authent system parameter to turn on remote os logon.

ORA-01989: role ‘string‘ not authorized by operating system

Cause: The os role does not exist, is not granted to you, or you did not provide the correct password.

Action: Re-attempt the SET ROLE with a valid os role and password, if necessary.

ORA-01990: error opening password file ‘string‘

Cause: The password file either did not exist or was inaccessible.

Action: Ensure that the file exists and is accessible.

ORA-01991: invalid password file ‘string‘
ORA-01992: error closing password file ‘string‘
ORA-01993: error writing password file ‘string‘
ORA-01994: GRANT failed: password file missing or disabled

Cause: The operation failed either because the INIT.ORA parameter REMOTE_LOGIN_PASSWORDFILE was set to NONE or else because the password file was missing.

Action: Create the password file using the orapwd tool and set the INIT.ORA parameter REMOTE_LOGIN_PASSWORDFILE to EXCLUSIVE.

ORA-01995: error reading password file ‘string‘
ORA-01996: GRANT failed: password file ‘string‘ is full
ORA-01997: GRANT failed: user ‘string‘ is IDENTIFIED GLOBALLY

Cause: An attempt was made to grant administrative privileges to a user account, which was created as IDENTIFIED GLOBALLY. This is only allowed in an ASM; not in a database instance.

Action: When connected to a database instance, try granting the administrative privilege to a user whose account is managed by the database (as opposed to managed by a directory server, as is the case with accounts which are IDENTIFIED GLOBALLY).

ORA-01998: REVOKE failed: user SYS always has SYSOPER and SYSDBA

Cause: An attempt was made to revoke SYSOPER or SYSDBA administrative privileges from the SYS user which is not allowed.

Action: Try revoking administrative privilege from users other than SYS.

ORA-01999: password file cannot be updated in SHARED mode

Cause: An attempt was made to perform one of the following operations, but none of these operations are allowed while the INIT.ORA parameter REMOTE_LOGIN_PASSWORDFILE is set to SHARED and password file is in READ ONLY mode. – Attempting to change password for an administrative privileged user either using ALTER USER DDL statement or SQL*Plus PASSWORD command, or OCIPasswordChange API. – Attempting to grant administrative privileges to a user. – Attempting to revoke administrative privileges from a user. – Attempting to drop an administrative privileged user. If the password file was created in 12.2 format, then the following additional operations are disallowed when REMOTE_LOGIN_PASSWORDFILE parameter is set to SHARED. – An ALTER USER DDL statement making changes to an administrative privileged user’s account status, password profile assignment, identification type, password expiration timestamp. – An ALTER PROFILE or DROP PROFILE CASCADE DDL statement for a password profile, which is assigned to an administrative privileged user.

Action: Set the INIT.ORA parameter to EXCLUSIVE, shutdown and restart the database instance and retry the operation.

ORA-02000: missing string keyword
ORA-02001: user SYS is not permitted to create indexes with freelist groups

Cause: user tried to create an index while running with sys authorization.

Action: n/a

ORA-02002: error while writing to audit trail
ORA-02003: invalid USERENV parameter
ORA-02004: security violation

Cause: This error code is never returned to a user. It is used as a value for column, audit_trail.returncode, to signal that a security violation occurred.

Action: None

ORA-02005: implicit (-1) length not valid for this bind or define datatype
ORA-02006: invalid packed decimal format string
ORA-02007: can’t use ALLOCATE or DEALLOCATE options with REBUILD

Cause: Allocate or deallocate storage and rebuild index are not compatible.

Action: Choose one or the other.

ORA-02008: non-zero scale specified for nonnumeric column
ORA-02009: the size specified for a file must not be zero

Cause: A value of zero was specified in a SIZE or RESIZE clause of a file specification.

Action: Use correct syntax, or, if allowed, omit the SIZE or RESIZE clause.

ORA-02010: missing host connect string
ORA-02011: duplicate database link name
ORA-02012: missing USING keyword
ORA-02013: missing CONNECT keyword
ORA-02014: cannot select FOR UPDATE from view with DISTINCT, GROUP BY, etc.

Cause: An attempt was made to select FOR UPDATE from a view which had not been merged because the view used syntax (for example, DISTINCT or GROUP BY) preventing the merge, or because of initialization file parameter settings.

Action: Determine the reason the view will not merge and, if possible, make changes so that it can.

ORA-02015: cannot select FOR UPDATE from remote table

Cause: An attempt was made to select FOR UPDATE on a remote table (directly, or via a view) that had abstract data type columns, and the view or select list contained abstract data type columns or non-column items.

Action: To attempt a select FOR UPDATE, use a view or select list that consists only of base columns from the remote table, none of which may be abstract data type columns.

ORA-02016: cannot use a subquery in a START WITH on a remote database
ORA-02017: integer value required
ORA-02018: database link of same name has an open connection
ORA-02019: connection description for remote database not found
ORA-02020: too many database links in use

Cause: The current session has exceeded the INIT.ORA open_links maximum.

Action: Increase the open_links limit, or free up some open links by committing or rolling back the transaction and canceling open cursors that reference remote databases.

ORA-02021: DDL operations are not allowed on a remote database

Cause: An attempt was made to use a DDL operation on a remote database. For example, “CREATE TABLE tablename@remotedbname …”.

Action: To alter the remote database structure, you must connect to the remote database with the appropriate privileges.

ORA-02022: remote statement has unoptimized view with remote object

Cause: The local view is unoptimized and contains references to objects at the remote database and the statement must be executed at the remote database.

Action: Create a similar view on the remote database and modify the violating view in the SQL statement with the new view@remote.

ORA-02023: START WITH or CONNECT BY predicate cannot be evaluated by remote data base
ORA-02024: database link not found

Cause: Database link to be dropped is not found in dictionary

Action: Correct the database link name

ORA-02025: all tables in the SQL statement must be at the remote database

Cause: The user’s SQL statement references tables from multiple databases. The remote database is not Oracle V7 or above, and can perform updates only if it can reference all tables in the SQL statement.

Action: n/a

ORA-02026: missing LINK keyword

Cause: keyword missing

Action: supply missing keyword

ORA-02027: multi-row UPDATE of LONG column is not supported

Cause: A bind variable with length greater than 4000 bytes is being used to update a column, and the update statement updates more than one row.

Action: You may only update a single row with such a bind variable.

ORA-02028: fetching an exact number of rows is not supported by the server

Cause: The server does not support UPIALL, so the fetch of an exact number of rows cannot be emulated on the user side.

Action: Connect to a valid server or do not use an exact fetch.

ORA-02029: missing FILE keyword

Cause: keyword missing

Action: supply missing keyword

ORA-02030: can only select from fixed tables/views

Cause: An attempt is being made to perform an operation other than a retrieval from a fixed table/view.

Action: You may only select rows from fixed tables/views.

ORA-02031: no ROWID for fixed tables or for external-organized tables

Cause: An attempt is being made to access rowid from a fixed table or from a external-organized table.

Action: Do not access ROWID from a fixed table or from a external-organized table.

ORA-02032: clustered tables cannot be used before the cluster index is built

Cause: User attempted to perform a DML statement on a clustered table for which no cluster index has yet been created.

Action: Create the cluster index.

ORA-02033: a cluster index for this cluster already exists

Cause: A cluster index already exists for the cluster.

Action: None

ORA-02034: speed bind not permitted

Cause: Speed bind not allowed with supplied bind variables. Trapped internally by the system.

Action: None

ORA-02035: illegal bundled operation combination

Cause: User requested that the UPI bundled execution call perform an an illegal combination of operations.

Action: See documentation for legal operation combinations.

ORA-02036: too many variables to describe with automatic cursor open

Cause: User requested that the UPI bundled execution call perform automatic cursor open and close on a describe operation. There were too many select-list items or bind variables to do this.

Action: open and close cursor explicitly

ORA-02037: uninitialized speed bind storage

Cause: User attempted a UPI bundled execution call containing a standalone execute operation without first performing a UPI bundled execution call containing a bind operation.

Action: perform a UPI bundled execution call with bind before performing a bundled execution call with execute

ORA-02038: define is not allowed for array type

Cause: User attempted to define a select list variable of type “array”. Arrays may only serve as host bind variables.

Action: n/a

ORA-02039: bind by value is not allowed for array type

Cause: User attempted to bind an array host variable by value. Arrays may only be bound by reference.

Action: n/a

ORA-02040: remote database string does not support two-phase commit

Cause: the database was potentially updated but does not support prepare to commit (as determined by its logon transaction traits). The transaction was rolled back.

Action: Do not attempt to update the remote database unless it is the only database updated in one transaction.

ORA-02041: client database did not begin a transaction

Cause: internal error

Action: contact support

ORA-02042: too many distributed transactions

Cause: the distributed transaction table was full because too many distributed transactions were active.

Action: Run fewer transactions. If you are sure you don’t have too many concurrent distributed transactions, this indicates an internal error and support should be notified. Instance shutdown/restart would be a work-around.

ORA-02043: must end current transaction before executing string

Cause: a transaction is in progress and one of the following commands commands is issued: COMMIT FORCE, ROLLBACK FORCE, or ALTER SYSTEM ENABLE DISTRIBUTED RECOVERY in single process mode.

Action: COMMIT or ROLLBACK the current transaction and resubmit command.

ORA-02044: transaction manager login denied: transaction in progress

Cause: a remote transaction manager tried to log in while a distributed transaction is in progress.

Action: end the current transaction (this is a protocol error from a remote transaction manager)

ORA-02045: too many local sessions participating in global transaction

Cause: too many sessions at this site for this transaction.

Action: use an existing link so another session need not be created.

ORA-02046: distributed transaction already begun

Cause: internal error or error in external transaction manager. A server session received a begin_tran RPC before finishing with a previous distributed tran.

Action: n/a

ORA-02047: cannot join the distributed transaction in progress

Cause: Either a transaction is in progress against a remote database that does not fully support two phase commit, and an update is attempted on another database, or updates are pending and and an attempt is made to update a different database that does not fully support two phase commit.

Action: complete the current transaction and then resubmit the update request.

ORA-02048: attempt to begin distributed transaction without logging on

Cause: client program must issue a distributed transaction login.

Action: contact support.

ORA-02049: timeout: distributed transaction waiting for lock

Cause: “The number of seconds specified in the distributed_lock_timeout initialization parameter were exceeded while waiting for a lock or for a begin transaction hash collision to end.”

Action: Treat this timeout as a deadlock. Roll back the transaction and try again.

ORA-02050: transaction string rolled back, some remote DBs may be in-doubt

Cause: network or remote failure in 2PC.

Action: Notify operations; remote DBs will automatically re-sync when the failure is repaired.

ORA-02051: another session or branch in same transaction failed or finalized

Cause: A session at the same site with the same global transaction ID failed. The failure could also be caused by an application error if an attempt was made to update the database while another tightly coupled transaction branch with the same global transaction ID was finalized or aborted.

Action: No action necessary as the transaction will be automatically recovered. In the case of an application error, make sure there are no more updates to the database once the transaction manager has started two-phase commit for tightly coupled distributed transaction.

ORA-02052: remote transaction failure at string

Cause: error in remote transaction at given DBLINK

Action: retry

ORA-02053: transaction string committed, some remote DBs may be in-doubt

Cause: network or remote failure in 2PC.

Action: Notify operations; remote DBs will automatically re-sync when the failure is repaired.

ORA-02054: transaction string in-doubt

Cause: network or remote failure in 2PC.

Action: Notify operations; DBs will automatically re-sync when the failure is repaired. Monitor pending_trans$ for final outcome.

ORA-02055: distributed update operation failed; rollback required

Cause: a failure during distributed update operation may not have rolled back all effects of the operation. Since some sites may be inconsistent, the transaction must roll back to a savepoint or entirely

Action: rollback to a savepoint or rollback transaction and resubmit

ORA-02056: 2PC: string: bad two-phase command number string from string

Cause: two-phase commit protocol error.

Action: recovery of transaction attempted. Monitor pending_trans$ table to ensure correct resolution. Contact support.

ORA-02057: 2PC: string: bad two-phase recovery state number string from string

Cause: internal error in two-phase recovery protocol

Action: contact support

ORA-02058: no prepared transaction found with ID string

Cause: no transaction with local_tran_id or global_tran_id found in the pending_trans$ table in prepared state.

Action: check the pending_trans$ table.

ORA-02059: ORA-2PC-CRASH-TEST-string in commit comment

Cause: This is a special comment used to test the two phase commit.

Action: Don’t use this special comment (%s a number 1-10)

ORA-02060: select for update specified a join of distributed tables

Cause: tables in a join with the for update clause must reside at the same DB.

Action: n/a

ORA-02061: lock table specified list of distributed tables

Cause: tables in a lock table statement must reside at the same DB.

Action: issue multiple lock table commands.

ORA-02062: distributed recovery received DBID string, expected string

Cause: a database link at a coordinator no longer points to the expected database. Link may have been redefined, or a different DB mounted.

Action: restore link definition or remote database.

ORA-02063: preceding stringstring from stringstring

Cause: an Oracle error was received from a remote database link.

Action: refer to the preceding error message(s)

ORA-02064: distributed operation not supported

Cause: One of the following unsupported operations was attempted: 1. array execute of a remote update with a subquery that references a dblink, or 2. an update of a long column with bind variable and an update of a second column with a subquery that both references a dblink and a bind variable, or 3. a commit is issued in a coordinated session from an RPC procedure call with OUT parameters or function call.

Action: simplify remote update statement

ORA-02065: illegal option for ALTER SYSTEM

Cause: The option specified for ALTER SYSTEM is not supported

Action: refer to the user manual for option supported

ORA-02066: missing or invalid DISPATCHERS text

Cause: A character string literal was expected, but not found, following ALTER SYSTEM SET DISPATCHERS

Action: place the string literal containing the dispatcher’s specification after ALTER SYSTEM SET DISPATCHERS

ORA-02067: transaction or savepoint rollback required

Cause: A failure (typically a trigger or stored procedure with multiple remote updates) occurred such that the all-or-nothing execution of a previous Oracle call cannot be guaranteed.

Action: rollback to a previous savepoint or rollback the transaction and resubmit.

ORA-02068: following severe error from stringstring

Cause: A severe error (disconnect, fatal Oracle error) received from the indicated database link. See following error text.

Action: Contact the remote system administrator.

ORA-02069: global_names parameter must be set to TRUE for this operation

Cause: A remote mapping of the statement is required but cannot be achieved because global_names should be set to TRUE for it to be achieved

Action: Issue alter session set global_names = true if possible

ORA-02070: database stringstring does not support string in this context

Cause: The remote database does not support the named capability in the context in which it is used.

Action: Simplify the SQL statement.

ORA-02071: error initializing capabilities for remote database string

Cause: Could not load a remote-specified capability table.

Action: Contact support for the remote SQL*Connect product.

ORA-02072: distributed database network protocol mismatch

Cause: This should never happen between different PRODUCTION releases of ORACLE, but may happen between alpha and beta releases, for example.

Action: Upgrade the older release.

ORA-02073: sequence numbers not supported in remote updates

Cause: Sequence numbers may not be used in INSERTS, UPDATES, or DELETES on remote tables.

Action: n/a

ORA-02074: cannot string in a distributed transaction

Cause: A commit or rollback was attempted from session other than the parent of a distributed transaction.

Action: Only commit or rollback from the parent session.

ORA-02075: another instance changed state of transaction string

Cause: A commit force or rollback force was issued from a session in another instance.

Action: Check if another Oracle instance is performing recovery of pending transactions. Query DBA_2PC_PENDING to determine the new state of the transaction.

ORA-02076: sequence not co-located with updated table or long column

Cause: all referenced sequences must be co-located with the table with the long column.

Action: n/a

ORA-02077: selects of long columns must be from co-located tables

Cause: if a select returns long columns from multiple tables, all the tables must be co-located

Action: n/a

ORA-02078: invalid setting for ALTER SYSTEM FIXED_DATE
ORA-02079: cannot join a committing distributed transaction

Cause: Once a transaction branch is prepared, no more new transaction branches are allowed to start, nor is the prepared transaction branch allowed to be joined.

Action: Check the application code as this is an XA protocol violation.

ORA-02080: database link is in use

Cause: a transaction is active or a cursor is open on the database link given in the alter session close database link link command.

Action: commit or rollback, and close all cursors

ORA-02081: database link is not open

Cause: dblink given is not currently open.

Action: n/a

ORA-02082: a loopback database link must have a connection qualifier

Cause: An attempt was made to create a database link with the same name as the current database.

Action: a loopback database link needs a trailing qualifier, for example MYDB.EXAMPLE.COM@INST1 – the ‘@INST1’ is the qualifier

ORA-02083: database name has illegal character ‘string‘

Cause: supplied database name can contain only A-Z, 0-9, ‘_’, ‘#’, ‘$’ ‘.’ and ‘@’ characters.

Action: n/a

ORA-02084: database name is missing a component

Cause: supplied database name cannot contain a leading ‘.’, trailing ‘.’ or ‘@’, or two ‘.’ or ‘@’ in a row.

Action: n/a

ORA-02085: database link string connects to string

Cause: a database link connected to a database with a different name. The connection is rejected.

Action: create a database link with the same name as the database it connects to, or set global_names=false.

ORA-02086: database (link) name is too long

Cause: database/database link name can have at most 128 characters.

Action: n/a

ORA-02087: object locked by another process in same transaction

Cause: A database link is being used in the cluster database environment that loops back to the same instance. One session is trying to convert a lock that was obtained by the other session.

Action: Get the more restrictive lock first. For example, if session 1 gets a share lock and session 2 gets an exclusive lock on the same object, get the exclusive lock first. Or, simply use the same session to access the object.

ORA-02088: distributed database option not installed

Cause: Remote and distributed updates and transactions are a separately priced option in ORACLE V7.

Action: n/a

ORA-02089: COMMIT is not allowed in a subordinate session

Cause: COMMIT was issued in a session that is not the two-phase commit global coordinator.

Action: Issue commit at the global coordinator only.

ORA-02090: network error: attempted callback+passthru

Cause: internal error.

Action: n/a

ORA-02091: transaction rolled back

Cause: Also see error 2092. If the transaction is aborted at a remote site then you will only see 2091; if aborted at host then you will see 2092 and 2091.

Action: Add rollback segment and retry the transaction.

ORA-02092: out of transaction table slots for distributed transaction

Cause: The transaction is assigned to the system rollback segment and is trying to get into the PREPARED state, but the required number of non-PREPARED slots are not available, hence the transaction is rolled back.

Action: Add a rollback segment and retry the transaction.

ORA-02093: TRANSACTIONS_PER_ROLLBACK_SEGMENT(string) more than maximum possible(string)

Cause: Value of parameter specified is greater than allowed on this port.

Action: Use default or reduce it to less than max.

ORA-02094: replication option not installed

Cause: The replication option was not installed at this site. Updatable materialized views, deferred RPCs, and other replication features were, therefore, unavailable.

Action: Install the replication option. The replication option is not part of the Oracle Server product and must be purchased separately. Contact an Oracle Sales representative if the replication option needs to be purchased.

ORA-02095: specified initialization parameter cannot be modified

Cause: The specified initialization parameter is not modifiable

Action: n/a

ORA-02096: specified initialization parameter is not modifiable with this option

Cause: Though the initialization parameter is modifiable, it cannot be modified using the specified command.

Action: Check the DBA guide for information about under what scope the parameter may be modified

ORA-02097: parameter cannot be modified because specified value is invalid

Cause: Though the initialization parameter is modifiable, the modified value is not acceptable to the parameter.

Action: Check the DBA guide for range of acceptable values for this parameter.

ORA-02098: error parsing index-table reference (:I)

Cause: An incorrect index-table (:I) syntax was encountered.

Action: This syntax is for oracle internal use only.

Share this:

  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on X (Opens in new window) X
  • Click to share on Facebook (Opens in new window) Facebook

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload CAPTCHA.



View Fatih ACAR's profile on LinkedIn

Categories

  • Databases (329)
    • MsSQL Server (18)
      • Administration (16)
      • Errors and Solutions (4)
      • SQL (2)
    • MySQL (5)
      • Administration (4)
      • Backup And Recovery (1)
      • Errors and Solutions (1)
    • Oracle (290)
      • Administration (79)
      • Backup And Recovery (29)
      • Errors and Solutions (195)
      • Procedure (10)
      • SQL (32)
    • PostgreSQL (16)
      • Administration (15)
      • Errors and Solutions (3)
      • SQL (2)
    • Redis (1)
  • Microsotf Dynamics CRM (1)
  • Operating Systems (47)
    • Linux & Unix (34)
    • Windows (13)
  • Programing (5)
    • Python (5)
  • SAP (15)
    • Errors and Solutions (4)
    • SAP Basis (12)
  • Security (8)
    • Database Security (6)
    • Information Security (1)
    • System Security (4)
  • VMware (4)

Recent Posts

  • Redis 7 Sentinel Infrastructure Installation
  • Oracle Database 19c Multi Data Guard and DML Redirect, Switchover-Failover Operations on Oracle Linux 8
  • Oracle Database 23ai Free Installation Steps on Oracle Linux 9
  • Oracle Database 19c Active Data Guard Installation and DML Redirect, Switchover-Failover Operations on Oracle Linux 8
  • Oracle Database 19c Installation and 19.22 RU Patch Apply on Oracle Linux 8

Resources

  • Oracle
  • PostgreSQL

Blogroll

  • Gökhan Atıl
  • H. Koray Gündüz
  • Hakan Talip Öztürk
  • Zekeriya Beşiroğlu

Web Pages

  • BT Çözümleri

Tag Cloud

Administration Backup and Recovery Cluster Systems Database Administration Database Security Linux Linux Administration MsSQL Server MsSQL Server Error and Solutions MySQL MySQL Administration ORA-00018 ORA-00020 Oracle Oracle 12c Oracle 19c Oracle Administration Oracle Backup and Restore Oracle Data Guard Oracle Data Guard Failover Oracle Data Guard Switchover Oracle Error Solutions Oracle Linux Oracle Rman Backup Oracle Security Oracle SQL Query PostgreSQL PostgreSQL Administration PostgreSQL High Availability PostgreSQL Hot Standby Python SAP Basis Sap Errors and Solutions Sap System Administration SQL SQL Server Administration SQL Server Availability Group Stored Procedure System Administration System Security VMware VMware Administration Windows Windows Batch Script Windows Server

Social

  • View facar1987’s profile on Twitter
  • View facar’s profile on LinkedIn

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 17 other subscribers
©2026 Fatih Acar's blog | Built using WordPress and Responsive Blogily theme by Superb