Fatal NI Connect Error 12170, 'TNS-12535: TNS:operation timed out' Reported in 11g Alert Log In this Document Symptoms Changes Cause Solution References APPLIES TO: Oracle Net Services - Version 11.1.0.6 to 12.1.0.2 [Release 11.1 to 12.1] Information in this document applies to any platform. TNS-12170, ORA-12170, TNS-12535, TNS-00505 alert.log SYMPTOMS nt secondary err code: 110 Monitoring of the 11g database Alert log(s) may show frequent timeout related messages such as: - On Oracle Solaris: *********************************************************************** Fatal NI connect error 12170. VERSION INFORMATION: TNS for Solaris: Version 11.2.0.1.0 - Production Oracle Bequeath NT Protocol Adapter for Solaris: Version 11.2.0.1.0 - Production TCP/IP NT Protocol Adapter for Solaris: Version 11.2.0.1.0 - Production Time: 22-JAN-2011 21:48:23 Tracing not turned on. Tns error struct: ns main err code: 12535 TNS-12535: TNS:operation timed out ns secondary err code: 12560 nt main err code: 505 TNS-00505: Operation timed out nt secondary err code: 145 nt OS err code: 0 Client address: (ADDRESS=(PROTOCOL=tcp)(HOST=10.xxx.yy.117)(PORT=1092)) --------- The "nt secondary err code" will be different based on the operating system. Linux x86 or Linux x86-64: "nt secondary err code: 110" HP-UX Server: "nt secondary err code: 238" AIX: "nt secondary err code: 78" CHANGES No changes are necessary, but may have recently upgraded the database to 11g release 1 or higher, or installed a new Oracle11g database. Note: Prior to 11gR1 these same 'Fatal NI connect error 12170' are written to the sqlnet.log CAUSE These time out related messages are mostly informational in nature. The messages indicate the specified client connection (identified by the 'Client address:' details) has experienced a time out. The 'nt secondary err code' identifies the underlying network transport, such as (TCP/IP) timeout limits after a client has abnormally terminated the database connection. The 'nt secondary err code' translates to underlying network transport timeouts for the following Operating Systems: For the Solaris system: nt secondary err code: 145: ETIMEDOUT 145 /* Connection timed out */ For the Linux operating system: nt secondary err code: 110 ETIMEDOUT 110 Connection timed out For the HP-UX system: nt secondary err code: 238: ETIMEDOUT 238 /* Connection timed out */ For AIX: nt secondary err code: 78: ETIMEDOUT 78 /* Connection timed out */ For Windows based platforms: nt secondary err code: 60 (which translates to Winsock Error: 10060) Description: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. The reason the messages are written to the alert log is related to the use of the new 11g Automatic Diagnostic Repository (ADR) feature being enabled by default. See (Doc ID 454927.1). SOLUTION Suggested Actions: - Search the corresponding text version of the listener log located on the database server for the corresponding client connection referenced by the Client address details referenced in the alert log message. For the message incident below you would search the listener log for the 'Client address' string: (ADDRESS=(PROTOCOL=tcp)(HOST=10.xxx.yy.117)(PORT=1092)) The search of the listener log should find the most recent connection before the time reference displayed in the alert log message, e.g. '22-JAN-2011 21:48:23'. -Corresponding listener log entry: 22-JAN-2011 21:20:12 * (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=AMN11264.us.oracle.com)(CID=(PROGRAM=D:\app\mcassady\product\11.2.0\dbhome_1\bin\sqlplus.exe)(HOST=mcassady-lap)(USER=mca ssady))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.xxx.yy.117)(PORT=1092)) * establish * AMN11264.us.oracle.com * 0 - Alert log entry: ------------ Fatal NI connect error 12170. VERSION INFORMATION: TNS for Solaris: Version 11.2.0.1.0 - Production Oracle Bequeath NT Protocol Adapter for Solaris: Version 11.2.0.1.0 - Production TCP/IP NT Protocol Adapter for Solaris: Version 11.2.0.1.0 - Production Time: 22-JAN-2011 21:48:23 Tracing not turned on. Tns error struct: ns main err code: 12535 TNS-12535: TNS:operation timed out ns secondary err code: 12560 nt main err code: 505 TNS-00505: Operation timed out nt secondary err code: 145 nt OS err code: 0 Client address: (ADDRESS=(PROTOCOL=tcp)(HOST=10.xxx.yy.117)(PORT=1092)) ------------ Note the time of the client corresponding client connection(s) in the listener log. Here you may find a particular client, set of clients or particular applications that are improperly disconnecting causing the timeout errors to be raised and recorder in the database alert log. See the following for more information and a potential solution where a firewall may be causing this issue: Note:1628949.1 Alert Log Errors: 12170 TNS-12535/TNS-00505: Operation Timed Out You may choose to revert from the new Automatic Diagnostic Repository (ADR) method to prevent the Oracle Net diagnostic details from being written to the alert log(s) by setting the following Oracle Net configuration parameters: To revert to Oracle Net Server tracing/logging, set following parameter in the server's sqlnet.ora : DIAG_ADR_ENABLED = OFF Also, to back out the ADR diag for the Listener component, set following parameter in the server's listener.ora: DIAG_ADR_ENABLED_<listenername> = OFF - Where the <listenername> would be replaced with the actual name of the configured listener(s) in the listener.ora configuration file. For example, if the listener name is 'LISTENER', the parameter would read: DIAG_ADR_ENABLED_LISTENER = OFF -Reload or restart the TNS Listener for the parameter change to take effect.
Showing posts with label Oracle Errors. Show all posts
Showing posts with label Oracle Errors. Show all posts
Friday, 22 February 2019
Fatal NI connect error 12170.
From Mos Doc ID 1286376.1
Tuesday, 15 March 2016
ORA-38760: This database instance failed to turn on flashback database
Cause
It is caused by the Flashback logs required are not available, as for example FLB logs was deleted using OS commands. It applied to standby databases as well as RAC. One of the RAC Instances or the single database instance does not come up, its looking for a Flash back log which has been accidently deleted.SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-38760: This database instance failed to turn on flashback database
Action
1. Turn off / on Flashback
SQL> alter database flashback off;If it's success, then you can open it.
SQL> alter database flashback on;
2. In cases where "Guaranteed Restore Point" is defined, RVWR will still try to write to flashback log even though you have disable it and it will fail again with same error
SQL> select flashback_on from v$database;
FLASHBACK_ON
------------------
RESTORE POINT ONLY
Step 1
SQL> select * from v$restore_point;
select * from v$restore_point
*
ERROR at line 1:
ORA-38701:
Here we are not able to query v$restore _point to find out the name.
Step 2
Search for restore point name in alert log. If you can find it, then use it.
Step 3
But, in our case, we could not find the name in alert log. So, We dump the controlfile to get the restore point name:
SQL> oradebug setmypid
SQL> alter session set events 'immediate trace name controlf level 9';
SQL> oradebug tracefile_name
'blabla .trc'
Open this 'blabla. trc' file and navigate to 'RESTORE POINT RECORDS'
***************************************************************************
RESTORE POINT RECORDS
***************************************************************************
(size = 212, compat size = 212, section max = 2048, section in-use = 1,
last-recid= 1, old-recno = 0, last-recno = 0)
(extent = 1, blkno = 240, numrecs = 2048)
RESTORE POINT #1:
restore point name: PRE_UPGRADE guarantee flag: 1 incarnation: 2next record
0 <<<< Name of restore point
restore point scn: 0x0000.fbff3d87 12/07/2015 14:56:23
Now we have name of Guaranteed Restore Point, After you find the restore point in Step 1, Step 2 or Step 3, use it to delete restore point and open database:
SQL> Drop restore point PRE_UPGRADE;
SQL> alter database open;
Wednesday, 22 April 2015
ORA-27102: out of memory O/S-Error: (OS 1455)
ORA-27102: out of memory
*Cause: Out of memory
*Action: Consult the trace file for details
Solution is simple :
*Cause: Out of memory
*Action: Consult the trace file for details
Solution is simple :
Increase the swap or decrease the memory parameters you gave.To decrease memory parameters, follow these steps :
SQL -> Connected to idle instance.
SQL-> create pfile from spfile;
(change parameter in pfile)
SQL-> create spfile from pfile;
SQL-> startup;
Wednesday, 1 April 2015
ORA-16857: standby disconnected from redo source for longer than specified threshold
- Solution ID
- ORA-16857
- Type
- Oracle
- Arguments
- standby disconnected from redo source for longer than specified threshold
Cause
The amount of time the standby was disconnected from the redo source database exceeded the value specified by the 'TransportDisconnectedThreshold' database property. It is caused by no network connectivity between the redo source and the standby databases.Action
Check for gaps on the standby database. If no gap is present, tune the apply services..My suggestion is that :
Try setting TransportDisconnectedThreshold higher than the default of 30.
DGMGRL> EDIT DATABASE testfo SET PROPERTY TransportDisconnectedThreshold='120';or if you want to disable alert :
DGMGRL> EDIT DATABASE testfo SET PROPERTY TransportDisconnectedThreshold='0';after this you may need to execute this command :
DGMGRL> enable database standbyDB;
Monday, 30 March 2015
ORA -00257 Archiver Error
ORA-00257: archiver error. Connect
internal only, until freed.
Cause: The archiver process received an error while trying to archive a redo log. If the problem is not resolved soon, the database will stop executing transactions. The most likely cause of this message is the destination device is out of space to store the redo log file.
Action: Check the archiver trace file for a detailed description of the problem. Also, verify that the device specified in the initialization parameter archive_log_dest is set up properly for archiving.
Cause: The archiver process received an error while trying to archive a redo log. If the problem is not resolved soon, the database will stop executing transactions. The most likely cause of this message is the destination device is out of space to store the redo log file.
Action: Check the archiver trace file for a detailed description of the problem. Also, verify that the device specified in the initialization parameter archive_log_dest is set up properly for archiving.
you may encounter with ORA-00257 while connecting to the database.
In this case you have probably suffered a resource problem in the flash recovery area (FRA) or db_recovery_file_dest_size or in the system.
Firstly, check if there is enough space in disk.
After then; control archive settings and check the system resources with these related settings :
SQL> archive log list;
SQL> show parameter db_recovery_file_dest;
SQL> SELECT * FROM V$RECOVERY_FILE_DEST;
After correcting system resources related with these settings you should switch log file:
SQL> alter system switch logfile;
and problem solves..
Thursday, 5 February 2015
ORA-00132: syntax error or unresolved network name "string"
Cause: Listener address has syntax error or cannot be resolved. |
Action: If a network name is specified, check that it corresponds to an entry in TNSNAMES.ORA or other address repository as configured for your system. Make sure that the entry is syntactically correct. |
I create pfile from spfile. The entry for LOCAL_LISTENER was modified to have network address something like *.local_listener='(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))' The spfile was created from this modified pfile. The database was then successfully mounted and opened.
ORA-12537: TNS: connection closed error
The ORA-12537 is an information message and means that the connection has been closed.
This can be caused by a number of reasons:
1. Database is shut down (maybe for nightly backup), but connection to database was kept by client.
2. A time-out occurred on the client-connection.
3. When firewall closes idle connections.
3. A configuration problem in sqlnet.ora or listener.ora.
4. You have a path name that is too long for the Oracle TNS client on windows.
This issue is due to the connection string being large enough that the connection packet is being split into two packets and then sent to the listener. There are several workarounds for the issue.
a. Install the exe in a shorter named directory.
b. Modify the TNS Names entry so that it is shorter.
c. Replace domain names with IP Addresses if that shortens and vice versa.
d. Remove any parameters from the entry that are not needed.
e. Patch the Database Listener to the most recent version.
5. Oracle security is enables (for example in Oracle Apps). Solution either:
a) Edit sqlnet.ora file and add your client-ip to tcp.invited_nodes.
b) Remove secutity by editing sqlnet.ora and comment out parameter tcp.validnode_checking = yes by adding # at the beginning of the line.
1. Database is shut down (maybe for nightly backup), but connection to database was kept by client.
2. A time-out occurred on the client-connection.
3. When firewall closes idle connections.
3. A configuration problem in sqlnet.ora or listener.ora.
4. You have a path name that is too long for the Oracle TNS client on windows.
This issue is due to the connection string being large enough that the connection packet is being split into two packets and then sent to the listener. There are several workarounds for the issue.
a. Install the exe in a shorter named directory.
b. Modify the TNS Names entry so that it is shorter.
c. Replace domain names with IP Addresses if that shortens and vice versa.
d. Remove any parameters from the entry that are not needed.
e. Patch the Database Listener to the most recent version.
5. Oracle security is enables (for example in Oracle Apps). Solution either:
a) Edit sqlnet.ora file and add your client-ip to tcp.invited_nodes.
b) Remove secutity by editing sqlnet.ora and comment out parameter tcp.validnode_checking = yes by adding # at the beginning of the line.
Friday, 23 January 2015
ORA-01950 No Privileges On Tablespace USERS
Data cannot be inserted if there is no quota on tablespace.
Solution 1:
SQL-> Alter user <user> quota unlimited on <tablespace_name>;Solution 2
SQL-> Alter user <user> quota 100M on <tablespace_name>;
Thursday, 4 December 2014
OGG-01223 TCP/IP error 10061 (No connection could be made beacause the target machine actively refused it)
OGG-01223 TCP/IP error 10061 (No connection could be made because the target machine actively refused it)
Solution is too simple :
Are you sure that target and source manager processes are started?
GGSCI-> info manager
GGSCI-> start manager
Labels:
Oracle Errors,
Oracle Golden Gate
ORA-65005: missing or invalid file name pattern for file ORA-01276: Cannot add file
This situation is valid for Oracle 12c Multitenant architecture, Pluggable databases and OMF. Please read the blog item in detail to understand the cause.
We prepared a template database :
SQL> select file_name from dba_data_files;
FILE_NAME
+DATA/PDBTemplate/system.273.829388755
+DATA/PDBTemplate/sysaux.272.829388715
+DATA/PDBTemplate/users.268.829388341
+DATA/PDBTemplate/apex_space.271.829388439
+DATA/PDBTemplate/edge_010_data.266.829388045
So we wanted to allow the developers to clone the database to test changes. But we encountered a problem :
SQL> create pluggable database Developer from PDBTemplate file_name_convert = (Developer, PDBTemplate);
create pluggable database
*
ERROR at line 1:
ORA-01276: Cannot add file +DATA/PDBTemplate/system.273.829388755.
File has an Oracle Managed Files file name. Therefore it looks like the OMF file naming causes us some problems. We corrected the problem with this :
SQL> create pluggable database Developer from PDBTemplate file_name_convert =
(
・DATA/PDBTemplate/system.273.829388755',・DATA/Developer/system01.dbf・
・DATA/PDBTemplate/users.268.829388341',・DATA/Developer/users01.dbf・
・DATA/PDBTemplate/sysaux.272.829388715',・DATA/Developer/sysaux01.dbf・
・DATA/PDBTemplate/edge_010_data.266.829388045',・DATA/Developer/edge_01.dbf・
・DATA/PDBTemplate/apex_space.271.829388439',・DATA/Developer/apex_space01.dbf・
); 2 3 4 5 6 7 8
create pluggable database olakits from ola file_name_convert =
*
ERROR at line 1:
ORA-65005: missing or invalid file name pattern for file -
/u00/oracle/oradata/PCDB/OLA/temp01.dbf
But It seems that I have forgotten to add temp file
SQL> create pluggable database olakits from ola file_name_convert =
(
・DATA/PDBTemplate/system.273.829388755',・DATA/Developer/system01.dbf・
・DATA/PDBTemplate/users.268.829388341',・DATA/Developer/users01.dbf・
・DATA/PDBTemplate/sysaux.272.829388715',・DATA/Developer/sysaux01.dbf・
・DATA/PDBTemplate/edge_010_data.266.829388045',・DATA/Developer/edge_01.dbf・
・u00/oracle/oradata/PDBTemplate/temp01.dbf・ ・DATA/Developer/temp01.dbf・
);
Pluggable database created.
It seems everything is OK
Labels:
Oracle Errors,
Oracle Golden Gate
OGG-01950 No Privileges on tablespace ...
OGG-01950 No Privileges on tablespace tablespace_xxx.
In our case :
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.
In our case :
alter user aliyagmur quota unlimited on tablespace_xxx;
Labels:
Oracle Errors,
Oracle Golden Gate
OGG 02022 Logmining server does not exist on this Oracle database.
While Replicating Oracle 12c Pluggable Databases with GoldenGate, you may encounter with this error : OGG-02022 Logmining server does not exist on this Oracle database. This shows that extract needs to be registered for each PDB that the extract will work against. Using GGSCI use the dblogin command to login
dblogin userid ggs_admin, password oracleand then run
register extract ext_esk database container (dev1, dev2)
Labels:
Oracle Errors,
Oracle Golden Gate
Wednesday, 1 October 2014
DGM-17016: failed to retrieve status for database ORA-16664: unable to receive the result from a database
ORA-16664:
unable to receive the result from a database
Cause: During execution of a
command, a database in the Data Guard broker configuration failed to return a
result.
Action: Check Data Guard broker logs
for the details of the failure. Fix any possible network problems and try the
command again.
DGM-17016: failed to retrieve status for database
Opening standby database in read only mode causes to error affecting data guard broker configuration. You should open database in "mount" state. If operating system is Windows, then you should edit registry editor for that database is not automatically started.
In Registry editor:
After this, you should start database in mount state. I give an example script for that:
Opening standby database in read only mode causes to error affecting data guard broker configuration. You should open database in "mount" state. If operating system is Windows, then you should edit registry editor for that database is not automatically started.
In Registry editor:
ORA_DBUNIQUENAME_AUTOSTART should be false in "HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_ORACLEHOMENAME".
After this, you should start database in mount state. I give an example script for that:
@ECHO off
set dbuser=sys
set dbpass=oracle
set dbtns=orcl
set primaryDB=PRIMARY
set physicalSB=PHYSICAL STANDBY
set telaysServiceName=telays
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb11g_home1" /v "ORA_%dbtns%_AUTOSTART" /t REG_SZ /d "FALSE" /f
set oracle_sid=%dbtns%
lsnrctl start listener
rem waits 10 seconds
ping 199.987.4.4 -n 1 -w 10000 > nul
net start oracleservice%dbtns%
rem waits 1 second
ping 199.987.4.4 -n 1 -w 1000 > nul
echo startup mount;> c:\startmount.sql
echo exit; >> c:\startmount.sql
sqlplus -s "%dbuser%/%dbpass%@%dbtns%" as sysdba @c:\startmount.sql
echo set pagesize 0; > c:\temp.sql
echo spool c:\temp.txt; >> c:\temp.sql
echo select database_role from v$database; >> c:\temp.sql
echo spool off; >> c:\temp.sql
echo exit; >> c:\temp.sql
sqlplus -s "%dbuser%/%dbpass%@%dbtns%" as sysdba @c:\temp.sql
FOR /F "tokens=* delims=" %%a IN (c:\temp.txt) do set src=%%a
setlocal enabledelayedexpansion
for /f "tokens=* delims= " %%a in ("%src%") do set src=%%a
for /l %%a in (1,1,100) do if "!src:~-1!"==" " set src=!src:~0,-1!
echo."%src%"
if "%src%" == "%primaryDB%" (
rem start the database
echo alter database open;> c:\start.sql
echo exit; >> c:\start.sql
sqlplus -s "%dbuser%/%dbpass%@%dbtns%" as sysdba @c:\start.sql
rem start application server
net start %telaysServiceName%
eventcreate /ID 1 /L APPLICATION /T INFORMATION /SO "TELAYS WINDOWS ACILISI" /D "Veritabani ve application server veritabani rolune gore acildi"
) else if "%src%" == "%physicalSB%" (
rem start replication
echo alter database recover managed standby database disconnect from session; >> c:\start.sql
echo exit; >> c:\start.sql
sqlplus -s "%dbuser%/%dbpass%@%dbtns%" as sysdba @c:\start.sql
eventcreate /ID 1 /L APPLICATION /T INFORMATION /SO "TELAYS WINDOWS ACILISI" /D "Veritabani veritabani rolune gore acildi"
) else (
eventcreate /ID 1 /L APPLICATION /T ERROR /SO "TELAYS WINDOWS ACILISI" /D "Veritabani rolu yanlis"
)
del c:\temp.txt
del c:\temp.sql
del c:\start.sql
del c:\startmount.sql
endlocal & exit
Labels:
Dataguard,
Oracle Errors
Recovering undo tablespace from corrupted undo Datafile
alter system set undo_management=manual scope=spfile;
shu immediate;
startup mount;
alter database datafile 'C:\APP\ADMINISTRATOR\ORADATA\TSTCLONE\UNDOTBS01.DBF' offline drop;
alter databae open;
drop tablespace undotbs1;
create undo tablespace undotbs2 datafile 'C:\app\Administrator\oradata\ANKARA\UNDOTBS01.DBF' size 100M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE 2000M;
alter system set undo_management=auto scope=spfile;
alter system set undo_retention = 900 scope = both;
shu immediate;
startup;
Labels:
Dataguard,
Oracle Errors
ORA-00280: change string for thread string is in sequence #string
ORA-00280:
change string for thread string is in sequence #string
Cause: This message helps to locate
the redo log file with the specified change number requested by other messages.
Action: Use the information provided
in this message to specify the required archived redo log files for other
errors.
Çözüm :
SQL> startup mount
SQL> RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL;
SQL> RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL;
CANCEL
SQL> ALTER DATABASE open resetlogs
Labels:
Dataguard,
Oracle Errors
ORA-16532: Data Guard broker configuration does not exist
Cause: A broker operation was
requested that required a broker configuration to already be created.
Action: Create a Data Guard broker
configuration prior to performing other broker operations.
Dataguard broker yaratırken standby database'de oluşan hatadır. Çözümü oldukça basit :
SQL> show parameter dg_
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
dg_broker_config_file1 string
dg_broker_config_file2 string
dg_broker_start boolean TRUE
SQL> alter system set dg_broker_start=false;
System altered.
SQL> alter system set dg_broker_config_file1='C:\app\oracle\product\11.2.0\dbhome_1\database\DRESK01.dat';
System altered.
SQL> alter system set dg_broker_config_file2='C:\app\oracle\product\11.2.0\dbhome_1\database\DRESK02.dat';
System altered.
SQL> alter system set dg_broker_start=true;
System altered.
Bundan sonra DGMGRL komut satırından tekrar konfigürasyon enable edilir.
DGMGRL-> enable configuration;
Labels:
Dataguard,
Oracle Errors
ORA-16829 fast-start failover configuration is lagging
Cause: The fast-start failover
target standby database was not within the lag limit specified by the
FastStartFailoverLagLimit configuration property. As a result, a fast-start
failover could not happen in the event of a primary database failure.
Action: Ensure that the fast-start
failover target standby database is running and applying redo data and that the
primary database is successfully trasmitting redo data. If this condition
persists consider raising the value of the FastStartFailoverLagLimit
configuration property.
Lag Limit ile ilgili bir sorun olduğunu göstermekte, yapılacak işlem, diğer hususlarda bir sorun görümüyorsa, LagLimiti biraz artırmak olacaktır :
DGMGRL -> edit configuration set property FastStartFailoverLagLimit =45;
Labels:
Dataguard,
Oracle Errors
Subscribe to:
Posts (Atom)