it-swarm.xyz

IO Ошибка: сетевой адаптер не может установить соединение

Я новичок в Oracle, и я пытаюсь запустить простой пример кода с Java, но я получаю эту ошибку при выполнении кода. Я могу запустить слушатель через CMD, а также могу запустить SQL Plus. Кто-нибудь может мне помочь и сказать, что я могу делать не так?

Обновление: Я использую JDBC.

База данных локальная, и у меня она действительно работала, но перестала работать только сегодня. Я не совсем уверен, почему, хотя. Не могли бы вы дать мне несколько процедур, которым я должен следовать, так как я мало что знаю.

21
Strawberry

Или:

  1. База данных не работает
  2. Вы ошиблись адресом
  3. На пути есть брандмауэр.

(Это странное сообщение об ошибке выдается драйвером Oracle JDBC, когда он не может подключиться к серверу базы данных. «Сетевой адаптер», по-видимому, ссылается на некоторый компонент их кода, что не очень полезно. Реальные сетевые адаптеры (NIC) не не устанавливать соединения вообще: стеки протоколов TCP делают это. Было бы намного полезнее, если бы они просто выбросили исходную переменную ConnectException или хотя бы использовали ее сообщение об ошибке и позволили бы ему появиться в стеке след.)

24
user207421

У меня была такая же проблема, и вот как я ее исправил. Я использовал неправильный порт для подключения.

private final String DB_URL  = "jdbc:Oracle:thin:@localhost:1521:orcll"; // 1521 my wrong port
  • иди к своему местному хозяину
  • (мой локальный адрес): https://localhost:1158/em 

  • авторизоваться 

    • имя пользователя 
    • пароль
    • подключиться как -> нормально
  • Ниже «Общие» нажмите на LISTENER_localhost

  • посмотри на свой номер порта
    • Сетевой адрес (ADDRESS = (PROTOCOL = TCP) (Host = localhost) (PORT = 1522)) Подключение к порту 1522
  • Отредактируйте ваше соединение Измените порт 1521 на 1522.

    • сделанный
7
shams

Еще одна вещь, которую вы можете проверить, чтобы файл listener.ora соответствовал тому, как вы пытаетесь подключиться к БД. Если вы подключались через ссылку на локальный хост и ваш файл listener.ora изменился с:

Host = localhost

в

Host = 192.168.XX.XX

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

3
user1827044

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

1
V Gupta

Для меня только базовый Oracle не был установлен. Убедитесь, что у вас установлен Oracle, а затем попробуйте проверить хост и порт.

0
Karisa

Чтобы устранить ошибку сетевого адаптера, мне пришлось удалить - в имени компьютера. 

0
Dharm

У меня была эта ошибка, когда я переименовал компьютер в свойствах Windows. Имя ПК должно быть обновлено в файле listener.ora-

0
anion

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

Сначала проверьте брандмауэр и проблемы, связанные с сетью.

Проверьте, доступна ли служба прослушивателя Oracle и работает ли она. Если нет, вы можете использовать инструмент Oracle Net Configuration Assistant для добавления и регистрации нового прослушивателя.

Если все вышеперечисленное выполнено правильно, вам необходимо соответствующим образом настроить прослушиватель Oracle. Вы можете использовать инструмент Oracle Net Manager или отредактировать файл «% Oracle_HOME%\network\admin\listener.ora» вручную. 

Есть 2 варианта, которые необходимо тщательно рассмотреть: Места прослушивания, связанные с прослушивателем - имя хоста (IP) и порт в расположении прослушивания, должны точно соответствовать тем, которые используются в строке подключения. 

Например, если вы используете 192.168.74.139 в качестве целевого имени хоста, то там должно быть место прослушивания, зарегистрированное с тем же IP-адресом. 

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

https://adhoctuts.com/fix-Oracle-io-error-the-network-adapter-could-not-establish-the-connection-error/

0
user628176

В моем случае мне нужно было указать viahost и viauser. Стоит попробовать, если вы находитесь в сложной системе. :)

0
Kris Selbekk