I Google[d] for this error ORA-12560: TNS:protocol adaptor error but not able to find the actual reason and how to solve this error ?
Can anyone tell me a perfect solution to solve login problem.
asked Aug 1, 2011 at 5:39
Vishwanath DalviVishwanath Dalvi
35.2k41 gold badges122 silver badges154 bronze badges
- Go to the windows machine that hosts the Oracle database server
-
Go to Start -> Run -> Services.msc in Windows.
Locate OracleService < SID > (hereOracleServiceORCL
) and click onStart
to start the oracle database service (if not already running)
-
Once it is up and running, from the command prompt run the following:
tnsping < tnsalias >
(tnsalias entry you can find it in
tnsnames.ora
file)
answered Aug 1, 2011 at 21:06
BharathiBharathi
1,5832 gold badges10 silver badges13 bronze badges
6
Seems like database is not up. It might be due to restarting machine and the instance is not set to autostart and it so not started munually after starting from services Screen.
Just goto Command prompt
-
Set Oracle SID
C:>set oracle_sid=ORCL -
Now run Net start command.
C:>net start oracleserviceORCL
answered Dec 6, 2012 at 6:32
Yasir AhmedYasir Ahmed
2993 silver badges2 bronze badges
2
from command console, if you get this error you can avoid it by typing
c:> sqlplus /nolog
then you can connect
SQL> conn user/pass @host:port/service
maruf
5893 gold badges6 silver badges22 bronze badges
answered Feb 26, 2016 at 17:27
demiandemian
6027 silver badges14 bronze badges
Add to the enviroment vars the following varibale and value to identify the place of the tnsnames.ora file:
TNS_ADMIN
C:oracleproduct10.2.0client_1networkadmin
answered May 14, 2013 at 14:33
1
In my case (for OracleExpress) the service was running, but I got this issue when trying to access the database via sqlplus without connection identifier:
sqlplus sys/mypassword as sysdba
To make it work I needed to add the connection identifier (XE for Oracle Express), so following command worked ok:
sqlplus sys/mypassword@XE as sysdba
If you still get ORA-12560, make sure you can ping the XE service. Use:
tnsping XE
And you should get OK message along with full connection string (tnsping command is located in oracle’s installation dir: [oracle express installation dir]apporacleproduct11.2.0serverbin). If you can not ping make sure your tnsnames.ora
file is reachable for sqlplus. You might need to set TNS_ADMIN environment variable pointing to your ADMIN directory, where the file is located, for example:
TNS_ADMIN=[oracle express installation dir]apporacleproduct11.2.0servernetworkADMIN
answered Mar 14, 2017 at 14:09
walkeroswalkeros
4,6784 gold badges34 silver badges46 bronze badges
After searching alot got a simple way to solve it.
Just follow the steps.
- Check status of your listener.
- open command prompt and type
lsnrctl status
- You will get no listener.
- open command prompt and type
-
Now open
listener.ora
file which is present in following directory:C:oraclexeapporacleproduct11.2.0servernetworkADMIN
- Open that file and change the host parameter with you computer name
-
You can get your computer name by right click on
My Computer
and check you computer name, and replace host parameter with your computer name as follows:LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = Electron-PC)(PORT = 1521)
)
)
)So here you can observe
HOST = Electron-PC
, which is my computer name. -
Save the listener.ora file and again return to cammand propt
3.Type the following in command prompt
lsnrctl start
This will start the OracleTNSListner
.
you can check it in the service by opening services tab of Task Manager. if not started automatically you can start it.
Just this much and you are ready to work again on oracle.
Best of Luck.
Ori Lentz
3,6586 gold badges22 silver badges28 bronze badges
answered Jan 19, 2016 at 6:56
MrinmoyMrinmoy
1,3702 gold badges18 silver badges28 bronze badges
1
Quite often this means that the listener hasn’t started. Check the Services panel.
On Windows (as you are) another common cause is that the ORACLE_SID is not defined in the registry. Either edit the registry or set the ORACLE_SID in a CMD box. (Because you want to run sqlplusw.exe I suggest you edit the registry.)
answered Aug 1, 2011 at 10:15
APCAPC
143k19 gold badges168 silver badges281 bronze badges
I have solved the problem the easy way. My oracle was running just fine in the past. After I installed MS SQL Server was when I noticed this problem. I just uninstalled MS SQL Server on my machine then the problem was gone. Make sure you restart your computer after that. Now I can connect to Oracle database through SQLPlus again. My guess is that there’s some conflict between the two. Hope this helps.
answered Aug 22, 2013 at 5:19
Another possible solution that just worked for me…considering I was using my local login as the dba permissions.
Follow the steps to get to Services. Right click on the instance and go to ‘Log On’? (might not be the name but it’s one of the tabs containing permissions). Change the settings to use LOCAL.
answered Jul 15, 2016 at 14:01
0
If none the above work, then try this :
Modify the LISTENER.ora
(mine is found in : oracleproduct11.2.0dbhome_1NETWORKADMINlistener.ora
) ==> add a custom listener that points to your database(SID), example my SID is XZ0301, so :
## Base XZ03001
SID_LIST_LISTENER_XZ03001=(SID_LIST=(SID_DESC=(ORACLE_HOME =
E:oracleproduct11.2.0dbhome_1)(SID_NAME= XZ03001)))
LISTENER_XZ03001=(DESCRIPTION_LIST=(ADDRESS=(PROTOCOL =
TCP)(HOST=MyComputerName)(PORT= 1521)))
DIAG_ADR_ENABLED_LISTENER_XZ03001=ON
ADR_BASE_LISTENER_XZ03001=E:oracle
Restart your machine
For Windows 7, use the following to modify the LISTENER.ora:
— Go to Start > All Programs > Accessories
— Right click Notepad and then click Run as Administrator .
— File>open and navigate to the tnsnames.ora file.
— Make the changes then it should allow you to save
answered Sep 22, 2013 at 16:20
It really has worked on my machine. But instead of OracleServiceORCL I found OracleServiceXE.
answered Oct 6, 2013 at 7:03
Flow the flowing steps :
-
Edit your listener.ora and tnsnames.ora file in
$Oracle_homeproduct11.2.0client_1NETWORKADMIN locationa. add listener.ora file
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) )
)
ADR_BASE_LISTENER = C: [here c is oralce home directory]
b. add in tnsnames.ora file
SCHEMADEV =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = dabase_ip)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = SCHEMADEV)
)
)
- Open command prompt and type
sqlplus username/passowrd@oracle_connection_alias
Example :
username : your_database_username
password : Your_database_password
oracle_connection_alias : SCHEMADEV for above example.
answered May 22, 2017 at 9:02
Just to add up, follow the screenshot and choose local account to start if not selected. Then start the service.
answered Jul 31, 2020 at 6:12
VaibsVaibs
2,00822 silver badges29 bronze badges
You need to tell SQLPlus which database you want to log on to. Host String needs to be either a connection string or an alias configured in your TNSNames.ora file.
answered Aug 1, 2011 at 5:46
Andrew CooperAndrew Cooper
32.1k5 gold badges80 silver badges116 bronze badges
ORA-12560: TNS:erro de adaptador de protocolo
- set Environment Variables: ORACLE_BASE, ORACLE_HOME, ORACLE_SID
- make sure your user is part of ORACLE_GROUP_NAME (Windows)
- make sure the file ORACLE_HOME/network/admin/sqlnet.ora is:
SQLNET.AUTHENTICATION_SERVICES = (NTS) - (Windows) Be carefull when you add a new Oracle client: adding a new path to the PATH env. variable can mess things up. The first entry in this variable makes a difference: certify that the sqlplus executable in the ORACLE_HOME (ORACLE_HOME/bin) comes first in the PATH env. variable.
answered Sep 25, 2017 at 17:24
I try 2 option:
- You change service OracleService in Service Tab -> Running
- Login with cmd command: sqlplus user_name/pass_word@orcl12C
Note: orcle12c -> name of OracleService name run in you laptop
answered Oct 19, 2020 at 6:58
Below fixes can be applied to resolve TNS 12560
error
- Get Latest patch for
SQL*NET
client software - Set
$ORACLE_HOME
and$PATH
variable (should be accessible for System user) - Check permissions on PC client
- Check
$TNS_ADMIN
variable - Check if network has firewall or antivirus issues
- Check if windows services Run >> Services.msc has OracleXE or OracleORCL service running
Check below link in case of net tracing error:
http://dba-oracle.com/t_sql_net_tracing.htm
C. Peck
3,6213 gold badges18 silver badges36 bronze badges
answered May 24, 2021 at 17:41
In my case, (ORA-12560: TNS protocol adapter error)Issue cause of database connection issue like database, user name and password.
Once you got the issue. Initially you have to check connection details, after check the oracle service and further more.
I missed some connection details, So only i got TNS protocol adapter error,
I will changed the connection details, It would be working fine.
answered Feb 13, 2017 at 12:27
muthukumarmuthukumar
1481 silver badge10 bronze badges
As we all know that Oracle is free and open business management software that is available for both personal and commercial use. Oracle database uses object-relational database management system that allows to process credit card payments, support and manages customer orders, handles customers, etc.
This networking software does the task of exchange of data between machines using underlying services to establish communication between the components. Establishment of communication happens due to some set of services, these services are known as Transparent Network Substrate (TNS). However, sometimes due to some uncertain reasons, when this service is taken into action, throws an error stated as ‘ORA-12560 TNS Protocol Adapter Error’
So, here, in this blog today, I will let you know how to fix ora-12560 tns protocol adapter error in easy ways. But before that, let us have a brief look at the Oracle TNS which throws an error.
About Oracle Transparent Network Substrate (TNS)
Transparent Network Substrate is a service that handles communication with oracle components with its database codes and pre-programmed schema. The acronym TNS occurs in various instances, when you get an error. TNS uses various protocols, which could be TCP/IP, DECNET, SPX/IPX, AppleTalk etc.
All these combination of TNS and the hidden protocols used to help in networking makes the connection establish between components. The Oracle Transparent Network Substrate (TNS) facilitates simple inter-database communication and has an built-in management layer over the standard network topology. But sometimes there may occur some communication error while connecting to the database. And one of the errors is ORA-12560 TNS Protocol Adapter Error which happens whenever there is a problem in accessing a specific server of the database.
ORA-12560 TNS Protocol Adapter Error takes place due to several reasons, but the most common is the server problem. This problem arises when a user does not specify which database or server was being accessed or there may be incorrect password provided to the database. Instead of giving exact reasons for the connection error, Oracle simply prompts ORA-12560 TNS Protocol Adapter Error. In short, if you want to troubleshoot this error, then you have to ensure the following:
- Listener is up and pointing to the desired database service
- Database service is up
- Oracle variables are configured in a correct manner which includes ORACLE_BASE, ORACLE_HOME, ORACLE_SID, PATH, TNS_ADMIN
- Cross check the firewall and the network configurations
- Full access is applicable to ORACLE_HOME including its sub-directories
Ways To Fix ORA-12560 TNS Protocol Adapter Error
Here are the best ways you can try to fix ORA-12560 TNS Protocol Adapter Error. Try them one by one and see which fix works in your case. Let’s get started with the first solutions…..
Fix #1: Set Correct ORACLE_SID
If you are running on a server that is running the database (i.e. database is local to machine) then it is important to first make sure that you have set a correct ORACLE_SID. If it is set correctly then it is good and if not then you have to try the below steps:
First of all, go to the command prompt and then run the below command:
- Set Oracle Database SID as
Set oracle_sid=ORCL
- Next, run Net Start command
Net start oracleserviceORCL
Fix #2: Check The Service Name ‘Oracleservice<SID>’ Ties Up With The Actual Database SID
Another method you can try to fix ora-12560 tns protocol adapter error is to check the service name ties up with the actual database SID. If, in any case, database SID changes without recreating service then this can lead this error. In this case, you have to recreate this service by following this step:
oradimxx -delete -sid <old-sid>
oradimxx -new -sid <SID> –intpwd <internal-password> AUTO –pfile <full-init-ora-filename>
Fix #3: Restart The Oracle Service
If the above method doesn’t work, maybe the OracleService for the database is not running. Check for the service, if it is not running then starts the service. If it is running then restart the service. To do so, you have to follow the below steps:
- First of all, you have to go to Start option.
- Next, you have to type Run and open it.
- Now, on the dialogue box, you have to type services.msc and then hit Enter.
- After this, you have to navigate to find OracleServicesORCL and then select the service and simply click on Start to initiate oracle database server if it’s not already running.
- After it has been done and running, from the command prompt run the following:
Tnsping<tnsalias> (tnsalias entry you can find it in tnsnames.ora file)
Fix #4: Try Oracle File Repair Tool To Fix ORA 12560: TNS: protocol adapter Error
If the above guides are out of your mind and you are perplexed what to do and wonder now how to fix ORA 12560 TNS protocol adapter error then don’t worry. For your rescue, there is a tool named Oracle File Repair Tool which will help you out. This tool doesn’t require any technical knowledge to use the steps.
Steps To Fix ORA 12560 TNS Protocol Adapter Using Tool
Step 1: Run Oracle File Repair Tool and you would see options to select or search corrupt Oracle databases in your computer.
Step:2 Click on Scan File to start the scan process after selecting the oracle database. On the left-side pane, recoverable objects get listed.
Step 3: Click an object to see its preview.
Step 4: : Click Start Repair in the icon bar to start the repair process. A prompt message occurs which will guide you further. Click next and continue.
Step 5: Provide user name, password and path of the blank database where you want to save the repaired database objects.
Step 6: Repairing and restoring various database objects after establishing a connection with blank oracle database.
This way you could fix ORA 12560: TNS protocol adapter error. Hope it helps.
Final Verdict
While using Oracle database if you ever come across and error stated as ‘ora-12560 tns protocol adapter error’ then you have come to the right place. I am saying so because I have already mentioned here the best fixes you can try to fix ora-12560 tns protocol adapter error.
All these fixes are easy to apply and the best part is that you do not need any technical knowledge to perform these fixes. All you have to do is to just follow the step by step guide to resolve ora-12560 tns protocol adapter error.
Jacob Martin is a technology enthusiast having experience of more than 4 years with great interest in database administration. He is expertise in related subjects like SQL database, Access, Oracle & others. Jacob has Master of Science (M.S) degree from the University of Dallas. He loves to write and provide solutions to people on database repair. Apart from this, he also loves to visit different countries in free time.
In this post, I’ll talk about several error patterns of ORA-12560 on Windows platform.
- Database service is stop (SYSDBA)
- Listener service is stop (Normal Users)
- Incorrect ORACLE_SID
- Reach limitation of PROCESSES
- Database 10g, 11gR1 Creation
Database Service is Stop (SYSDBA)
When we tried to connect to the database via SYSDBA, we got ORA-12560.
C:UsersAdministrator>sqlplus / as sysdba
...
ERROR:
ORA-12560: TNS:protocol adapter error
Enter user-name:
This is because the database service is stopped by someone or something, you need to start or restart to get the service working. This is the most common problem of ORA-12560.
Datapatch
If you saw the error in datapatch (i.e. SQL patching) after issuing datapatch -verbose like this:
C:UsersAdministrator>datapatch -verbose
...
Connecting to database...
Error: prereq checks failed!
Database connect failed with: ORA-12560: TNS:protocol adapter error (DBD ERROR: OCIServerAttach)
...
Then you know what to do it to solve it.
Listener Service is Stop (Normal Users)
For those who are not SYSDBA, they need to connect to the database through the listener. If the listener service is stop, they have no way to connect to the database, even though the database is running.
So the solution is clear, just startup the listener service.
Incorrect ORACLE_SID
First of all, allow me reproduce the error ORA-12560 for you.
Check the instance name and current status.
C:UsersAdministrator>sqlplus / as sysdba
SQL*Plus: Release 12.2.0.1.0 Production on Thu Oct 24 20:31:22 2019
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL> select instance_name, status from v$instance;
INSTANCE_NAME STATUS
---------------- ------------
erpapp OPEN
SQL> exit
Disconnected from Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64
bit Production
As you can see, I connect the database with OS authentication without problem.
Now I set a non-existing ORACLE_SID.
C:UsersAdministrator>set ORACLE_SID=ERPAPP2
C:UsersAdministrator>echo %ORACLE_SID%
ERPAPP2
Then connect again.
C:UsersAdministrator>sqlplus / as sysdba
SQL*Plus: Release 12.2.0.1.0 Production on Thu Oct 24 20:32:36 2019
Copyright (c) 1982, 2016, Oracle. All rights reserved.
ERROR:
ORA-12560: TNS:protocol adapter error
Enter user-name: ^C
Oh, I got ORA-12560. The response to an unrecognized ORACLE_SID is very different in Windows from Linux. In Linux, it still connect for you, but show «Connected to an idle instance».
In such situation, you’d better to check ORACLE_SID in software registry editor.
C:UsersAdministrator>regedit
Windows Regedit — Oracle Software — Check «ORACLE_SID»
In this case, we should set the correct ORACLE_SID in registry or set it temporarily for your working environment like this:
C:UsersAdministrator>set ORACLE_SID=ERPAPP
C:UsersAdministrator>echo %ORACLE_SID%
ERPAPP
Reach Limitation of PROCESSES
Found repeated Oracle TNS error messages in listener log during peak-hours on Windows Server 2008.
...
19-Oct-2010 05:32:10 * (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ORCL11)(CID=(PROGRAM=C:ap001client.exe)(HOST=WIN3451)(USER=EDCHEN))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.1.2.3)(PORT=49874)) * establish * ORCL11 * 12518
TNS-12518: TNS:listener could not hand off client connection
ORA-12560: TNS:protocol adapter error
...
The error pattern combined with TNS-12518 and ORA-12560, and it repeated itself until some point off the peak.
I think restarting the database should work, but it should also cost your time or credits to explain the inconvenience to your users.
I suspect that PMON was not responsive enough to reclaim the timeout or dead processes and let the whole database reach the maximum number of processes, and eventually, no more new connections will be allowed.
If you are not convenient to patch the database. Here are two alternatives that you may choose:
- Raise the maximum number of processes online:
- Force all users to connect the database through shared server mode, except DBA. For example:
SQL> alter system set processes=3000 scope=both;
System altered.
The whole concept of this tactic is to make the database survive through the daily peak-hours and let PMON can take its time to reclaim the unused processes.
SQL> alter system set shared_servers = 200 scope=both;
System altered.
SQL> alter system set dispatchers='(address=(protocol=tcp)(PORT=1521)) (dispatchers=20)(sessions=1000)' scope=both;
System altered.
In the above statement, we force all connections coming from port 1521 to use dispatchers (shared server mode). DBA and specific users can use other port like 1522 to connect as dedicated mode to finish their jobs. At the beginning, users might feel that the speed of responses of database is slightly affected. I think it’s a trade-off that you must think over before making the decision.
Since the shared server processes will be soon allocated in the server when the database startup, the number of processes can be easily controlled by DBA. For more shared server configuration, you can refer to Oracle documentation: Configuring Oracle Database for Shared Server.
Database 10g, 11gR1 Creation
For Windows Server 2008 with AD controller installed, you might see that DBCA failed with ORA-12560 at around 2% completion of database creation.
Let’s see the database creation log of DBCA.
[Thread-15] [18:26:52:256] [BasicStep.execute:202] Executing Step : CLONE_DB_CREATION_RMAN_RESTORE
[Thread-15] [18:26:52:256] [StepErrorHandler.setFatalErrors:322] setting Fatal Error: ORA-01092
[Thread-15] [18:26:52:256] [StepErrorHandler.setFatalErrors:322] setting Fatal Error: ORA-01034
[Thread-15] [18:26:52:256] [StepErrorHandler.setFatalErrors:322] setting Fatal Error: ORA-03114
[Thread-15] [18:26:52:256] [StepErrorHandler.setFatalErrors:322] setting Fatal Error: ORA-12560
To fix the problem, you may consider to uninstall AD, then install Oracle database. After the database has been created, get AD back.
Alternatively, you may patch 11.1.0.7 to patch 14.
How do we solve ORA-12560 Error? How to solve TNS Protocol Adapter Error? Tips and Tricks to resolve ORA-12560 TNS Error in Oracle Database
This is a most common and disturbing error which is faced my most of the Oracle users while connecting to the database. Even I also had faced it many times. So what I am going to share here is the method which I use to fix this problem.
ORA-12560 comes when you are making a connection to the database and somehow it is not able to connect. At that time, it simply throws TNS Protocol Adapter Error. The reason can be one of the following:
1. Listener is not active.
2. Third Party Software.
3. Problem with the tnsnames.ora file.
1. Listener is not active
This may be a case when you might haven’t noticed that your listener process is not working and you are trying to make a connection with the database. At that time, ORA-12560 error will be thrown.
Solution:
- Simply press Windows + R
- Type services.msc and press enter
Look for listener process in the services list and check whether it is running or not. If it’s not running, press right click button and start the process.
After you have started the listener service, you are allowed to make a connection with the database.
2. Third Party Software
This problem is also very common with the different Oracle users who use third party software to make a connection with the database. For example, prior to Oracle 11g database, we have to install PL/SQL Developer manually which was externally added to the system. Now sometimes ORA-12560 error problem also comes with this tool.
Solution:
Third Party Tools sometimes aren’t able to get the connection string by their own. So we have to check the preference setting in these tools and fix the problem in case if it is required.
Just go to Preference -> Connection and set the path there. You’ll solve the connection problem.
3. Problem with the tnsnames.ora file
To connect to a database, you have to configure tnsname.ora file. At the time of default database creation, configuration is automatically added to the tnsnames.ora file. But in case if you want to connect to some other database on the network, you have to manually insert the settings in the tnsnames.ora file which includes the insertion of new IP and Port.
Tnsnames.ora file looks something like this:
Solution:
There may be a case where your database name and the other database name (which is on some other machine) are same. In that case, you have to manually give them different names so that you can differentiate between them. Like in the above image «DEMON» is the database name given for the local connectivity. I can also change it to DEMON1 or DEMON2 or can be any other name but make sure that you are not changing the SERVICE_NAME. By default my Service_Name and the name which I am using for the connectivity are both same. But you can replace «DEMON» with anything you want. Just don’t change the SERVICE_NAME.
There can be different databases with the same service name on a network. All you need to do is, provide a different name to this connection like mine is DEMON.
4. Making TNS_ADMIN Entry in Environment Variables.
In case you have multiple Oracle Environments (Oracle Softwares) installed on your system, there are chances that the Environment is unaware of the TNS_ADMIN directory it needs to use. To resolve the same, add the entry of TNS_ADMIN in the System Environment Variables on your system. Below mentioned are the demos of TNS_ADMIN paths,
%ORACLE_HOME%networkadmin
$ORACLE_HOME/network/admin
I hope this helps !!
16 ответов
- Перейдите на машину Windows, на которой размещен сервер базы данных Oracle.
- Перейдите в Пуск → Выполнить → Службы .msc в окнах. Найти OracleService
(здесь OracleServiceORCL) и нажмите «Начать», чтобы запустить службу базы данных oracle (если она еще не запущена). -
После запуска и запуска из командной строки выполните следующее:
tnsping <tnsalias>
(запись tnsalias вы можете найти в файле tnsnames.ora)
Bharathi
01 авг. 2011, в 22:26
Поделиться
Кажется, что база данных не работает. Возможно, это связано с перезагрузкой машины, и экземпляр не настроен на автозапуск, и поэтому он не запускается вручную после запуска с экрана служб.
Просто перейдите в командную строку
-
Установить Oracle SID
C: > set oracle_sid = ORCL -
Теперь запустите команду Net start.
C: > net start oracleserviceORCL
Yasir Ahmed
06 дек. 2012, в 08:14
Поделиться
Добавьте в среду vars следующую переменную и значение, чтобы определить место файла tnsnames.ora:
TNS_ADMIN
C:оракулпродукт10.2.0client_1сетьадмин
user2382157
14 май 2013, в 16:17
Поделиться
из командной консоли, если вы получите эту ошибку, вы можете избежать ее, набрав
sqlplus/nolog
то вы можете подключиться
conn user/pass @host: порт/сервис
demian
26 фев. 2016, в 18:37
Поделиться
Довольно часто это означает, что слушатель не запустился. Проверьте панель «Службы».
В Windows (как и вы) еще одна распространенная причина заключается в том, что ORACLE_SID не определен в реестре. Либо отредактируйте реестр, либо установите ORACLE_SID в поле CMD. (Поскольку вы хотите запустить sqlplusw.exe, я предлагаю вам отредактировать реестр.)
APC
01 авг. 2011, в 11:09
Поделиться
После поиска у него есть простой способ его решить.
Просто выполните следующие действия.
- Проверить статус вашего слушателя.
- откройте командную строку и введите
lsnrctl status
- Вы не получите слушателя.
- откройте командную строку и введите
-
Теперь откройте файл
listener.ora
, который присутствует в следующем каталоге:C:oraclexeapporacleproduct11.2.0servernetworkADMIN
- Откройте этот файл и измените параметр узла с именем компьютера
-
Вы можете получить имя своего компьютера, щелкнув правой кнопкой мыши по
My Computer
и проверить имя компьютера и заменить параметр узла именем компьютера следующим образом:LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = Electron-PC)(PORT = 1521)
)
)
)Итак, здесь вы можете наблюдать
HOST = Electron-PC
, который является моим именем компьютера. -
Сохраните файл listener.ora и снова вернитесь к поддержке cammand
3. Введите в командной строке следующее
lsnrctl start
Это запустит OracleTNSListner
.
вы можете проверить его в службе, открыв вкладку служб диспетчера задач. если он не запускается автоматически, вы можете запустить его.
Просто так много, и вы готовы снова работать на оракуле.
Лучшее счастье.
Mrinmoy
19 янв. 2016, в 07:32
Поделиться
Я решил проблему простым способом. В прошлом мой оракул работал отлично. После установки MS SQL Server я заметил эту проблему. Я просто удалил MS SQL Server на своей машине, тогда проблема исчезла. После этого перезагрузите компьютер. Теперь я могу снова подключиться к базе данных Oracle через SQLPlus. Я предполагаю, что между ними есть конфликт. Надеюсь, это поможет.
BigData
22 авг. 2013, в 07:01
Поделиться
Еще одно возможное решение, которое просто сработало для меня… учитывая, что я использовал свой локальный логин в качестве разрешений dba.
Следуйте инструкциям, чтобы добраться до Сервисов. Щелкните правой кнопкой мыши на экземпляре и перейдите в раздел «Вход в систему»? (возможно, это не имя, а одно из вкладок, содержащих разрешения). Измените настройки, чтобы использовать LOCAL.
ClickerTweeker
15 июль 2016, в 15:46
Поделиться
Если это не работает, попробуйте следующее:
Измените LISTENER.ora
(мой найден в: oracleproduct11.2.0dbhome_1NETWORKADMINlistener.ora
) == > добавьте пользовательский прослушиватель, который указывает на вашу базу данных (SID), например, мой SID — XZ0301, поэтому:
## Base XZ03001
SID_LIST_LISTENER_XZ03001=(SID_LIST=(SID_DESC=(ORACLE_HOME =
E:oracleproduct11.2.0dbhome_1)(SID_NAME= XZ03001)))
LISTENER_XZ03001=(DESCRIPTION_LIST=(ADDRESS=(PROTOCOL =
TCP)(HOST=MyComputerName)(PORT= 1521)))
DIAG_ADR_ENABLED_LISTENER_XZ03001=ON
ADR_BASE_LISTENER_XZ03001=E:oracle
Перезагрузите компьютер
Для Windows 7 для изменения LISTENER.ora выполните следующие действия:
— Перейдите в меню «Пуск» > «Все программы» > «Аксессуары»
— Щелкните правой кнопкой мыши «Блокнот» и выберите «Запуск от имени администратора».
— Файл > открыть и перейти к файлу tnsnames.ora.
— Внесите изменения, после чего он позволит вам сохранить
user2129206
22 сен. 2013, в 18:04
Поделиться
ORA-12560: TNS: протокол защиты протокола
- установить переменные среды: ORACLE_BASE, ORACLE_HOME, ORACLE_SID
- убедитесь, что ваш пользователь является частью ORACLE_GROUP_NAME (Windows)
- убедитесь, что файл ORACLE_HOME/network/admin/sqlnet.ora:
SQLNET.AUTHENTICATION_SERVICES = (NTS) - (Windows) Будьте внимательны при добавлении нового клиента Oracle: добавление нового пути в PATH env. переменная может испортить вещи. Первая запись в этой переменной делает разницу: удостоверьтесь, что исполняемый файл sqlplus в ORACLE_HOME (ORACLE_HOME/bin) сначала входит в PATH env. переменная.
Eliandro
25 сен. 2017, в 19:05
Поделиться
Поток текущих шагов:
-
Измените файл listener.ora и tnsnames.ora в
$ Oracle_homeproduct11.2.0client_1NETWORKADMIN locationа. добавить файл listener.ora
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) )
)
ADR_BASE_LISTENER = C: [здесь c является домашним каталогом оргцов]
б. добавить файл tnsnames.ora
SCHEMADEV =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = dabase_ip)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = SCHEMADEV)
)
)
- Откройте командную строку и введите
Имя пользователя sqlplus/passowrd @oracle_connection_alias
Пример:
имя пользователя: your_database_username
пароль: Your_database_password
oracle_connection_alias: SCHEMADEV для приведенного выше примера.
Md. Kamruzzaman
22 май 2017, в 10:36
Поделиться
В моем случае (для OracleExpress) служба выполнялась, но я получил эту проблему при попытке получить доступ к базе данных через sqlplus без идентификатора соединения:
sqlplus sys/mypassword as sysdba
Чтобы сделать его работу, мне нужно было добавить идентификатор соединения (XE для Oracle Express), поэтому следующая команда работала нормально:
sqlplus sys/[email protected] as sysdba
Если вы все еще получаете ORA-12560, убедитесь, что вы можете выполнить команду XE. Использование:
tnsping XE
И вы должны получить сообщение OK вместе с полной строкой соединения (команда tnsping находится в каталоге установки oracle: [oracle express install dir]apporacleproduct11.2.0serverbin). Если вы не можете выполнить ping, убедитесь, что ваш файл tnsnames.ora
доступен для sqlplus. Возможно, вам потребуется установить переменную среды TNS_ADMIN, указывающую на ваш каталог ADMIN, где находится файл, например:
TNS_ADMIN=[oracle express installation dir]apporacleproduct11.2.0servernetworkADMIN
walkeros
14 март 2017, в 14:47
Поделиться
В моем случае (ORA-12560: ошибка адаптера протокола TNS) Проблема Причина проблемы с подключением к базе данных, например, базы данных, имени пользователя и пароля.
Как только у вас возникла проблема. Первоначально вам нужно проверить сведения о подключении, после проверки службы oracle и далее.
Я пропустил некоторые детали подключения, поэтому только я получил ошибку адаптера протокола TNS,
Я изменил детали соединения, он будет работать нормально.
muthukumar
13 фев. 2017, в 13:50
Поделиться
Это действительно сработало на моей машине. Но вместо OracleServiceORCL я нашел OracleServiceXE.
user2851218
06 окт. 2013, в 08:01
Поделиться
Вам нужно указать SQLPlus, к какой базе данных вы хотите войти. Строка хоста должна быть либо строкой соединения, либо псевдонимом, настроенным в вашем файле TNSNames.ora.
Andrew Cooper
01 авг. 2011, в 05:55
Поделиться
Ещё вопросы
- 0показывая загрузочный образ php
- 0Загрузка данных перед загрузкой контроллеров и представлений
- 0Как вернуть слово с заглавной первой буквой
- 1Открыть меню с помощью кода
- 0jQuery Mobile: уберите метку с диапазона и сделайте слайдер шире
- 1Отображение сообщения загрузки WPF до завершения обновления пользовательского интерфейса
- 1Не удается открыть новое действие по методу onResponse of Volley
- 1Ориентация устройства Android Chrome перестает срабатывать, когда вкладка находится в фоновом режиме
- 0Источник данных combobox knockout-kendo не обновляется после его визуализации?
- 1Обнаружение арабских символов в регулярных выражениях
- 1Питонический способ вставить запятую перед заглавными буквами [Regex] [duplicate]
- 0GLSL OpenGL полигоны не рендеринг
- 1Как я могу сделать машину видимой поверх фона?
- 1Регулярное выражение Javascript для соответствия всем символам & в тексте, игнорируя такие кодировки, как & # 41 ;, & nbsp; и т.д
- 1Python или bash-скрипт: если паттерн в строках между двумя одинаковыми маркерами, убрать строки и первый маркер
- 1Как посчитать, сколько раз слово появляется в массиве
- 0Node.js Чекбокс Итерация
- 1Передача аргументов нескольких и различных функций в Python
- 1Проверка переменных Javascript: (null или undefined) против логического
- 0Выбранное значение для клонированного элемента не работает должным образом
- 0Ошибка проверки формы при использовании тега ion-scroll
- 0QTableWidgetItem другой размер шрифта в одной ячейке
- 0Passport JS auth middleware проблема
- 0Js и Divs, (даже <div> это разница)
- 0какое из них является лучшим решением $ rootScope. $ emit или $ scope. $ broadcast? [Дубликат]
- 1Как разбросать и собрать список python объектов в mpi4py
- 1Как извлечь все промежутки на странице, используя iMacros?
- 0MYSQL Присоединиться только к максимальной строке с данными из нескольких таблиц
- 0Как увеличить линию графика так же, как при наведении легенды, и автоматически сбросить ее при нажатии кнопки в старшей диаграмме?
- 0Объедините флажок jquery mobile в виде списка вместе со значком данных
- 1Как убить time.sleep () в Python 3, пока компилятор спит
- 0Как добавить текстовое поле и раскрывающийся список к значению массива?
- 0мы можем использовать скомпилированный код hiphop на производственном сервере без исходного кода?
- 1Как заставить стороннюю функцию javascript, которая делает асинхронное поведение вести себя как http-запрос angular2?
- 0python + opencv «загрузка dll не удалась»
- 0Пользовательский валидатор не вызывает @service_container
- 1Есть ли способ получить данные из JSON URL
- 0Проверка формы symfony игнорирует сообщения
- 1Параметр Deep Link IO ветви не появляется в реагировать родной
- 0PHP + Codeigniter + MySQL -> не может выполнять операции с БД
- 0Установка состояния в 0, если флажки не установлены
- 1pandas.read_csv () интерпретирует TRUE как логическое значение, мне нужна строка
- 0fstream, ofstream, передача имени документа, C ++
- 1Сделать методы с именем на английском языке, но вызывать их на испанском языке в проекте c #?
- 1java.lang.IllegalArgumentException: ‘значение’ не является допустимым управляемым объектом с областью
- 0ссылка на директиву angular js не может получить доступ к сгенерированному идентификатору элемента
- 1как контролировать тестовые случаи для запуска на разных браузерах в транспортире
- 1Как выделить таблицу строк, если дано условие?
- 0Как проверить, что твит ретвитят?
- 1Проблема с установкой релиза Apk