xorvester
@xorvester

Почему не соединяется клиент с базой данных Oracle?

Добрый всем! Выручайте, проблема такая. Есть сервер Oracle 11G enterpise, он установлен на операционной системе Centos 6. База данных запущена и функционирует на нем. Открыл порты 1158 и 1521. На другую машину Windows7 был установлен Оracle client. В файле /etc/hosts на Centos и в файле c:....etcdriverhosts на Windows соответственно, прописан мой тестовый сервер centos6.dbaora.com. Пинг от Windows7 до Centos6 проходит по имени сервера. Так вот когда в клиенте Oracle пытаюсь подключиться через Oracle Net Configuration Assistan то пишет ошибка соединения при этом логин и пароль ввожу верный. В чем может быть проблема? Спасибо. P.s добавил скриншоты и логи.
pastebin.com/auMFPKeg
pastebin.com/LNsFWYEM
12001cd0e0a6.pngb655cfdbf6ea.png2253cfc2954c.png412d44a79cf8.png
  • Вопрос задан
  • 3154 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Oraclist
По пунктам:
1. Пробуй подключиться к БД локально (подключаешься по SSH, в командной строке su - oracle, прыгаешь в папку размещения sqlplus, запускаешь sqlplus /nolog, далее conn / as sysdba, вводишь пароль SYS'a.
Если, ОК значит БД может принимать подключения.
Заодно проверь, что экземпляр запущен.
2. Там же из SSH пробуй подключиться через листенер (sqlplus /nolog, вводишь sys@имя_БД, если получишь приглашение на ввод пароля, то всё ОК.
3. Если нет, то tnsping имя_БД. Если пинга нет, то настраивай tnsnames.ora. Рекомендую хранить только один экземпляр файла с таким именем на хосте. Путь к файлу можно задать через переменную окружения TNS_ADMIN.
4. Если в п.2. ОК, то повтори п.3 с удаленного хоста.
5. Если в п.4. ОК, то выгони инопланетян из компьютера)
6. Если в п.4 не ОК. Пробуй сначала "telnet имя_хоста 1521". Есть приглашение - есть доступ к хосту. Нет приглашения - кури файрвол.
7. Если есть доступ к хосту и нет связи, настраивай удаленный tnsnames.ora. Рекомендации теже.

tnsnames.ora расположен в ORA_HOME/NETWORK/ADMIN или по пути в переменной окружения TNS_ADMIN.

Вот пример одной настройки из файла
Имя_БД=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=IP_хоста_или_доменное_имя)(PORT=1521))
(CONNECT_DATA=(SID=SID_БД)(SERVER=DEDICATED))
)
SID_БД можно глянуть командой lsnrctl status в командной строке по SSH
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы