ORA-03113: End of file for communication channel

Source: Internet
Author: User
Tags metalink

When I run a stored procedure, the following prompt appears:
ORA-03113: End of file for communication channel

What does this mean?
---------------------------------------------------------------

Most of this is caused by network problems. It is not an oracle error. Check the network conditions and system core parameter settings.
---------------------------------------------------------------

"End of communication channel" is a very broad error. It is only the front-end process of the Oracle client (svrmgrl, sqlplus,
RMAN, Oracle Forms etc.) lost connection with the background process.
There are many causes of errors. When Oracle developers mentioned this term, they thought it was a network fault, but it was reported that any problem that caused crash in the background process was the cause of this error.

This information may appear together with other error messages. If the corrupted background process is the key process of Oracle (pmon, SMON, dbwr etc.), you will get the "Oracle unavailable" error message. You can view your logs or any trace files to diagnose problems.

The following is a summary of the causes of the error:
(1) invalid value for processes parameter in init. ora when starting Database
Of course, to solve this problem, adjust the parameter values to values within the valid range.
(2) setuid bit needs setting on the oracle executable (unix only ).
The oracle executable in the $ ORACLE_HOME/bin directory shocould have the permissions:
-Rwsr-Sr-x 1 Oracle DBA
(3) shared_pool_size too small.
You can set it to more than MB.
(4) timed_statistics = true.
You can set it to false.
(5) An insert into a table which grew into an additional extent allocated in a datafile which was over 2 GB in size.
This occurs only when your operating system file cannot exceed 2 GB. In addition, if an error occurs, the database is finished.
(6) Create Table as select... where there was an invalid procedure or function called from a trigger defined on the table we were selecting from.
That is to compile all your processes, functions, and packages.
(7) make use of Oracle Support/Metalink
Ask for Oracle technical support!

However, the above suggestions did not solve the problem, and then I searched

ORA-03113 and ORA-03114 on desktop platforms

What does ORA-03113 "end-of-file on communication channel" really mean?

ORA-03113 is the most common catchall error. It basically means that
Communications were lost for an unexpected reason. It is usually followed
ORA-03114 "not connected to Oracle ".

1. As it turns out, the most common reason is that the Oracle shadow Process
On the server died unexpectedly. So, if a running process were
Suddenly encounter an ORA-03113 and/or 3114, the first place to check is
The alert. log on the server to see if any other Oracle errors occurred.

2. next most common cause of ORA-03113 is that the SQL * Net driver was not
Linked into the oracle executable on Unix. While the listener
Successfully encrypted ed the connection and passed it to the Oracle shadow
Process, the shadow process wowould fail to respond in any way because it
Wocould not know how to. So the client will see an ORA-03113 at connect
Time.

3. Third most common cause is a machine crash or network failure at
Server side.

4. One less common cause has been observed is when there are two servers
The same node names on the same network.

5. ORA-03113 has also been noticed where the Token Ring card has
Shared RAM size set to 8kb rather than 16kb. If you are using a token
Ring card check the shared buffer size and try increasing it.

6. The ORA-03113 also occurs when init. ora parameters context_area and
Context_incr are set to a value of 4096. Increasing the value to 8192
Resolves the 3113. (rdvms V6 only)

7. ORA-03113 also occurs when there are duplicate IP addresses on
Network. To find the duplicate addresses turn off the unit that is getting
The 03113 and ping its IP address. If the ping responds then you have
Find the offending unit.

8. If an ORA-03113 error occurs intermittentlly on comparatively large select
Statements through SQL * dBA for OS/2 or when Ming a query through
SQL * dBA, try to setting the default buffer size to 4096, especially if
Issuing an order by causes no problems but going through Q & E or sqr hangs
The machine.

9. If using FTP v2.11 and running a large SQL * Plus script with over 38
Variables of mostly character data types, check the LAN drivers. The dxmc
Driver loads addressing for Token Ring adapter has an option to save
Memory (through ibm lan suppport program ).

R parameter (r: CED)
T parameter (T: Tiny)

You must specify the R and t parameter for the dxmc drive.

It all comes down to the fact that the client went out to read some
Information from the server and suddenly found out the connection was no
Longer there.

ORA-03113 is just a symptom of a larger problem that will require more
Diagnosis to track down. Hopefully, the above information will lead you
In the right ction to find the solution.

To debug an ORA-03113, it is a good idea to attempt the same operation
While doing a loopback, I. e can any tool on the server Connect using
Same connect string as they specify from the Desktop client? If the same
Problem occurs doing a loopback, then you know the problem resides on
Server side and not on the Desktop client side.

To perform a loopback invoke sqlplus or sqldba from the server, and at
Sqlplus or sqldba prompt on the server type:

Connect username/password @ T: <servername>/<portnum >:< Sid>

For example, if you are getting an ORA-03113 issuing a certain query from
SQL * Plus on DOS while connected via SQL * Net TCP/IP to a Unix server, try
A loopback by invoking SQL * Plus on the unix machine and use the same
"T: <servername >:< Sid>" connect string and then issue the same select
Statement.

10. This error is sometimes received ed intermittently with applications written
With Gupta sqlwindows. Apparently, the problem is due to some Buffer
Being used by the Gupta product. This buffer is used to fetch data
Returned by a query on the client side. The default value for a parameter
Called fetch row (in sqlwindows) is 20. Lowering this to something like
15 seems to work fine.
For SQL statement problems, follow up with SQL _trace.

Sometimes you need to relink oracle.
When you use CP to copy and install the program on UNIX, the environment variable and the execution program are often connected. LD_LIBRARY_PATH may cause problems if it is set incorrectly. In this case, you need to relink oracle. If the executable file oralcle is damaged, relink it. If the parallel server option is installed and the distributed lock manager is not installed or runs properly, errors may occur.

  • Client Communication cannot be properly handled

1. SQL * Net drive problems:

If you are using a drive with a lower version, replace the drive with the new version. An error occurs when the SQL * Net driver is not connected to the Oracle executable file.

2. Check whether the TCP/IP network is smooth;
3. Common network problems on Windows:

If this problem occurs when creating a database on Windows, consider using the following methods:

First, check the local network settings. check whether there are nodes with the same name or conflicting IP addresses on the network. If the problem persists, use the following method conservatively:

1) Disable NIC: Change the local connection status to disabled;
2) Open the sqlnet. ora file (in Notepad form), and comment out the CNT Verification:

#SQLNET.AUTHENTICATION_SERVICES= (NTS) 

3). Create a database;
4) after the creation is successful, the local connection is restored;

  • Database server crash/operating system crash/process exception kill

During the connection process, if the Oracle database server crashes or the operating system where the database is located crashes, this error occurs. The cause of the Oracle server crash may be that the main background process is dead, the kill operation is performed incorrectly. It is easier to solve this problem. In addition, memory leakage (or virus) in OS-related applications may also cause Oracle background program problems. Recommended troubleshooting steps:

  • 1. Check whether the application software processes are running normally;
  • 2. Check for Memory leakage;
  • 3. virus detection and removal;
  • 4. Check whether the system administrator has misoperations;
  • 5. Determine No hacker intrusion;
  • 6. other uncertainties ......
  • Oracle internal error/bug

If you find errors such as ora-600/ora-07445 found in alert. log in the background_dump_dest directory, you can view the specific information and solutions on the Metalink site. Install software patches.

  • Errors Caused by specific SQL, PL/SQL

Try to execute the SQL statement separately, or use SQL _trace to trace the SQL statement that causes the problem. Under sqlplus:

ALTER SESSION SET sql_trace=TRUE;

Invalid characters and unreasonable processing results in SQL statements, and even some uninterpretable causes occasional problems.
SQL example:

SELECT *   FROM (SELECT ROWNUM AS num, k.*           FROM (SELECT    a.cp_code, c.cp_cha_name, a.service_code,                          a.service_name, a.content_name,                          SUBSTR (a.access_time, 1, 8) thedate,                          COUNT (*) AS hit_count                     FROM sm_wap_log_daily_tab a, t_cp_info c                    WHERE (SUBSTR (a.access_time, 1, 8) BETWEEN '20040301'                                                            AND '20040304'                          )                      AND c.cp_code LIKE '%%'                      AND a.cp_code = c.cp_code                      AND a.service_code LIKE '%%'                 GROUP BY a.cp_code,                          c.cp_cha_name,                          a.service_code,                          a.service_name,                          a.content_name,                          SUBSTR (a.access_time, 1, 8)                 ORDER BY a.cp_code,                          a.service_code,                          a.content_name,                          SUBSTR (a.access_time, 1, 8) DESC) k) n;

The above statement always produces a 9204 error on the 03113/Linux system. The statement is refined and divided into smaller sub-statements for gradual execution. Finally, the problem occurs in

                  ORDER BY a.cp_code,                          a.service_code,                          a.content_name,                          SUBSTR (a.access_time, 1, 8) DESC) k) n;       

Substr (A. access_time, 1, 8) here. Remove substr (A. access_time, 1, 8. Try to adjust the position of substr (A. access_time, 1, 8) and the statement is passed. Then, optimize the statement. :)

SELECT *   FROM (SELECT ROWNUM AS num, k.*           FROM (SELECT    a.cp_code, c.cp_cha_name, a.service_code,                          a.service_name, a.content_name,                          SUBSTR (a.access_time, 1, 8) thedate,                          COUNT (*) AS hit_count                     FROM sm_wap_log_daily_tab a, t_cp_info c                    WHERE (SUBSTR (a.access_time, 1, 8) BETWEEN '20040301'                                                            AND '20040304'                          )                      AND c.cp_code LIKE '%%'                      AND c.cp_code = a.cp_code                      AND a.service_code LIKE '%%'                 GROUP BY a.cp_code,                          c.cp_cha_name,                          a.service_code,                          a.service_name,                          a.content_name,                          SUBSTR (a.access_time, 1, 8)                 ORDER BY (SUBSTR (a.access_time, 1, 8)),                          a.cp_code,                          a.service_code,                          a.content_name DESC) k) n;
  • Insufficient system space

Make sure that the database system has sufficient space at any time. this problem occurs if user_dump_dest and background_dump_dest have no space left. in addition, if audit is enabled, the Audit Directory should have enough space. if trace is activated, the trace Directory should have enough space. dave Wotton's local copy statement indicates that when inserting data into a table, if the file exceeds 2 GB (and the file system has 2 GB limit), this problem will occur.

  • Firewall Problems

If the data needs to pass through the firewall, contact the system administrator to check whether the database data is filtered or the communication port is suddenly disabled. If a personal firewall is installed locally, check the local settings.

  • Other aspects

There are many reasons for this error. The above columns are only typical cases. It may be helpful to go to some database technology forums. For example, itpub (http://www.itpub.net), cnoug (http://www.cnoug.org) and so on.

 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.