Nedávno jsem instaloval Oracle SQL Developer na nový notebook a při každém pokusu o připojení k databázi jsem dostal chybovou hlášku: „IO Error: The Network Adapter could not establish the connection“.
Moje pokusy
Vyskoušel jsem různé verze *SQL Developer*a i Javy, ale chyba byla pořád stejná. Většina článku na internetu řešila problém, kdy neběžel Oracle listener nebo bylo špatně nastaveno připojení k databázi. To ale nebylo můj připad, protože se stejným nastavením jsem byl schopný se připojit z jiného klientra (takže listener i nastavení byly evidentně v pořádku). Nakonec , po cca dvou dnech neúspěšných pokusů, jsem se s pomocí Googlu dostal podezření na IPv6.
Problém s IPv6
Zdá se, že developer má problém s připojením přes IPv6
Jenže co s tím? Stačilo už jen zadat do Googlu dotaz :sql developer could not establish the connection ipv6
Řešení
Řešení je navíc strašně jednoduché. Stačí přidat jeden řádek do konfiguračního souboru a je hotovo. Jedná se o direktivu, která řekne Java VM aby defaultně použivala IPv4.
AddVMOption -Djava.net.preferIPv4Stack=true
Kde najdu konfigurační souboru?
Na Windows 7, kde jse Developera instaloval, se konfigurační soubor nachází v umístění
%USERPROFILE%\AppData\Roaming\sqldeveloper\1.0.0.0.0\product.conf
V mém případě to tedy bylo konkrétně
C:\Users\t.jancik\AppData\Roaming\sqldeveloper\1.0.0.0.0\product.conf
A to je vše. Po tomto jsem se již mohl úspěšně připojit.