Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 10288|Odpowiedź: 1

Powiązane z raportem bazy danych Oracle ORA-12547: TNS: problem z utratą kontaktu

[Skopiuj link]
Opublikowano 23.10.2017 14:51:29 | | | |

Obecnie, ponieważ maszyna węzła ETL chce uzyskać dostęp do nowego serwera bazy danych, musi skonfigurować tnsnames.ora, a po skonfigurowaniu wyniku zgłaszany jest błąd podczas łączenia z bazą danych:
ORA-12547: TNS:lost contact



Na początku myślałem, że to błędnie skonfigurowana tnsnames.ora, ale po porównaniu i weryfikacji ta możliwość została wykluczona. Ponieważ ta sama konfiguracja na innych hostach została zweryfikowana, aby łączyć się z tym serwerem bazy danych.

Następnie przeszukałem wiele informacji w Internecie na podstawie tego błędu "ORA-12547: TNS: lost contact", niektórzy twierdzili, że brakuje pakietów oprogramowania, inni zaś o problem z ustawieniami uprawnień do plików na hostze bazy danych, ale nie odpowiadały one sytuacji zaobserwowanej tym razem.

Później postanowiłem przejrzeć logi, sprawdziłem dziennik monitoringu listener.log bazy danych i odkryłem, że pojawiły się w nim następujące komunikaty o błędach:
20-MAY-2016 15:46:03 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=db01)(USER=grid))(COMMAND=status)(ARGUMENTS=64)(SERVICE=LISTENER)(VERSION=186647552)) * status * 0
Połączenie przychodzące z 192.168.24.1 odrzucone
20-MAJ-2016 15:46:06 * 12546
TNS-12546: TNS:permission denied
TNS-12560: TNS:protocol adapter error
  TNS-00516: Pozwolenie odrzucone

oraz sprawdził konfigurację serwera bazy danych sqlnet.ora i stwierdził, że jest to spowodowane ustawieniem ograniczenia dostępu do danych IP, czyli tylko określony adres IP mógł uzyskać dostęp do bazy danych.

Ponieważ jest to dwuwęzłowa baza RAC z dwoma węzłami, modyfikacja sqlnet.ora w użytkowniku grid polega na dodaniu adresu IP węzła ETL do białej listy IP, aby uzyskać dostęp do bazy danych.
Po modyfikacji ponownie uruchom nasłuchiwanie (lsnrctl reload), w przeciwnym razie błąd nadal będzie zgłaszany.




Poprzedni:C# wywołuje kod Java (JAR konwertuje na DLL)
Następny:TNS-12547: TNS:lost contact解决办法
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com