Как вы используете telnet для проверки подключения к Oracle?
Вопрос
Я пытался заставить sqlplus подключиться к Oracle с моего компьютера OS X.Я задал еще один вопрос по этому поводу здесь.
Один человек предложил мне попробовать telnet.Обратившись к справочной странице, я попытался:
[ ethan@gir ~ ]$ telnet DBHOST:1521
Trying xxx.xxx.xxx.xxx...
telnet: connect to address xxx.xxx.xxx.xxx: Operation timed out
telnet: Unable to connect to remote host
Также...
[ ethan@gir ~ ]$ telnet DBHOST 1521
... с тем же результатом.
Я не уверен, как интерпретировать эти результаты.Похоже на то, чего вы ожидали бы в любом случае.Ты бы этого не сделал...
$ ssh some_mysql_host:3306
Чем отличается telnet от Oracle?
Или, может быть, я не понял, что они имели в виду.
Если бы кто-нибудь мог помочь мне понять, как использовать telnet для тестирования соединения с Oracle, я был бы благодарен.
Решение
Они предлагают использовать telnet
просто потому, что это один из самых простых клиентов TCP / IP и потому, что он установлен почти везде.Это просто простой способ проверить из командной строки, действительно ли вы можете установить соединение TCP / IP с какой-либо конкретной службой.
Кроме того, во многих IP-протоколах на основе ASCII проще простого взаимодействовать с сервером, чтобы проверить его работу, вводя команды и просматривая ответы - я сам делал это много раз с SMTP-серверами.
В вашем случае, когда вы получаете тайм-аут, либо весь хост отключен, либо доступ к этому конкретному хосту или службе блокируется брандмауэром.Если вы можете связаться с сервером с помощью ping
тогда последнее более вероятно.
Существует также небольшая вероятность того, что ваше разрешение имени на самом деле приводит вас не к тому хосту, но вы должны быть в состоянии подтвердить это, посмотрев на IP-адрес, который telnet
сказал, что он пытается подключиться к.
Другой распространенный ответ - "отказано в подключении".Это означает, что хост запущен, но на указанном порту не запущена служба.
Другие советы
В основном, когда вы указываете номер порта, например
Telnet myserver 1521
Он попытается подключиться к компьютеру через этот порт.Если вы видите какие-либо возвращенные данные или даже пустую консоль, значит, она подключилась.Если вы получаете сообщение "Не удается подключиться", это означает, что компьютер не прослушивает этот порт или брандмауэр блокирует соединение.
Ваша попытка подключиться по telnet к dbhost 1521 с сообщением "не удается подключиться" с таймаутом предполагает, что либо ваше разрешение имени хоста для 'dbhost' дает вам неправильный ответ, либо этот хост отключен, не работает, либо у вас проблемы с сетью.
Если бы oracle работал, вы бы получили соединение.Ты бы на самом деле не смог делай с этим связано что угодно, но это подтвердило бы, что oracle не спит и слушает.
Экземпляр Oracle не подключен из других систем, в то время как он подключен из localhost
, Я думаю , что порт не открыт, и он показывает проблему с telnet 1521
порт из другой системы.
Почему бы не сделать это "правильным" способом?Подключение к какому-либо произвольному сетевому порту не даст вам правильной информации, если база данных и ее прослушиватель работают правильно.
Просто установите oracle мгновенный клиент программное обеспечение и воспользуйтесь мастером настройки.