Tänapäeval, kuna ETL-sõlmemasin soovib pääseda uuele andmebaasiserverile, peab ta seadistama tnsnames.ora ning pärast tulemuse seadistamist teatatakse andmebaasiga ühendamisel vea:
ORA-12547: TNS:lost contact
Alguses arvasin, et see on tnsnames.ora valesti konfigureeritud, kuid pärast võrdlust ja kontrolli see võimalus välistati. Sest sama konfiguratsioon teistel hostidel on kinnitatud, et see ühendub selle andmebaasiserveriga.
Seejärel otsisin internetist palju infot vastavalt sellele veanumbrile "ORA-12547: TNS: lost contact", mõned ütlesid, et tarkvarapakette napib ja mõned väitsid, et andmebaasi hosti faililubade seadetes on probleem, kuid need ei vastanud seekordse olukorrale.
Hiljem otsustasin logisid vaadata, kontrollisin andmebaasi jälgimislogi listener.log ja leidsin, et seal olid järgmised veateated: 20-MAI-2016 15:46:03 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=db01)(USER=grid))(COMMAND=status)(ARGUMENTS=64)(SERVICE=LISTENER)(VERSION=186647552)) * status * 0 Sissetulev ühendus aadressilt 192.168.24.1 lükati tagasi 20. MAI-2016 15:46:06 * 12546
TNS-12546: TNS:permission denied
TNS-12560: TNS:protocol adapter error TNS-00516: Luba keelatud
viidates ja kontrollides andmebaasi serveri sqlnet.ora konfiguratsiooni, leides, et põhjus oli selles, et andmebaasi juurdepääsu IP piirang oli seatud, st ainult määratud IP pääses andmebaasile ligi.
Kuna tegemist on kahe sõlmega RAC andmebaasiga, tähendab sqlnet.ora muutmine grid kasutaja all sellega, et lisada ETL-sõlme IP-aadress IP valgesse nimekirja, et andmebaasile ligi pääseda. Pärast modifikatsiooni taaskäivita kuulamine (lsnrctl reload), vastasel juhul teatatakse ikkagi vea. |