oracle错误号大全(查询ora错误号以及解决方法技巧)
生活随笔
收集整理的這篇文章主要介紹了
oracle错误号大全(查询ora错误号以及解决方法技巧)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
oracle 查詢ora錯誤號以及解決方法技巧 racle 錯誤號以及解決方法技巧 經常有朋友問我ORACLE 類似ora-00109 錯誤的信息,其實我們的ORACLE系統本身已經為我們詳細的說明了各種的錯誤信息,一般的ORA錯誤號都在里面,而且給出了相應的解決方法。
在UNIX 系統下只要執行這個命令就可以列出錯誤原因以及解決方法了。
例如ora-00109錯誤,只要這樣
?[oracle@mail oracle]$ oerr ora 109
01090, 00000, "shutdown in progress - connection is not permitted"
// *Cause:? The SHUTDOWN command was used to shut down a running
//???????? ORACLE instance, so you cannot connect to ORACLE.
// *Action: Wait for the instance to be restarted, or contact your DBA.
01091, 00000, "failure during startup force"
// *Cause:? Unable to destroy the old SGA.
// *Action: Manually remove the old SGA and reissue the STARTUP command
01092, 00000, "ORACLE instance terminated. Disconnection forced"
// *Cause:? The instance this process was connected to was terminated
//????????? abnormally, probably via a shutdown abort. This process
//????????? was forced to disconnect from the instance.
// *Action: Examine the alert log for more details. When the instance has been
//????????? restarted, retry action.
01093, 00000, "ALTER DATABASE CLOSE only permitted with no sessions connected"
// *Cause:? There is at least one more session other than the current one
//???????? logged into the instance.? ALTER DATABASE CLOSE is not permitted.
// *Action: Find the other sessions and log them out and resubmit the command
01094, 00000, "ALTER DATABASE CLOSE in progress. Connections not permitted"
// *Cause:
// *Action:
01095, 00000, "DML statement processed zero rows"
// *Cause:? During a call to OTEX, an update, delete, or insert statement
//????????? being executed processed zero rows.? The execution
//????????? of statements by OTEX was halted at this point.
// *Action:
01096, 00000, "program version (%s) incompatible with instance (%s)"
// MERGE: 1095 RENUMBERED TO 1096
// *Cause: A program is trying to connect to an instance using a different
//???????? version of code than the database was started with.? This is
//???????? not allowed.
// *Action: Either relink the program with the same version as the database or
//????????? restart the database using the old version of code.
01097, 00000, "cannot shutdown while in a transaction - commit or rollback first????????????????????????????????????????????? "
// *Cause:? Obvious
// *Action:
01098, 00000, "program Interface error during Long Insert"
// *Cause:
// *Action:
01099, 00000, "cannot mount database in SHARED mode if started in single process?????????????????????????????????????????????? mode"
// *Cause:? Obvious
// *Action:
上面只是個例子,其他的錯誤號都可以通過這個方法得到。
其實ORACLE本身還有很多不錯的東西,很多工具,不過十大家沒去研究而已。
希望對大家有幫助。 [align=right][color=#000066][此貼子已經被作者于2007-6-28 16:52:10編輯過][/color][/align] ---------數據恢復 oracle數據庫恢復專家 13352468096 QQ:9417901 網站:http://www.sosdb.com-----
下面是查詢:0003的錯誤信息,很全面了。
[oracle@mail oracle]$ oerr ora 3
00030, 00000, "User session ID does not exist."
// *Cause:? The user session ID no longer exists, probably because the
//????????? session was logged out.
// *Action: Use a valid session ID.
00031, 00000, "session marked for kill"
// *Cause:? The session specified in an ALTER SYSTEM KILL SESSION command
//????????? cannot be killed immediately (because it is rolling back or blocked
//????????? on a network operation), but it has been marked for kill.? This
//????????? means it will be killed as soon as possible after its current
//????????? uninterruptable operation is done.
// *Action: No action is required for the session to be killed, but further
//????????? executions of the ALTER SYSTEM KILL SESSION command on this session
//????????? may cause the session to be killed sooner.
00032, 00000, "invalid session migration password"
// *Cause:? The session migration password specified in a session creation
//????????? call was invalid (probably too long).
// *Action: Retry with a valid password (less than 30 chars).
00033, 00000, "current session has empty migration password"
// *Cause:? An attempt was made to detach or clone the current session and
//????????? it has an empty migration password.? This is not allowed.
// *Action: Create the session with a non-empty migration password.
00034, 00000, "cannot %s in current PL/SQL session"
// *Cause:? An attempt was made to issue a commit or rollback from a PL/SQL
//????????? object (procedure, function, package) in a session that has this
//????????? disabled (by 'alter session disable commit in procedure')
// *Action: Enable commits from PL/SQL in this session, or do not attempt
//????????? to use commit or rollback in PL/SQL when they are disabled
//????????? in the current session.
00035, 00000, "LICENSE_MAX_USERS cannot be less than current number of users"
// *Cause:
// *Action:
00036, 00000, "maximum number of recursive SQL levels (%s) exceeded"
// *Cause:? An attempt was made to go more than the specified number
//????????? of recursive SQL levels.
// *Action: Remove the recursive SQL, possibly a recursive trigger.
00037, 00000, "cannot switch to a session belonging to a different server group"
// *Cause:? An attempt was made to switch to a session in a different server
//????????? group.? This is not allowed.
// *Action: Make sure the server switches to a session that belongs to its
//????????? server group.
00038, 00000, "Cannot create session: server group belongs to another user"
// *Cause:? An attempt was made to create a non-migratable session in a server
//????????? group that is owned by a different user.
// *Action: A server group is owned by the first user who logs into a server
//????????? in the server group in non-migratable mode.? All subsequent
//????????? non-migratable mode logins must be made by the user who owns
//????????? the server group.? To have a different user login in non-migratable
//????????? mode, the ownership of the server group will have to be changed.
//????????? This can be done by logging off all current sessions and detaching
//????????? from all existing servers in the server group and then having the
//????????? new user login to become the new owner.
[oracle@mail oracle]$ oerr ora 3
00030, 00000, "User session ID does not exist."
// *Cause:? The user session ID no longer exists, probably because the
//????????? session was logged out.
// *Action: Use a valid session ID.
00031, 00000, "session marked for kill"
// *Cause:? The session specified in an ALTER SYSTEM KILL SESSION command
//????????? cannot be killed immediately (because it is rolling back or blocked
//????????? on a network operation), but it has been marked for kill.? This
//????????? means it will be killed as soon as possible after its current
//????????? uninterruptable operation is done.
// *Action: No action is required for the session to be killed, but further
//????????? executions of the ALTER SYSTEM KILL SESSION command on this session
//????????? may cause the session to be killed sooner.
00032, 00000, "invalid session migration password"
// *Cause:? The session migration password specified in a session creation
//????????? call was invalid (probably too long).
// *Action: Retry with a valid password (less than 30 chars).
00033, 00000, "current session has empty migration password"
// *Cause:? An attempt was made to detach or clone the current session and
//????????? it has an empty migration password.? This is not allowed.
// *Action: Create the session with a non-empty migration password.
00034, 00000, "cannot %s in current PL/SQL session"
// *Cause:? An attempt was made to issue a commit or rollback from a PL/SQL
//????????? object (procedure, function, package) in a session that has this
//????????? disabled (by 'alter session disable commit in procedure')
// *Action: Enable commits from PL/SQL in this session, or do not attempt
//????????? to use commit or rollback in PL/SQL when they are disabled
//????????? in the current session.
00035, 00000, "LICENSE_MAX_USERS cannot be less than current number of users"
// *Cause:
// *Action:
00036, 00000, "maximum number of recursive SQL levels (%s) exceeded"
// *Cause:? An attempt was made to go more than the specified number
//????????? of recursive SQL levels.
// *Action: Remove the recursive SQL, possibly a recursive trigger.
00037, 00000, "cannot switch to a session belonging to a different server group"
// *Cause:? An attempt was made to switch to a session in a different server
//????????? group.? This is not allowed.
// *Action: Make sure the server switches to a session that belongs to its
//????????? server group.
00038, 00000, "Cannot create session: server group belongs to another user"
// *Cause:? An attempt was made to create a non-migratable session in a server
//????????? group that is owned by a different user.
// *Action: A server group is owned by the first user who logs into a server
//????????? in the server group in non-migratable mode.? All subsequent
//????????? non-migratable mode logins must be made by the user who owns
//????????? the server group.? To have a different user login in non-migratable
//????????? mode, the ownership of the server group will have to be changed.
//????????? This can be done by logging off all current sessions and detaching
//????????? from all existing servers in the server group and then having the
//????????? new user login to become the new owner.
[oracle@mail oracle]$ oerr ora 3
00030, 00000, "User session ID does not exist."
// *Cause:? The user session ID no longer exists, probably because the
//????????? session was logged out.
// *Action: Use a valid session ID.
00031, 00000, "session marked for kill"
// *Cause:? The session specified in an ALTER SYSTEM KILL SESSION command
//????????? cannot be killed immediately (because it is rolling back or blocked
//????????? on a network operation), but it has been marked for kill.? This
//????????? means it will be killed as soon as possible after its current
//????????? uninterruptable operation is done.
// *Action: No action is required for the session to be killed, but further
//????????? executions of the ALTER SYSTEM KILL SESSION command on this session
//????????? may cause the session to be killed sooner.
00032, 00000, "invalid session migration password"
// *Cause:? The session migration password specified in a session creation
//????????? call was invalid (probably too long).
// *Action: Retry with a valid password (less than 30 chars).
00033, 00000, "current session has empty migration password"
// *Cause:? An attempt was made to detach or clone the current session and
//????????? it has an empty migration password.? This is not allowed.
// *Action: Create the session with a non-empty migration password.
00034, 00000, "cannot %s in current PL/SQL session"
// *Cause:? An attempt was made to issue a commit or rollback from a PL/SQL
//????????? object (procedure, function, package) in a session that has this
//????????? disabled (by 'alter session disable commit in procedure')
// *Action: Enable commits from PL/SQL in this session, or do not attempt
//????????? to use commit or rollback in PL/SQL when they are disabled
//????????? in the current session.
00035, 00000, "LICENSE_MAX_USERS cannot be less than current number of users"
// *Cause:
// *Action:
00036, 00000, "maximum number of recursive SQL levels (%s) exceeded"
// *Cause:? An attempt was made to go more than the specified number
//????????? of recursive SQL levels.
// *Action: Remove the recursive SQL, possibly a recursive trigger.
00037, 00000, "cannot switch to a session belonging to a different server group"
// *Cause:? An attempt was made to switch to a session in a different server
//????????? group.? This is not allowed.
// *Action: Make sure the server switches to a session that belongs to its
//????????? server group.
00038, 00000, "Cannot create session: server group belongs to another user"
// *Cause:? An attempt was made to create a non-migratable session in a server
//????????? group that is owned by a different user.
// *Action: A server group is owned by the first user who logs into a server
//????????? in the server group in non-migratable mode.? All subsequent
//????????? non-migratable mode logins must be made by the user who owns
//????????? the server group.? To have a different user login in non-migratable
//????????? mode, the ownership of the server group will have to be changed.
//????????? This can be done by logging off all current sessions and detaching
//????????? from all existing servers in the server group and then having the
//????????? new user login to become the new owner.
在UNIX 系統下只要執行這個命令就可以列出錯誤原因以及解決方法了。
例如ora-00109錯誤,只要這樣
?[oracle@mail oracle]$ oerr ora 109
01090, 00000, "shutdown in progress - connection is not permitted"
// *Cause:? The SHUTDOWN command was used to shut down a running
//???????? ORACLE instance, so you cannot connect to ORACLE.
// *Action: Wait for the instance to be restarted, or contact your DBA.
01091, 00000, "failure during startup force"
// *Cause:? Unable to destroy the old SGA.
// *Action: Manually remove the old SGA and reissue the STARTUP command
01092, 00000, "ORACLE instance terminated. Disconnection forced"
// *Cause:? The instance this process was connected to was terminated
//????????? abnormally, probably via a shutdown abort. This process
//????????? was forced to disconnect from the instance.
// *Action: Examine the alert log for more details. When the instance has been
//????????? restarted, retry action.
01093, 00000, "ALTER DATABASE CLOSE only permitted with no sessions connected"
// *Cause:? There is at least one more session other than the current one
//???????? logged into the instance.? ALTER DATABASE CLOSE is not permitted.
// *Action: Find the other sessions and log them out and resubmit the command
01094, 00000, "ALTER DATABASE CLOSE in progress. Connections not permitted"
// *Cause:
// *Action:
01095, 00000, "DML statement processed zero rows"
// *Cause:? During a call to OTEX, an update, delete, or insert statement
//????????? being executed processed zero rows.? The execution
//????????? of statements by OTEX was halted at this point.
// *Action:
01096, 00000, "program version (%s) incompatible with instance (%s)"
// MERGE: 1095 RENUMBERED TO 1096
// *Cause: A program is trying to connect to an instance using a different
//???????? version of code than the database was started with.? This is
//???????? not allowed.
// *Action: Either relink the program with the same version as the database or
//????????? restart the database using the old version of code.
01097, 00000, "cannot shutdown while in a transaction - commit or rollback first????????????????????????????????????????????? "
// *Cause:? Obvious
// *Action:
01098, 00000, "program Interface error during Long Insert"
// *Cause:
// *Action:
01099, 00000, "cannot mount database in SHARED mode if started in single process?????????????????????????????????????????????? mode"
// *Cause:? Obvious
// *Action:
上面只是個例子,其他的錯誤號都可以通過這個方法得到。
其實ORACLE本身還有很多不錯的東西,很多工具,不過十大家沒去研究而已。
希望對大家有幫助。 [align=right][color=#000066][此貼子已經被作者于2007-6-28 16:52:10編輯過][/color][/align] ---------數據恢復 oracle數據庫恢復專家 13352468096 QQ:9417901 網站:http://www.sosdb.com-----
下面是查詢:0003的錯誤信息,很全面了。
[oracle@mail oracle]$ oerr ora 3
00030, 00000, "User session ID does not exist."
// *Cause:? The user session ID no longer exists, probably because the
//????????? session was logged out.
// *Action: Use a valid session ID.
00031, 00000, "session marked for kill"
// *Cause:? The session specified in an ALTER SYSTEM KILL SESSION command
//????????? cannot be killed immediately (because it is rolling back or blocked
//????????? on a network operation), but it has been marked for kill.? This
//????????? means it will be killed as soon as possible after its current
//????????? uninterruptable operation is done.
// *Action: No action is required for the session to be killed, but further
//????????? executions of the ALTER SYSTEM KILL SESSION command on this session
//????????? may cause the session to be killed sooner.
00032, 00000, "invalid session migration password"
// *Cause:? The session migration password specified in a session creation
//????????? call was invalid (probably too long).
// *Action: Retry with a valid password (less than 30 chars).
00033, 00000, "current session has empty migration password"
// *Cause:? An attempt was made to detach or clone the current session and
//????????? it has an empty migration password.? This is not allowed.
// *Action: Create the session with a non-empty migration password.
00034, 00000, "cannot %s in current PL/SQL session"
// *Cause:? An attempt was made to issue a commit or rollback from a PL/SQL
//????????? object (procedure, function, package) in a session that has this
//????????? disabled (by 'alter session disable commit in procedure')
// *Action: Enable commits from PL/SQL in this session, or do not attempt
//????????? to use commit or rollback in PL/SQL when they are disabled
//????????? in the current session.
00035, 00000, "LICENSE_MAX_USERS cannot be less than current number of users"
// *Cause:
// *Action:
00036, 00000, "maximum number of recursive SQL levels (%s) exceeded"
// *Cause:? An attempt was made to go more than the specified number
//????????? of recursive SQL levels.
// *Action: Remove the recursive SQL, possibly a recursive trigger.
00037, 00000, "cannot switch to a session belonging to a different server group"
// *Cause:? An attempt was made to switch to a session in a different server
//????????? group.? This is not allowed.
// *Action: Make sure the server switches to a session that belongs to its
//????????? server group.
00038, 00000, "Cannot create session: server group belongs to another user"
// *Cause:? An attempt was made to create a non-migratable session in a server
//????????? group that is owned by a different user.
// *Action: A server group is owned by the first user who logs into a server
//????????? in the server group in non-migratable mode.? All subsequent
//????????? non-migratable mode logins must be made by the user who owns
//????????? the server group.? To have a different user login in non-migratable
//????????? mode, the ownership of the server group will have to be changed.
//????????? This can be done by logging off all current sessions and detaching
//????????? from all existing servers in the server group and then having the
//????????? new user login to become the new owner.
[oracle@mail oracle]$ oerr ora 3
00030, 00000, "User session ID does not exist."
// *Cause:? The user session ID no longer exists, probably because the
//????????? session was logged out.
// *Action: Use a valid session ID.
00031, 00000, "session marked for kill"
// *Cause:? The session specified in an ALTER SYSTEM KILL SESSION command
//????????? cannot be killed immediately (because it is rolling back or blocked
//????????? on a network operation), but it has been marked for kill.? This
//????????? means it will be killed as soon as possible after its current
//????????? uninterruptable operation is done.
// *Action: No action is required for the session to be killed, but further
//????????? executions of the ALTER SYSTEM KILL SESSION command on this session
//????????? may cause the session to be killed sooner.
00032, 00000, "invalid session migration password"
// *Cause:? The session migration password specified in a session creation
//????????? call was invalid (probably too long).
// *Action: Retry with a valid password (less than 30 chars).
00033, 00000, "current session has empty migration password"
// *Cause:? An attempt was made to detach or clone the current session and
//????????? it has an empty migration password.? This is not allowed.
// *Action: Create the session with a non-empty migration password.
00034, 00000, "cannot %s in current PL/SQL session"
// *Cause:? An attempt was made to issue a commit or rollback from a PL/SQL
//????????? object (procedure, function, package) in a session that has this
//????????? disabled (by 'alter session disable commit in procedure')
// *Action: Enable commits from PL/SQL in this session, or do not attempt
//????????? to use commit or rollback in PL/SQL when they are disabled
//????????? in the current session.
00035, 00000, "LICENSE_MAX_USERS cannot be less than current number of users"
// *Cause:
// *Action:
00036, 00000, "maximum number of recursive SQL levels (%s) exceeded"
// *Cause:? An attempt was made to go more than the specified number
//????????? of recursive SQL levels.
// *Action: Remove the recursive SQL, possibly a recursive trigger.
00037, 00000, "cannot switch to a session belonging to a different server group"
// *Cause:? An attempt was made to switch to a session in a different server
//????????? group.? This is not allowed.
// *Action: Make sure the server switches to a session that belongs to its
//????????? server group.
00038, 00000, "Cannot create session: server group belongs to another user"
// *Cause:? An attempt was made to create a non-migratable session in a server
//????????? group that is owned by a different user.
// *Action: A server group is owned by the first user who logs into a server
//????????? in the server group in non-migratable mode.? All subsequent
//????????? non-migratable mode logins must be made by the user who owns
//????????? the server group.? To have a different user login in non-migratable
//????????? mode, the ownership of the server group will have to be changed.
//????????? This can be done by logging off all current sessions and detaching
//????????? from all existing servers in the server group and then having the
//????????? new user login to become the new owner.
[oracle@mail oracle]$ oerr ora 3
00030, 00000, "User session ID does not exist."
// *Cause:? The user session ID no longer exists, probably because the
//????????? session was logged out.
// *Action: Use a valid session ID.
00031, 00000, "session marked for kill"
// *Cause:? The session specified in an ALTER SYSTEM KILL SESSION command
//????????? cannot be killed immediately (because it is rolling back or blocked
//????????? on a network operation), but it has been marked for kill.? This
//????????? means it will be killed as soon as possible after its current
//????????? uninterruptable operation is done.
// *Action: No action is required for the session to be killed, but further
//????????? executions of the ALTER SYSTEM KILL SESSION command on this session
//????????? may cause the session to be killed sooner.
00032, 00000, "invalid session migration password"
// *Cause:? The session migration password specified in a session creation
//????????? call was invalid (probably too long).
// *Action: Retry with a valid password (less than 30 chars).
00033, 00000, "current session has empty migration password"
// *Cause:? An attempt was made to detach or clone the current session and
//????????? it has an empty migration password.? This is not allowed.
// *Action: Create the session with a non-empty migration password.
00034, 00000, "cannot %s in current PL/SQL session"
// *Cause:? An attempt was made to issue a commit or rollback from a PL/SQL
//????????? object (procedure, function, package) in a session that has this
//????????? disabled (by 'alter session disable commit in procedure')
// *Action: Enable commits from PL/SQL in this session, or do not attempt
//????????? to use commit or rollback in PL/SQL when they are disabled
//????????? in the current session.
00035, 00000, "LICENSE_MAX_USERS cannot be less than current number of users"
// *Cause:
// *Action:
00036, 00000, "maximum number of recursive SQL levels (%s) exceeded"
// *Cause:? An attempt was made to go more than the specified number
//????????? of recursive SQL levels.
// *Action: Remove the recursive SQL, possibly a recursive trigger.
00037, 00000, "cannot switch to a session belonging to a different server group"
// *Cause:? An attempt was made to switch to a session in a different server
//????????? group.? This is not allowed.
// *Action: Make sure the server switches to a session that belongs to its
//????????? server group.
00038, 00000, "Cannot create session: server group belongs to another user"
// *Cause:? An attempt was made to create a non-migratable session in a server
//????????? group that is owned by a different user.
// *Action: A server group is owned by the first user who logs into a server
//????????? in the server group in non-migratable mode.? All subsequent
//????????? non-migratable mode logins must be made by the user who owns
//????????? the server group.? To have a different user login in non-migratable
//????????? mode, the ownership of the server group will have to be changed.
//????????? This can be done by logging off all current sessions and detaching
//????????? from all existing servers in the server group and then having the
//????????? new user login to become the new owner.
總結
以上是生活随笔為你收集整理的oracle错误号大全(查询ora错误号以及解决方法技巧)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: orakill和alter system
- 下一篇: oracle dbv使用详解