Lokeshaggarwal's DBA

Live the life you love. Love the life you live

ORA-15033 disk belongs to diskgroup


Recently, we have faced one issue while adding disk into the diskgroup.

We have one diskgroup viz. CRS created with “NORMAL” redundancy. Someone in the UNIX team replaced the disk without running “ALTER DISKGROUP” Command.

So, while adding diskgroup, we got the below error:

alter diskgroup CRS add
FAILGROUP CRS01_0000 disk ‘/dev/rhdiskpower98’ rebalance power 11;SQL>   2
alter diskgroup CRS add
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15033: disk ‘/dev/rhdiskpower98’ belongs to diskgroup “CRS”

As the “Alter DiskGroup DATA DROP DISK” command has not been run so, we need to add disk with Force option.

SQL> alter diskgroup CRS add
FAILGROUP CRS01_0000 disk ‘/dev/rhdiskpower98’ force rebalance power 11;

Diskgroup altered.

SQL> SELECT
NVL(a.name, ‘[CANDIDATE]’)      disk_group_name
, b.path                          disk_file_path
, b.name                          disk_file_name
, b.failgroup                     disk_file_fail_group
FROM
v$asm_diskgroup a RIGHT OUTER JOIN v$asm_disk b USING (group_number) where b.path=’/dev/rhdiskpower98′
ORDER BY
a.name;

DISK_GROUP_NAME                          DISK_FILE_PATH                           DISK_FILE_NAME                 DISK_FILE_FAIL_GROUP
—————————————- —————————————- —————————— ——————————
CRS                                    /dev/rhdiskpower98                       CRS01_0000                     CRS01_0000

So, problem can be resolved by using the FORCE clause while adding disk.

February 26, 2016 Posted by | ASM, Uncategorized | Leave a comment

Testing the Media Management API


sbttest can be used to perform a quick test of the media manager.

If sbttest returns 0, then the test ran without error, which means that the media manager is correctly installed and can accept a data stream and return the same data when requested. If sbttest returns a nonzero value, then either the media manager is not installed or it is not configured correctly.

 

Command to run sbttest is :

sbttest test.out -trace sbttest.trace

O/P of the command:

The sbt function pointers are loaded from libobk.a(shr.o) library.
— sbtinit succeeded
— sbtinit (2nd time) succeeded
sbtinit: Media manager supports SBT API version 2.0
sbtinit: Media manager is version 5.0.0.0
sbtinit: vendor description string=Veritas NetBackup for Oracle – Release 6.5 (2010042404)
sbtinit: allocated sbt context area of 8 bytes
sbtinit: proxy copy is supported
— sbtinit2 succeeded
— regular_backup_restore starts …………………………..

 

In case, if it fails then we will get the below error like :

The sbt function pointers are loaded from libobk.so library.
— sbtinit succeeded
— sbtinit (2nd time) succeeded
sbtinit: Media manager supports SBT API version 2.0
sbtinit: Media manager is version 1.1.0.0
sbtinit: vendor description string=Symantec/BackupExec/1.1.0
sbtinit: allocated sbt context area of 8 bytes
MMAPI error from sbtinit2: 7501, BEError(0xe0001005) Backup Exec encountered an unexpected error.

— sbtinit2 failed
you have mail in /var/spool/mail/oracle

 

 

 

December 11, 2015 Posted by | Backup and Recovery, Uncategorized | Leave a comment

opmn failed to start a managed process after the maximum retry limit


$ opmnctl  startall

opmnctl: starting opmn and all managed processes...
================================================================================
opmn id=test:6201
    5 of 6 processes started.

ias-instance id=EnterpriseManager0.Test
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
--------------------------------------------------------------------------------
ias-component/process-type/process-set:
    OC4J/OC4J_EM/default_island

Error
--> Process (pid=6900)
    failed to start a managed process after the maximum retry limit
    Log:
    /opt/oracle/product/oms10g/opmn/logs/OC4J~OC4J_EM~default_island~1

If “opmnctl startall” fails use “ias-component” and “process-type” to start individual components

$ opmnctl startproc ias-component=OC4J

opmnctl: starting opmn managed processes...
================================================================================
opmn id=Test:6201
    0 of 1 processes started.

ias-instance id=EnterpriseManager0.Test
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ias-component/process-type/process-set:
    OC4J/OC4J_EM/default_island

Error
--> Process (pid=20563)
    failed to start a managed process after the maximum retry limit
    Log:
    /opt/oracle/product/oms10g/opmn/logs/OC4J~OC4J_EM~default_island~1

$ opmnctl status

Processes in Instance: EnterpriseManager0.Test
-------------------+--------------------+---------+---------
ias-component      | process-type       |     pid | status
-------------------+--------------------+---------+---------
DSA                | DSA                |     N/A | Down
LogLoader          | logloaderd         |     N/A | Down
HTTP_Server        | HTTP_Server        |    4750 | Alive
dcm-daemon         | dcm-daemon         |     N/A | Down
OC4J               | home               |    4752 | Alive
OC4J               | OC4J_EMPROV        |    4751 | Alive
OC4J               | OC4J_EM            |     N/A | Down
WebCache           | WebCache           |    4754 | Alive
WebCache           | WebCacheAdmin      |    4755 | Alive

To Start and stop individual ias components use :  opmnctl startproc ias-component=OC4J

To Start and stop individual processes use :  opmnctl startproc process-type=OC4J_EMPROV

In this case both options “ias-component” and “process-type”  failed to start OMS. We were not inclined to restart database but there were rogue processes and at the end we had to restart database to get OMS working.
$ /opt/oracle/product/oms10g/opmn/bin/opmnctl status
Processes in Instance: EnterpriseManager0.o2hp127
-------------------+--------------------+---------+---------
ias-component      | process-type       |     pid | status
-------------------+--------------------+---------+---------
DSA                | DSA                |     N/A | Down
LogLoader          | logloaderd         |     N/A | Down
HTTP_Server        | HTTP_Server        |   27225 | Alive
dcm-daemon         | dcm-daemon         |     N/A | Down
OC4J               | home               |   27230 | Alive
OC4J               | OC4J_EMPROV        |   27226 | Alive
OC4J               | OC4J_EM            |   27227 | Alive
WebCache           | WebCache           |   27228 | Alive
WebCache           | WebCacheAdmin      |   27229 | Alive

June 22, 2012 Posted by | Uncategorized | 1 Comment

error while loading shared libraries: libdb.so.2: cannot open shared object file: No such file or directory


While installing Grid Conrol 10.2.0.1 tyou might encountered an error “error while loading shared libraries: libdb.so.2

Solution:

ln -s   /usr/lib/libgdbm.so.2.0.0  /usr/lib/libdb.so.2

June 22, 2012 Posted by | Uncategorized | Leave a comment

How to configure Oracle Enterprise Manager


-bash-3.2$ emca -deconfig dbcontrol db -repos drop;

STARTED EMCA at Jun 9, 2010 11:47:51 PM
EM Configuration Assistant, Version 10.2.0.1.0 Production
Copyright (c) 2003, 2005, Oracle.  All rights reserved.

Enter the following information:
Database SID: dbtest
Listener port number: 1521
Password for SYS user:
Password for SYSMAN user:

Do you wish to continue? [yes(Y)/no(N)]: Yes
Jun 9, 2010 11:48:28 PM oracle.sysman.emcp.EMConfig perform
INFO: This operation is being logged at /u01/app/oracle/product/10.1.0/db_1/cfgtoollogs/emca/dbtest/emca_2010-06-09_11-47-50-PM.log.
Jun 9, 2010 11:48:31 PM oracle.sysman.emcp.util.DBControlUtil stopOMS
INFO: Stopping Database Control (this may take a while) …
Jun 9, 2010 11:48:48 PM oracle.sysman.emcp.EMReposConfig dropRepository
INFO: Dropping the EM repository (this may take a while) …
Jun 9, 2010 11:55:17 PM oracle.sysman.emcp.EMReposConfig invoke
INFO: Repository successfully dropped
Enterprise Manager configuration completed successfully
FINISHED EMCA at Jun 9, 2010 11:55:20 PM
-bash-3.2$ emca -deconfig dbcontrol db -repos create;

STARTED EMCA at Jun 9, 2010 11:55:46 PM
EM Configuration Assistant, Version 10.2.0.1.0 Production
Copyright (c) 2003, 2005, Oracle.  All rights reserved.

Incorrect usage.  Run ’emca -help’ for more details.
-bash-3.2$ emca -deconfig dbcontrol db -repos create

STARTED EMCA at Jun 9, 2010 11:55:53 PM
EM Configuration Assistant, Version 10.2.0.1.0 Production
Copyright (c) 2003, 2005, Oracle.  All rights reserved.

Incorrect usage.  Run ’emca -help’ for more details.
-bash-3.2$ emca -config dbcontrol db -repos create

STARTED EMCA at Jun 9, 2010 11:56:02 PM
EM Configuration Assistant, Version 10.2.0.1.0 Production
Copyright (c) 2003, 2005, Oracle.  All rights reserved.

Enter the following information:
Database SID: dbtest
Listener port number: 1521
Password for SYS user:
Password for DBSNMP user:
Password for SYSMAN user:
Email address for notifications (optional):
Outgoing Mail (SMTP) server for notifications (optional):
ASM ORACLE_HOME [ /u01/app/oracle/product/10.1.0/db_1 ]:
ASM SID [ +ASM ]:
ASM port [ 1521 ]:
ASM user role [ SYSDBA ]:
ASM username [ SYS ]:
ASM user password:
—————————————————————–

You have specified the following settings

Database ORACLE_HOME ……………. /u01/app/oracle/product/10.1.0/db_1

Database hostname ……………. localhost.localdomain
Listener port number ……………. 1521
Database SID ……………. dbtest
Email address for notifications ……………
Outgoing Mail (SMTP) server for notifications ……………
ASM ORACLE_HOME ……………. /u01/app/oracle/product/10.1.0/db_1
ASM SID ……………. +ASM
ASM port ……………. 1521
ASM user role ……………. SYSDBA
ASM username ……………. SYS

—————————————————————–
Do you wish to continue? [yes(Y)/no(N)]: Y
Jun 9, 2010 11:58:37 PM oracle.sysman.emcp.EMConfig perform
INFO: This operation is being logged at /u01/app/oracle/product/10.1.0/db_1/cfgtoollogs/emca/dbtest/emca_2010-06-09_11-56-02-PM.log.
Jun 9, 2010 11:58:42 PM oracle.sysman.emcp.EMReposConfig createRepository
INFO: Creating the EM repository (this may take a while) …
Jun 10, 2010 12:06:15 AM oracle.sysman.emcp.EMReposConfig invoke
INFO: Repository successfully created
Jun 10, 2010 12:07:02 AM oracle.sysman.emcp.util.DBControlUtil startOMS
INFO: Starting Database Control (this may take a while) …
Jun 10, 2010 12:09:41 AM oracle.sysman.emcp.EMDBPostConfig performConfiguration
INFO: Database Control started successfully
Jun 10, 2010 12:10:02 AM oracle.sysman.emcp.EMDBPostConfig performConfiguration
INFO: >>>>>>>>>>> The Database Control URL is http://localhost.localdomain:5500/em <<<<<<<<<<<
Enterprise Manager configuration completed successfully
FINISHED EMCA at Jun 10, 2010 12:10:04 AM

June 10, 2010 Posted by | Uncategorized | Leave a comment

./vipca Error 0(Native: listNetInterfaces:[3])


Error at the time of invoking vipca:
root@rac4 bin]# ./vipca Error 0(Native: listNetInterfaces:[3])
  [Error 0(Native: listNetInterfaces:[3])]

Solution:

[root@rac4 bin]# ./oifcfg setif -global eth0/192.168.1.0:public
[root@rac4 bin]# ./oifcfg setif -global eth1/10.0.0.0:cluster_interconnect
[root@rac4 bin]# ./oifcfg getif
 eth0 192.168.1.0 global public
 eth1 10.0.0.0 global cluster_interconnect

[root@rac4 bin]# ./oifcfg iflist
eth0  10.0.0.0
eth1  192.168.1.0

February 19, 2010 Posted by | Uncategorized | 3 Comments

Error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory


At the time of installation of Oracle Clusterware,users may face some error while executing root.sh script:

[root@rac3 ~]# cd /arch/app/oracle/product/10.2.0/crs_1/install
[root@rac3 install]# ./rootdelete.sh
/arch/app/oracle/product/10.2.0/crs_1/jdk/jre/bin/java: error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory
/arch/app/oracle/product/10.2.0/crs_1/jdk/jre/bin/java: error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory
1
[root@rac3 install]# cd ../bin
[root@rac3 bin]# cp vipca vipca1

 edit vipca (in the CRS bin directory on all nodes) to undo the setting of LD_ASSUME_KERNEL. After the IF statement around line 120 add an unset command to ensure LD_ASSUME_KERNEL is not set as follows:

if [ "$arch" = "i686" -o "$arch" = "ia64" -o "$arch" = "x86_64" ]
then
  LD_ASSUME_KERNEL=2.4.19
  export LD_ASSUME_KERNEL
fi

[root@rac3 bin]# vi vipca
[root@rac3 bin]# cp srvctl srvctl1
[root@rac3 bin]# vi srvctl

unset LD_ASSUME_KERNEL  

Similarly for srvctl (in both the CRS and, when installed, RDBMS and ASM bin directories on all nodes), unset LD_ASSUME_KERNEL by adding one line, around line 168 should look like this:

LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL

unset LD_ASSUME_KERNEL   

Remember to re-edit these files on all nodes:
<CRS_HOME>/bin/vipca
<CRS_HOME>/bin/srvctl
<RDBMS_HOME>/bin/srvctl
<ASM_HOME>/bin/srvctl

[root@rac3 bin]# cd ../install
[root@rac3 install]# ./rootdelete.sh
CRS-0210: Could not find resource ‘ora.rac3.LISTENER_RAC3.lsnr’.
CRS-0210: Could not find resource ‘ora.rac3.ons’.
CRS-0210: Could not find resource ‘ora.rac3.vip’.
CRS-0210: Could not find resource ‘ora.rac3.gsd’.
Shutting down Oracle Cluster Ready Services (CRS):
Stopping resources.
Successfully stopped CRS resources
Stopping CSSD.
Shutting down CSS daemon.
Shutdown request successfully issued.
Shutdown has begun. The daemons should exit soon.
Checking to see if Oracle CRS stack is down…
Oracle CRS stack is not running.
Oracle CRS stack is down now.
Removing script for Oracle Cluster Ready services
Updating ocr file for downgrade
Cleaning up SCR settings in ‘/etc/oracle/scls_scr’
[root@rac3 install]# ./rootdelete.sh  local
./rootdelete.sh: line 348: /etc/init.d/init.crs: No such file or directory
Checking to see if Oracle CRS stack is down…
Oracle CRS stack is not running.
Oracle CRS stack is down now.
Removing script for Oracle Cluster Ready services
/bin/rm: cannot remove `/etc/init.d/init.crs’: No such file or directory
/bin/rm: cannot remove `/etc/init.d/init.crsd’: No such file or directory
/bin/rm: cannot remove `/etc/init.d/init.cssd’: No such file or directory
/bin/rm: cannot remove `/etc/init.d/init.evmd’: No such file or directory
Updating ocr file for downgrade
Cleaning up SCR settings in ‘/etc/oracle/scls_scr’
[root@rac3 install]# ./rootdeinstall.sh

Removing contents from OCR device
2560+0 records in
2560+0 records out
10485760 bytes (10 MB) copied, 0.0824622 seconds, 127 MB/s
[root@rac3 install]# cd ../
[root@rac3 crs_1]# ./root.sh
WARNING: directory ‘/arch/app/oracle/product/10.2.0’ is not owned by root
WARNING: directory ‘/arch/app/oracle/product’ is not owned by root
WARNING: directory ‘/arch/app/oracle’ is not owned by root
WARNING: directory ‘/arch/app’ is not owned by root
WARNING: directory ‘/arch’ is not owned by root
Checking to see if Oracle CRS stack is already configured

Setting the permissions on OCR backup directory
Setting up NS directories
Oracle Cluster Registry configuration upgraded successfully
WARNING: directory ‘/arch/app/oracle/product/10.2.0’ is not owned by root
WARNING: directory ‘/arch/app/oracle/product’ is not owned by root
WARNING: directory ‘/arch/app/oracle’ is not owned by root
WARNING: directory ‘/arch/app’ is not owned by root
WARNING: directory ‘/arch’ is not owned by root
assigning default hostname rac3 for node 1.
assigning default hostname rac4 for node 2.
Successfully accumulated necessary OCR keys.
Using ports: CSS=49895 CRS=49896 EVMC=49898 and EVMR=49897.
node <nodenumber>: <nodename> <private interconnect name> <hostname>
node 1: rac3 rac3-priv rac3
node 2: rac4 rac4-priv rac4
Creating OCR keys for user ‘root’, privgrp ‘root’..
Operation successful.
Now formatting voting device: /ocfs/clusterware/votingdisk
Format of 1 voting devices complete.
Startup will be queued to init within 90 seconds.
Adding daemons to inittab
Expecting the CRS daemons to be up within 600 seconds.
CSS is active on these nodes.
        rac3
CSS is inactive on these nodes.
        rac4
Local node checking complete.
Run root.sh on remaining nodes to start CRS daemons.
[root@rac3 crs_1]#

February 19, 2010 Posted by | Uncategorized | Leave a comment

Recover the dropped table in Oracle


SQL> select count(*) from t
  2  /
 
  COUNT(*)
———-
         0
 
SQL> begin
  2    for i in 1..200
  3    loop
  4     insert into t values (i);
  5    end loop;
  6  end;
  7  .
SQL> /
 
PL/SQL procedure successfully completed.
 
SQL> commit
  2  /
 
Commit complete.
 
SQL> select count(*) from t
  2  /
 
  COUNT(*)
———-
        200
 
SQL> select to_char(sysdate,’DD-MM-YYYY HH24:MI:SS’)
  2    from dual
  3  /
 
TO_CHAR(SYSDATE,’DD
——————-
16-11-2009 1:19:20
 

we are having 200 reocords in the table
SQL> delete from t where a between 1 and 100
  2  /
 
100 rows deleted.
I deleted 100 out 0f 200

SQL> commit
  2  /
 
Commit complete.

SQL> select count(*) from t
  2  /
 
  COUNT(*)
———-
        100
 
RMAN> run
2> {
3> shutdown immediate;
4> startup mount;
5> set until time “to_date(’16-11-2009 1:19:20′,’DD-MM-YYYY HH24:MI:SS’)”;
6> restore database;
7> recover database;
8> }

database dismounted
Oracle instance shut down
 
connected to target database (not started)
Oracle instance started
database mounted
 
Total System Global Area     171966464 bytes
 
Fixed Size                      787988 bytes
Variable Size                145488364 bytes
Database Buffers              25165824 bytes
Redo Buffers                    524288 bytes
 
executing command: SET until clause
Starting restore at 16-NOV-09
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=160 devtype=DISK
channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to D:\ORACLE\PRODUCT\10.1.0\ORADATA\PROD\SYSTEM01.DBF
restoring datafile 00002 to D:\ORACLE\PRODUCT\10.1.0\ORADATA\PROD\UNDOTBS01.DB
restoring datafile 00003 to D:\ORACLE\PRODUCT\10.1.0\ORADATA\PROD\SYSAUX01.DBF
restoring datafile 00004 to D:\ORACLE\PRODUCT\10.1.0\ORADATA\PROD\USERS01.DBF
channel ORA_DISK_1: restored backup piece 1
piece handle=E:\ORACLE\PRODUCT\10.1.0\FLASH_RECOVERY_AREA\PROD\BACKUPSET\2009_
_16\O1_MF_NNNDF_TAG20091116T155846_42LX37BF_.BKP tag=TAG20091116T155846
channel ORA_DISK_1: restore complete
Finished restore at 16-NOV-09
Starting recover at 16-NOV-09
using channel ORA_DISK_1
 
starting media recovery
media recovery complete
 
Finished recover at 16-NOV-09

RMAN> alter database open resetlogs
2> ;
 
database opened
 
SQL> conn sys/sys as sysdba
Connected.
SQL> desc t
 Name                                      Null?    Type
 —————————————– ——– —————————
 A                                                  NUMBER
 
SQL> select count(*)
  2    from t
  3  /
 
  COUNT(*)
———-
        200
 
SQL>

 

 

 

 

 

November 16, 2009 Posted by | Uncategorized | 1 Comment

ORA-03113: end-of-file on communication channel


Problem:Users are not able to login into the application,they are getting a message i.e End of file communication channel.

In the sqlnet.log file, the errors could be:

Tracing to file: D:\oracle\ora90\network\ADMIN\TRACE\NEWTRACE.TXT
Tns error struct:
ns main err code: 12560
TNS-12560: TNS:proto adapter error
ns secondary err code: 0
nt main err code: 530
TNS-00530: Protocol adapter error
nt secondary err code: 126
nt OS err code: 0

Solution:

Try to trace the client and the server connection using:

Place these parameters in the sqlnet.ora file on the client node.

TRACE_LEVEL_CLIENT=16
TRACE_FILE_CLIENT=CLIENT
TRACE_DIRECTORY_CLIENT=full path to directory where you want the trace file created.
TRACE_TIMESTAMP_CLIENT=on
TRACE_UNIQUE_CLIENT=on

Place These parameters in the sqlnet.ora file on the server node.

TRACE_LEVEL_SERVER=16
TRACE_FILE_SERVER=SERVER
TRACE_DIRECTORY_SERVER=full path to directory where you want the trace file created.
TRACE_TIMESTAMP_SERVER=on

Data Collected at client side

From client trace new trace.txt

19-JUN-2008 13:48:13:566 ntt2err: entry
19-JUN-2008 13:48:13:566 ntt2err: soc 264 error – operation=5, ntresnt[0]=530, ntresnt[1]=53, ntresnt[2]=0
19-JUN-2008 13:48:13:566 ntt2err: exit
19-JUN-2008 13:48:13:566 nttrd: exit
19-JUN-2008 13:48:13:566 nsprecv: transport read error
19-JUN-2008 13:48:13:566 nsprecv: error exit
19-JUN-2008 13:48:13:566 nserror: entry
19-JUN-2008 13:48:13:566 nserror: nsres: id=0, op=68, ns=12570, ns2=12560; nt[0]=530, nt[1]=53, nt[2]=0; ora[0]=
0, ora[1]=0, ora[2]=0
19-JUN-2008 13:48:13:566 nsrdr: error exit
19-JUN-2008 13:48:13:566 nsdo: nsctxrnk=0
19-JUN-2008 13:48:13:566 nsdo: error exit
19-JUN-2008 13:48:13:566 nioqrc: recv: packet reader error -> translated to IFCR_EOF
19-JUN-2008 13:48:13:566 nioqrs: entry
19-JUN-2008 13:48:13:566 nioqrs: state = interrupted (1)
19-JUN-2008 13:48:13:566 nioqsm: entry
19-JUN-2008 13:48:13:566 nioqsm: Sending break packet (1)…
19-JUN-2008 13:48:13:566 nttwr: entry
19-JUN-2008 13:48:13:566 ntt2err: entry
19-JUN-2008 13:48:13:566 ntt2err: soc 264 error – operation=6, ntresnt[0]=530, ntresnt[1]=53, ntresnt[2]=0
19-JUN-2008 13:48:13:566 ntt2err: exit
19-JUN-2008 13:48:13:566 nttwr: exit
19-JUN-2008 13:48:13:566 nserror: entry
19-JUN-2008 13:48:13:566 nserror: nsres: id=5060, op=152, ns=12571, ns2=12560; nt[0]=0, nt[1]=0, nt[2]=0; ora[0]=0, ora[1]=0, ora[2]=0
19-JUN-2008 13:48:13:566 nioqsm: send-break: failed to send break…
19-JUN-2008 13:48:13:566 nioqper: error from send-marker
19-JUN-2008 13:48:13:566 nioqper: nr err code: 0
19-JUN-2008 13:48:13:566 nioqper: ns main err code: 12570
19-JUN-2008 13:48:13:566 nioqper: ns (2) err code: 12560
19-JUN-2008 13:48:13:566 nioqper: nt main err code: 530
19-JUN-2008 13:48:13:566 nioqper: nt (2) err code: 53
19-JUN-2008 13:48:13:566 nioqper: nt OS err code: 0
19-JUN-2008 13:48:13:566 nioqsm: exit
19-JUN-2008 13:48:13:566 nioqer: entry
19-JUN-2008 13:48:13:566 nioqer: incoming err = 12152
19-JUN-2008 13:48:13:566 nioqce: entry
19-JUN-2008 13:48:13:566 nioqce: exit
19-JUN-2008 13:48:13:566 nioqer: returning err = 3113
19-JUN-2008 13:48:13:566 nioqer: exit
19-JUN-2008 13:48:13:566 nioqrs: nioqrs: Couldn’t send break. returning 3113
19-JUN-2008 13:48:13:566 nioqrs: exit

As you can see the main error in the client trace file i.e nsprecv: transport read error, so it means there is some problem in the network which cause the connection to terminate.

Action Plan;

For Windows NT

The underlying reasons of these errors are a synchronization error in the TCP/IP layer on NT. To help prevent this kind of errors, a few things can be adjusted to help the synchronization:

A#. TCP.NODELAY parameter
Try adding the below parameter in the client sqlnet.ora :

tcp.nodelay = yes

In most cases, TCP/IP info send across the network is buffered till at least a complete network packet can be send. This means that in certain cases commands are not issued directly, and kept buffered until some other info can be send as well.This has the potential to generate timeouts and errors.To avoid this, this delay can be switched off.

tcp.nodelay = yes

B#. Disabling AUTOMATIC_IPC on Clients

On client PC’s, checking for IPC connections is pointless as there is never a database installed on them. So, in order to save some time during the connections phase, set AUTOMATIC_IPC=OFF in the “SQLNET.ORA” file.

C#. Add the following to the Server and Client sqlnet.ora file

Disable_OOB = ON

D#.Increase TcpMaxDataRetransmissions parameter in the Windows Registry

On Windows NT/2000:

HKEY_LOCAL_MACHINE
SYSTEM
CurrentControlSet
Services
Tcpip
Parameters

add a key “TcpMaxDataRetransmissions” (REG_DWORD) and set its value to 10.
On the Edit menu, click Add Value, and then add the following:
Value Name: TcpMaxDataRetransmissions
Value Type: REG_DWORD – Number
Valid Range: 0 – 0xFFFFFFFF
Default Value: 5 Decimal
New Value: 10 to Decimal

The value may vary as it is dynamically adjusted.

E#:

If you not using NTS authetication for client-server then comment out the SQLNET.AUTHENTICATION_SERVICES parameter in the client side sqlnet.ora.

F#:

Check whether the listener service and database service are started as same domain user / local account as applicable.
If this is a MS AD environment, then try starting with Domain account.

G#:

Check whether there is any firewall between the client and server. if so, check whether the all the ports are reachable for the client. for eg.for the uploaded client trace port used is 1521.

C:\> telnet <server hostname/ ip > 1521

if this fails then the firewall /network device is blocking the connection and hence contact your network / firewall administrator to take necessary actions.

September 8, 2009 Posted by | Uncategorized | Leave a comment