Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 10288|Antwoord: 1

Gelinkt aan Oracle-databaserapport ORA-12547: TNS: probleem met verloren contact

[Link kopiëren]
Geplaatst op 23-10-2017 14:51:29 | | | |

Tegenwoordig, omdat de ETL-knoopmachine toegang wil krijgen tot een nieuwe databaseserver, moet hij tnsnames.ora configureren, en nadat het resultaat is geconfigureerd, wordt een foutmelding gemeld bij het verbinden met de database:
ORA-12547: TNS:lost contact



In eerste instantie dacht ik dat tnsnames.ora verkeerd was geconfigureerd, maar na vergelijking en verificatie werd deze mogelijkheid uitgesloten. Omdat dezelfde configuratie op andere hosts is geverifieerd om verbinding te maken met deze databaseserver.

Vervolgens heb ik veel informatie op internet doorzocht op basis van deze foutmelding "ORA-12547: TNS: lost contact", sommigen zeiden dat er een gebrek aan softwarepakketten waren, en anderen zeiden dat er een probleem was met de bestandsmachtigingsinstellingen op de databasehost, maar die waren niet in lijn met de situatie die deze keer was tegengekomen.

Later besloot ik de logs te bekijken, controleerde het monitoringlogboek listener.log van de database, en ontdekte dat er de volgende foutmeldingen in stonden:
20-MEI-2016 15:46:03 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=db01)(USER=grid))(COMMAND=status)(ARGUMENTS=64)(SERVICE=LISTENER)(VERSIE=186647552)) * status * 0
Binnenkomende verbinding van 192.168.24.1 afgewezen
20-MEI-2016 15:46:06 * 12546
TNS-12546: TNS:permission denied
TNS-12560: TNS:protocol adapter error
  TNS-00516: Toestemming geweigerd

en controleerde de sqlnet.ora-configuratie van de databaseserver, en ontdekte dat dit kwam doordat de limiet van databasetoegang tot IP's was ingesteld, dat wil zeggen dat alleen het opgegeven IP toegang had tot de database.

Omdat het een twee-knooppunten RAC-database is, betekent het aanpassen van sqlnet.ora onder de grid-gebruiker het IP-adres van de ETL-knoop aan de IP-whitelist om toegang te krijgen tot de database.
Na aanpassing herstart je het luisteren opnieuw (lsnrctl herladen), anders wordt er nog steeds een foutmelding gemeld.




Vorig:C# roept Java-code aan (JAR zet om naar DLL)
Volgend:TNS-12547: TNS:lost contact解决办法
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com