Имея противоположную проблему как этот человек. TNSPING OK but sqlplus gives ORA-12154?sqlplus получает ORA-12504 при использовании синтаксиса EZCONNECT
Я пытаюсь установить Oracle на виртуальную машину на рабочей станции VMWare. Я попытался установить Oracle 11g и 12с на:
- Windows Server 2008 R2
- Windows Server 2012 R2
- Windows Server 2016 Tech Preview 3 (от отчаяния)
В каждом случае я получаю диалог, в котором говорится, что «минимальные требования не выполняются». Когда я проверяю журнал установки в AppData, я получаю это.
Проверка IP-адрес локального хоста можно определить, является ли ... СИЛЬНАЯ: КИУ не поддерживает целевую среду
Я попытался установить мои виртуальные машины использовать NAT, а также с использованием Мостовое соединение. Согласно этой теме, ошибка CVU может быть проигнорирована. https://community.oracle.com/thread/2478769
Oracle устанавливается успешно каждый раз, и он автоматически вставляет запись в мой файл tnsnames.ora. Я могу подключиться как пользователь sys
, выполнив [email protected]_ENTRY as sysdba
Но второй, я пытаюсь использовать синтаксис EZCONNECT, он не работает. Например:
>sqlplus /nolog
>connect [email protected]:1521/service
Затем я получаю ORA-12504: TNS: Слушатель не получил SERVICE_NAME в CONNECT_DATA. Это странно, потому что я даже не пытаюсь использовать запись из файла tnsnames.ora для подключения. Я пробовал продвигать EZCONNECT в конфигурационном менеджере sqlnet.ora в Net Manager.
Я проверил, что установщик Oracle облеклись слушателя на моей машине под названием «СЛУШАТЕЛЬ»
У меня есть другой сервер под управлением Windows Server 2012 R2 работает на голый металл. Я перекрестно проверил все настройки tns, listenener и sqlnet и все их идентичные (конфигурации по умолчанию, которые были созданы установщиком 11g)
Я знаю, что VMWare поддерживает базы данных Oracle на своих виртуальных машинах. Я пытался придерживаться этих лучших практик, перечисленных здесь. http://www.vmware.com/files/pdf/partners/oracle/Oracle_Databases_on_VMware_-_Best_Practices_Guide.pdf
Я установил (а) lsnrctl
, чтобы убедиться, что он правильно загружает конфигурацию. я вижу свою конечную точку, когда я перезапустить слушателю
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=mymachinename)(PORT=1521)))
Брандмауэр выключен.
Вот результат tnsping:
C: \ Users \ Administrator> tnsping локальный
TNS Ping Утилита для 64-битных Windows: Версия 11.2.0.1.0 - Производство по 17-SEP-2015 11:36:02
Copyright (c) 1997, 2010, Oracle. Все права защищены.
используемые файлы параметров: C: \ приложение \ Администратор \ продукт \ 11.2.0 \ dbhome_1 \ сеть \ админ \ sqlnet.ora
Б адаптер EZCONNECT разрешить псевдоним Попытка связаться (DESCRIPTION = (CONNECT_DATA = (SERVICE_NAME =)) (ADDRESS = (ПРОТОКОЛ = TCP) (HOST = 127.0.0.1) (PORT = 1521))) OK (0 мс)
^выглядит точно так же, как tnsping от мой сервер R2 R2 с голыми металлами с 11g на нем, который работает.
Я пропустил что-то очень простое здесь? Я с этим согласен.
Спасибо! Я чувствую себя полным идиотом ... Я даже не мог соединиться с sqldeveloper, что странно. Но сейчас все хорошо. :) – matrixugly
Постоянная ссылка на блог Марка Уильямса в случае, если он когда-либо опускается. http://web.archive.org/web/20120717020405/http://oradim.blogspot.com/2009/07/sqlplus-ezconnect-password-prompt-and.html – matrixugly
Обратите внимание, что вы также должны использовать \ "имя_пользователя \ «в случае, если ваше имя пользователя Oracle также не все в верхнем регистре. Особенно, если у вас есть как пользователь _foo_, так и _FOO_. W/o the \ "вокруг имени пользователя, Oracle делает неявное преобразование в верхнем регистре, и это не тот же самый пользователь, как предполагалось, возможно! Да, такие неправильные имена пользователей не рекомендуются и даже больше _overloaded_ только для случая, но Oracle разрешает и поддерживает, поэтому лучше подготовиться. – ddevienne