I Google [d] для этой ошибки ORA-12560: TNS: ошибка адаптера протокола, но не может найти фактическую причину и как решить эту ошибку?
Может ли кто-нибудь сказать мне идеальное решение для решения проблемы входа в систему.
I Google [d] для этой ошибки ORA-12560: TNS: ошибка адаптера протокола, но не может найти фактическую причину и как решить эту ошибку?
Может ли кто-нибудь сказать мне идеальное решение для решения проблемы входа в систему.
После запуска и запуска из командной строки выполните следующее:
tnsping <tnsalias>
(запись tnsalias вы можете найти в файле tnsnames.ora)
Кажется, что база данных не работает. Возможно, это связано с перезагрузкой машины, и экземпляр не настроен на автозапуск, и поэтому он не запускается вручную после запуска с экрана служб.
Просто перейдите в командную строку
Установить Oracle SID C: > set oracle_sid = ORCL
Теперь запустите команду Net start. C: > net start oracleserviceORCL
В моем случае у меня не было OracleService
(OracleServiceORCL) в Windows Services.msc
, как описано в ответе Бхарати.
Я выполнил эту команду:
C:\> ORADIM -NEW -SID ORCL
а затем OracleService
, называемый OracleServiceORCL, только что появился и запущен в Services.msc. Действительно приятно.
Источник: https://forums.oracle.com/forums/message.jspa?messageID=4044655#4044655
Добавьте в среду vars следующую переменную и значение, чтобы определить место файла tnsnames.ora:
TNS_ADMIN
C:\оракул\продукт\10.2.0\client_1\сеть\админ
Довольно часто это означает, что слушатель не запустился. Проверьте панель "Службы".
В Windows (как и вы) еще одна распространенная причина заключается в том, что ORACLE_SID не определен в реестре. Либо отредактируйте реестр, либо установите ORACLE_SID в поле CMD. (Поскольку вы хотите запустить sqlplusw.exe, я предлагаю вам отредактировать реестр.)
из командной консоли, если вы получите эту ошибку, вы можете избежать ее, набрав sqlplus/nolog
то вы можете подключиться conn user/pass @host: порт/сервис
Я решил проблему простым способом. В прошлом мой оракул работал отлично. После установки MS SQL Server я заметил эту проблему. Я просто удалил MS SQL Server на своей машине, тогда проблема исчезла. После этого перезагрузите компьютер. Теперь я могу снова подключиться к базе данных Oracle через SQLPlus. Я предполагаю, что между ними есть конфликт. Надеюсь, это поможет.
После поиска у него есть простой способ его решить. Просто выполните следующие действия.
lsnrctl status
Теперь откройте файл listener.ora
, который присутствует в следующем каталоге: C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN
Вы можете получить имя своего компьютера, щелкнув правой кнопкой мыши по 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
.
вы можете проверить его в службе, открыв вкладку служб диспетчера задач. если он не запускается автоматически, вы можете запустить его.
Просто так много, и вы готовы снова работать на оракуле.
Лучшее счастье.
Если это не работает, попробуйте следующее:
Измените LISTENER.ora
(мой найден в: oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora
) == > добавьте пользовательский прослушиватель, который указывает на вашу базу данных (SID), например, мой SID - XZ0301, поэтому:
## Base XZ03001
SID_LIST_LISTENER_XZ03001=(SID_LIST=(SID_DESC=(ORACLE_HOME =
E:\oracle\product\11.2.0\dbhome_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. - Внесите изменения, после чего он позволит вам сохранить
Еще одно возможное решение, которое просто сработало для меня... учитывая, что я использовал свой локальный логин в качестве разрешений dba.
Следуйте инструкциям, чтобы добраться до Сервисов. Щелкните правой кнопкой мыши на экземпляре и перейдите в раздел "Вход в систему"? (возможно, это не имя, а одно из вкладок, содержащих разрешения). Измените настройки, чтобы использовать LOCAL.
Вам нужно указать SQLPlus, к какой базе данных вы хотите войти. Строка хоста должна быть либо строкой соединения, либо псевдонимом, настроенным в вашем файле TNSNames.ora.
Это действительно сработало на моей машине. Но вместо OracleServiceORCL я нашел OracleServiceXE.
В моем случае (ORA-12560: ошибка адаптера протокола TNS) Проблема Причина проблемы с подключением к базе данных, например, базы данных, имени пользователя и пароля.
Как только у вас возникла проблема. Первоначально вам нужно проверить сведения о подключении, после проверки службы oracle и далее.
Я пропустил некоторые детали подключения, поэтому только я получил ошибку адаптера протокола TNS, Я изменил детали соединения, он будет работать нормально.
В моем случае (для 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]\app\oracle\product\11.2.0\server\bin). Если вы не можете выполнить ping, убедитесь, что ваш файл tnsnames.ora
доступен для sqlplus. Возможно, вам потребуется установить переменную среды TNS_ADMIN, указывающую на ваш каталог ADMIN, где находится файл, например:
TNS_ADMIN=[oracle express installation dir]\app\oracle\product\11.2.0\server\network\ADMIN
Поток текущих шагов:
Измените файл listener.ora и tnsnames.ora в $ Oracle_home\product\11.2.0\client_1\NETWORK\ADMIN 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)
)
)
Пример:
имя пользователя: your_database_username
пароль: Your_database_password
oracle_connection_alias: SCHEMADEV для приведенного выше примера.
ORA-12560: TNS: протокол защиты протокола