Oracle数据库版本为11.2.0.1,操作系统CentOS release 5.9,详细的报错信息如下:ORA-03137: TTC 协议内部错误: [12333]
【1】问题背景:Oracle数据库版本为11.2.0.1,操作系统CentOS release 5.9,详细的报错信息如下:
Dump file /data/oracle/diag/rdbms/db01/db01/incident/incdir_70215/db01_ora_17588_i70215.trc
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /data/oracle/oracle11
System name: Linux
Node name: db01
Release: 2.6.18-348.el5
Version: #1 SMP Tue Jan 8 17:53:53 EST 2013
Machine: x86_64
Instance name: db01
Redo thread mounted by this instance: 1
Oracle process number: 52
Unix process pid: 17588, image: oracle@db01
*** 2014-06-20 22:33:42.577
*** SESSION ID:(204.33501) 2014-06-20 22:33:42.577
*** CLIENT ID:() 2014-06-20 22:33:42.577
*** SERVICE NAME:(SYS$USERS) 2014-06-20 22:33:42.577
*** MODULE NAME:() 2014-06-20 22:33:42.577
*** ACTION NAME:() 2014-06-20 22:33:42.577
Dump continued from file: /data/oracle/diag/rdbms/db01/db01/trace/db01_ora_17588.trc
ORA-03137: TTC 协议内部错误: [12333] [32] [49] [50] [] [] [] []
========= Dump for incident 70215 (ORA 3137 [12333]) ========
*** 2014-06-20 22:33:42.600
dbkedDefDump(): Starting incident default dumps (flags=0x2, level=3, mask=0x0)
----- Current SQL Statement for this session (sql_id=6v8rd0sq5a8m3) -----
select count(t.fd_id) as COUNT from sys_notify_todo_done_info t inner join
(select distinct(sysnotifyt1_.fd_subject) FD_SUBJECT,max(sysnotifyt0_.fd_id) as FD_ID
,sysnotifyt1_.fd_app_name,sysnotifyt1_.fd_type,sysnotifyt1_.fd_create_time
from sys_notify_todo_done_info sysnotifyt0_ inner join sys_notify_todo sysnotifyt1_
on sysnotifyt0_.fd_todoid=sysnotifyt1_.fd_id
where (sysnotifyt0_.fd_elementid = :1)
group by sysnotifyt1_.fd_subject,sysnotifyt1_.fd_app_name,sysnotifyt1_.fd_type,sysnotifyt1_.fd_create_time) f on t.fd_id = f.fd_id
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
*** 2014-06-20 22:33:42.834
skdstdst()+36 call kgdsdst() 000000000 ? 000000000 ?
7FFF5BCF02B8 ? 000000001 ?
7FFF5BCF47B8 ? 000000000 ?
ksedst1()+98 call skdstdst() 000000000 ? 000000000 ?
7FFF5BCF02B8 ? 000000001 ?
000000000 ? 000000000 ?
ksedst()+34 call ksedst1() 000000000 ? 000000001 ?
7FFF5BCF02B8 ? 000000001 ?
【2】问题的解决方法
Metalink上面居然没有发现症状一样的问题,关于ORA-03137的错误,问题有很多,常见的问题有JDBC、绑定变量窥视、ORACLE的BUG等,Metalink也提供了一系列的排查方法,具体如下:
2.1 绑定变量的窥视
解决方法:SQL> alter system set "_optim_peek_user_binds"=false;
弊端:关闭绑定变量的窥视,会导致当SQL语句使用绑定变量的时候,产生的执行计划可能会出现不准,在生产环境中要长期关闭该特性需要认真测试;
2.2 更新数据库最新的PSU,当通过禁用绑定变量后数据库不再报错,可以应用每个数据库最新的PSU。或者当禁用绑定变量的时候也继续报错,也可以考虑应用PSU进行测试;
以下是相关的PSU信息:
PSU 11.1.0.7.8 Patch 12419384 includes Patch:9703463.
For 11.1.0.7, Patch 9243912 can be applied on top of 11.1.0.7.8 ( no conflict).
Patch:9703463 can also be applied individually but requires PSU 11.1.0.7.6
Patch:8625762 may also be applicable to databases version 11.1.0.7
2.3 更新数据库到11.2.0.3这个版本
在ORACLE 11.2.0.3这个版本中可以解决所有的ORA-3137的错误;
2.4 联系ORACLE SUPPORT解决这个问题 经过以上操作,你都踩到这个地雷了,说明楼主平时烧香少,,需要联系ORALCE的大神么出手;
【3】总结:经过验证发现运行alter system set "_optim_peek_user_binds"=false后报错就消失了;

InnoDBBufferPool reduces disk I/O by caching data and indexing pages, improving database performance. Its working principle includes: 1. Data reading: Read data from BufferPool; 2. Data writing: After modifying the data, write to BufferPool and refresh it to disk regularly; 3. Cache management: Use the LRU algorithm to manage cache pages; 4. Reading mechanism: Load adjacent data pages in advance. By sizing the BufferPool and using multiple instances, database performance can be optimized.

Compared with other programming languages, MySQL is mainly used to store and manage data, while other languages such as Python, Java, and C are used for logical processing and application development. MySQL is known for its high performance, scalability and cross-platform support, suitable for data management needs, while other languages have advantages in their respective fields such as data analytics, enterprise applications, and system programming.

MySQL is worth learning because it is a powerful open source database management system suitable for data storage, management and analysis. 1) MySQL is a relational database that uses SQL to operate data and is suitable for structured data management. 2) The SQL language is the key to interacting with MySQL and supports CRUD operations. 3) The working principle of MySQL includes client/server architecture, storage engine and query optimizer. 4) Basic usage includes creating databases and tables, and advanced usage involves joining tables using JOIN. 5) Common errors include syntax errors and permission issues, and debugging skills include checking syntax and using EXPLAIN commands. 6) Performance optimization involves the use of indexes, optimization of SQL statements and regular maintenance of databases.

MySQL is suitable for beginners to learn database skills. 1. Install MySQL server and client tools. 2. Understand basic SQL queries, such as SELECT. 3. Master data operations: create tables, insert, update, and delete data. 4. Learn advanced skills: subquery and window functions. 5. Debugging and optimization: Check syntax, use indexes, avoid SELECT*, and use LIMIT.

MySQL efficiently manages structured data through table structure and SQL query, and implements inter-table relationships through foreign keys. 1. Define the data format and type when creating a table. 2. Use foreign keys to establish relationships between tables. 3. Improve performance through indexing and query optimization. 4. Regularly backup and monitor databases to ensure data security and performance optimization.

MySQL is an open source relational database management system that is widely used in Web development. Its key features include: 1. Supports multiple storage engines, such as InnoDB and MyISAM, suitable for different scenarios; 2. Provides master-slave replication functions to facilitate load balancing and data backup; 3. Improve query efficiency through query optimization and index use.

SQL is used to interact with MySQL database to realize data addition, deletion, modification, inspection and database design. 1) SQL performs data operations through SELECT, INSERT, UPDATE, DELETE statements; 2) Use CREATE, ALTER, DROP statements for database design and management; 3) Complex queries and data analysis are implemented through SQL to improve business decision-making efficiency.

The basic operations of MySQL include creating databases, tables, and using SQL to perform CRUD operations on data. 1. Create a database: CREATEDATABASEmy_first_db; 2. Create a table: CREATETABLEbooks(idINTAUTO_INCREMENTPRIMARYKEY, titleVARCHAR(100)NOTNULL, authorVARCHAR(100)NOTNULL, published_yearINT); 3. Insert data: INSERTINTObooks(title, author, published_year)VA


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Linux new version
SublimeText3 Linux latest version

SublimeText3 Mac version
God-level code editing software (SublimeText3)

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function