Oracle Utwórz link do bazy danych

Oracle Utwórz link do bazy danych

W Oracle link do bazy danych odnosi się do obiektu bazy danych, który umożliwia użytkownikowi dostęp do danych w zdalnej bazie danych. Zasadniczo działa jako „link” między dwiema bazami danych, umożliwiając użytkownikowi wykonanie zapytania SQL w jednej bazie danych i dostęp do danych z innej.

Linki do bazy danych są niezbędne z różnych powodów. Na przykład można ich użyć do:

  1. Skonsoliduj dane z wielu baz danych na jednym serwerze do celów raportowania i analizy.
  2. Pozwól użytkownikom w jednej bazie danych na dostęp do danych w innej bazie danych bez konieczności zapewnienia im bezpośredniego dostępu do tej bazy danych.
  3. Dołącz dane z dwóch różnych baz danych w jednym zapytaniu SQL.

Ten samouczek nauczy Cię, jak korzystać z polecenia Utwórz link do bazy danych Oracle, aby zainicjować nowy link do bazy danych.

Linki bazy danych Oracle

Istnieją dwa typy linków do bazy danych w Oracle:

  1. Prywatne linki do bazy danych - Prywatny link do bazy danych jest własnością konkretnego użytkownika i może być używany tylko przez tego użytkownika. Oznacza to, że tylko właściciel łącza może go użyć do dostępu do danych w zdalnej bazie danych.
  2. Publiczne linki do bazy danych - Z drugiej strony link publicznej bazy danych jest własnością publicznego użytkownika i może być używany przez każdego użytkownika w bazie danych. Każdy użytkownik z niezbędnymi uprawnieniami może użyć linku, aby uzyskać dostęp do danych w zdalnej bazie danych.

Prywatne linki do bazy danych są bezpieczniejsze, ponieważ są one rozstrzygane do jednego konkretnego użytkownika. Jednak publiczne linki do bazy danych zapewniają większą dostępność i wygodę, ponieważ są one globalne dla każdego użytkownika.

Dlatego jest trudne ustawienie, z której bazy danych musisz użyć. Uważnie zastanów się, co jest bardziej krytyczne: bezpieczeństwo lub wygoda.

Oracle Utwórz instrukcję linku do bazy danych

Korzystamy z instrukcji Link Utwórz link Oracle, aby zainicjować nowy obiekt linku bazy danych.

Możemy wyrazić składnię instrukcji, jak pokazano poniżej:

Utwórz [udostępnioną] [public] Link_name linku link
Połącz się z nazwą użytkownika zidentyfikowaną przez hasło
Używając „connect_string”;

Instrukcja zawiera określone parametry, takie jak:

  1. WSPÓLNY - Udostępniona opcja umożliwia utworzenie współużytkowanego linku do bazy danych, do której wielu użytkowników może uzyskać dostęp.
  2. PUBLICZNY - Opcja publiczna utworzy link publicznej bazy danych, do którego może uzyskać dostęp każdego użytkownika w bazie danych.
  3. Połączyć się z - Ta opcja określa nazwę użytkownika i hasło do połączenia z zdalną bazą danych.
  4. ZA POMOCĄ - Wreszcie, używając parametru ustawia ciąg połączenia, aby podłączyć się do zdalnej bazy danych. Możesz sprawdzić nasz samouczek w ciągu Oracle Connection String, aby odkryć więcej.

Oracle Utwórz przykład bazy danych

Poniższy przykład utworzy link do bazy danych, aby połączyć się ze zdalnym serwerem Oracle z adresem 192.168.100.23 na porcie 1521. Serwer zdalny ma nazwę usług ORLR.

Zaczniemy od dodania wpisu do TNSNames.plik ORA.

Jeśli nie znasz tego, TNSNames.Plik ORA przechowuje informacje o konfiguracji sieci dla bazy danych Oracle. Zazwyczaj zawiera wpisy dla każdej bazy danych, z którymi Klient Oracle musi się połączyć, wraz z niezbędnymi ciągami połączenia i innymi szczegółami. Klient Oracle wykorzystuje te informacje do łączenia się z bazami danych.

Ten plik jest zazwyczaj w katalogu $ oracle_home/network/admin. Załóżmy, że nie jesteś pewien, gdzie TNSNames.Plik ORA znajduje się w twoim systemie; Możesz spróbować uruchomić następujące polecenie, aby je znaleźć:

Znajdź / -name tnsnames.Ora

Możesz także utworzyć plik ręcznie, jeśli nie istnieje.

Dodaj wpis do serwera docelowego, jak pokazano poniżej:

ORLR =
(Opis =
(Adres = (protokół = tcp) (host = 192.168.100.23) (port = 1521))
(Connect_Data =
(Serwer = dedykowany)
(Service_name = orlr)
)
)

Wpis definiuje połączenie bazy danych o nazwie ORLR, które wykorzystuje protokół TCP do podłączania się do bazy danych na hoście z adresem IP 192.168.100.23 na porcie 1521.

Sekcja Connect_Data wpisu określa, że ​​połączenie używa dedykowanego serwera, a nazwa usługi dla bazy danych to ORLR. Klient Oracle wykorzystuje te informacje do połączenia z bazą danych za pomocą tego wpisu.

Następnie możemy utworzyć link do bazy danych za pomocą poprzedniego wpisu, jak pokazano poniżej:

Utwórz link do bazy danych ORLR_LINK
Połącz się z nazwą użytkownika zidentyfikowaną przez hasło
ZA POMOCĄ '
(Opis =
(Adres = (protokół = tcp) (host = 192.168.100.23) (port = 1521))
(Connect_Data =
(Serwer = dedykowany)
(Service_name = orlr)
)
)
';;

Możesz pominąć definicję wpisu, jeśli dodasz ją do tnanames.plik ORA.

Po utworzeniu linku możemy go użyć do dostępu do danych w bazie danych ORLR, jak pokazano poniżej:

Wybierz * z test_table@orlr_link;

Wniosek

W tym poście odkryłeś podstawy pracy z linkami do bazy danych w Oracle. Przed użyciem linków do bazy danych dobrze jest rozważyć negatywne skutki, które mogą się z nimi związać.

Takie potencjalne kary obejmują:

  1. Wydajność - Korzystanie z linku do bazy danych może potencjalnie wpłynąć na wydajność zapytania SQL. Wynika to z faktu, że po wykonywaniu zapytania w bazie danych dane muszą zostać przeniesione z powrotem do lokalnej bazy danych przez sieć. Może to być szczególnie problematyczne w przypadku dużych zapytań lub częstych zapytań.
  2. Bezpieczeństwo - Drugim potencjalnym wpływem linków do bazy danych jest bezpieczeństwo. Korzystanie z linku do bazy danych może potencjalnie wprowadzić ryzyko bezpieczeństwa, ponieważ pozwala użytkownikom z jednej bazy danych na dostęp z danych z innej. Jest zatem kluczowe dla bezpieczeństwa zdalnej bazy danych.
  3. Zależność - Korzystanie z linku do bazy danych może stworzyć zależność od zdalnej bazy danych, dzięki czemu trudniej jest zarządzać złożonym środowiskiem.

Zasadniczo linki do bazy danych mogą być cennym narzędziem w niektórych sytuacjach, ale konieczne jest rozważenie potencjalnego negatywnego wpływu przed wdrożeniem ich w klastrze.