Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Oracle Database Link — odpowiednik MySQL?

Przychodzą mi do głowy cztery możliwe obejścia tego scenariusza:

  1. używaj w pełni kwalifikowanych nazw tabel podczas zapytań o zewnętrzne stół. MySQL obsługuje dbname.tablename -składnia dostępu do tabel poza bieżącym zakresem bazy danych. Wymaga to, aby aktualnie podłączony użytkownik miał odpowiednie prawa do odczytu żądanej tabeli w innej fizycznej bazie danych.
  2. jeśli Twoja zewnętrzna baza danych działa na innym serwerze MySQL (na tym samym komputerze lub za pośrednictwem połączenia sieciowego), możesz użyć replikacji, aby stale aktualizować kopię zdalnej tabeli tylko do odczytu. Replikacja jest możliwa tylko wtedy, gdy używasz dwóch oddzielnych instancji MySQL.
  3. użyj FEDERATED Silnik pamięci MySQL wirtualnie importować tabeli do bieżącej bazy danych. Znosi to wymóg nadawania bieżącym użytkownikom praw dostępu do drugiej bazy danych, ponieważ poświadczenia są podawane w CREATE TABLE -oświadczenie podczas korzystania z FEDERATED silnik pamięci masowej. Działa to również z bazami danych działającymi na różnych serwerach fizycznych lub różnych instancjach MySQL. Myślę, że będzie to najsłabsza opcja i ma trochę ograniczenia - mniej lub bardziej ważne w zależności od scenariusza użytkowania i wymagań.
  4. Jest to rozszerzenie metody 1. Zamiast konieczności określania w pełni kwalifikowanych nazw tabel za każdym razem, gdy żądasz informacji od swojego zewnętrznego tabeli, możesz po prostu utworzyć widok wewnątrz bieżącej bazy danych na podstawie prostego SELECT <> FROM <>.<> . Przypomina to sposób FEDERATED -method działa, ale ogranicza się do tabel na tej samej instancji MySQL.

    Osobiście uważam metodę (4) za najbardziej użyteczną - ale inne mogą być również możliwymi obejściami w zależności od Twoich wymagań.



    1. Database
    2.   
    3. Mysql
    4.   
    5. Oracle
    6.   
    7. Sqlserver
    8.   
    9. PostgreSQL
    10.   
    11. Access
    12.   
    13. SQLite
    14.   
    15. MariaDB
    1. wyświetlaj dane z bazy danych SQL do tabeli php/html

    2. Jak transponować wiersze tabeli mysql na kolumny?

    3. SCHEMA() Funkcja w MySQL

    4. PlanetScale &Vitess:Integralność referencyjna ze starszymi bazami danych podzielonych na fragmenty

    5. Jak mogę używać mySQL replace() do zastępowania ciągów w wielu rekordach?