Подтвердить что ты не робот

ORA-12560: TNS: ошибка адаптера протокола

enter image description here

I Google [d] для этой ошибки ORA-12560: TNS: ошибка адаптера протокола, но не может найти фактическую причину и как решить эту ошибку?

Может ли кто-нибудь сказать мне идеальное решение для решения проблемы входа в систему.

4b9b3361

Ответ 1

  • Перейдите на машину Windows, на которой размещен сервер базы данных Oracle.
  • Перейдите в Пуск → Выполнить → Службы .msc в окнах. Найти OracleService (здесь OracleServiceORCL) и нажмите "Начать", чтобы запустить службу базы данных oracle (если она еще не запущена).
  • После запуска и запуска из командной строки выполните следующее:

    tnsping <tnsalias>

(запись tnsalias вы можете найти в файле tnsnames.ora)

Services

Ответ 2

Кажется, что база данных не работает. Возможно, это связано с перезагрузкой машины, и экземпляр не настроен на автозапуск, и поэтому он не запускается вручную после запуска с экрана служб.

Просто перейдите в командную строку

  • Установить Oracle SID C: > set oracle_sid = ORCL

  • Теперь запустите команду Net start. C: > net start oracleserviceORCL

Ответ 3

В моем случае у меня не было OracleService (OracleServiceORCL) в Windows Services.msc, как описано в ответе Бхарати.

Я выполнил эту команду:

C:\> ORADIM -NEW -SID ORCL

а затем OracleService, называемый OracleServiceORCL, только что появился и запущен в Services.msc. Действительно приятно.


Источник: https://forums.oracle.com/forums/message.jspa?messageID=4044655#4044655

Ответ 4

Добавьте в среду vars следующую переменную и значение, чтобы определить место файла tnsnames.ora:

TNS_ADMIN

C:\оракул\продукт\10.2.0\client_1\сеть\админ

Ответ 5

Довольно часто это означает, что слушатель не запустился. Проверьте панель "Службы".

В Windows (как и вы) еще одна распространенная причина заключается в том, что ORACLE_SID не определен в реестре. Либо отредактируйте реестр, либо установите ORACLE_SID в поле CMD. (Поскольку вы хотите запустить sqlplusw.exe, я предлагаю вам отредактировать реестр.)

Ответ 6

из командной консоли, если вы получите эту ошибку, вы можете избежать ее, набрав sqlplus/nolog

то вы можете подключиться conn user/pass @host: порт/сервис

Ответ 7

Я решил проблему простым способом. В прошлом мой оракул работал отлично. После установки MS SQL Server я заметил эту проблему. Я просто удалил MS SQL Server на своей машине, тогда проблема исчезла. После этого перезагрузите компьютер. Теперь я могу снова подключиться к базе данных Oracle через SQLPlus. Я предполагаю, что между ними есть конфликт. Надеюсь, это поможет.

Ответ 8

После поиска у него есть простой способ его решить. Просто выполните следующие действия.

  • Проверить статус вашего слушателя.
    • откройте командную строку и введите 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.

вы можете проверить его в службе, открыв вкладку служб диспетчера задач. если он не запускается автоматически, вы можете запустить его.

Просто так много, и вы готовы снова работать на оракуле.

Лучшее счастье.

Ответ 9

Если это не работает, попробуйте следующее: Измените 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.  - Внесите изменения, после чего он позволит вам сохранить

Ответ 10

Еще одно возможное решение, которое просто сработало для меня... учитывая, что я использовал свой локальный логин в качестве разрешений dba.

Следуйте инструкциям, чтобы добраться до Сервисов. Щелкните правой кнопкой мыши на экземпляре и перейдите в раздел "Вход в систему"? (возможно, это не имя, а одно из вкладок, содержащих разрешения). Измените настройки, чтобы использовать LOCAL.

Ответ 11

Вам нужно указать SQLPlus, к какой базе данных вы хотите войти. Строка хоста должна быть либо строкой соединения, либо псевдонимом, настроенным в вашем файле TNSNames.ora.

Ответ 12

Это действительно сработало на моей машине. Но вместо OracleServiceORCL я нашел OracleServiceXE.

Ответ 13

В моем случае (ORA-12560: ошибка адаптера протокола TNS) Проблема Причина проблемы с подключением к базе данных, например, базы данных, имени пользователя и пароля.

Как только у вас возникла проблема. Первоначально вам нужно проверить сведения о подключении, после проверки службы oracle и далее.

Я пропустил некоторые детали подключения, поэтому только я получил ошибку адаптера протокола TNS, Я изменил детали соединения, он будет работать нормально.

Ответ 14

В моем случае (для 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

Ответ 15

Поток текущих шагов:

  • Измените файл 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)
    )
  )
  1. Откройте командную строку и введите
    Имя пользователя sqlplus/passowrd @oracle_connection_alias

Пример:
имя пользователя: your_database_username
        пароль: Your_database_password
        oracle_connection_alias: SCHEMADEV для приведенного выше примера.

Ответ 16

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. переменная.