Мога да измисля четири възможни решения за вашия сценарий:
- използвайте напълно квалифицирани имена на таблици, когато отправяте заявка за външното маса. MySQL поддържа
dbname.tablename
-синтаксис за достъп до таблици извън текущия обхват на базата данни. Това изисква текущо свързаният потребител да има съответните права да чете от заявената таблица в друга физическа база данни. - ако вашата външна база данни работи на различен MySQL сървър (на същата машина или чрез мрежова връзка), можете да използвате репликация, за да актуализирате постоянно копие само за четене на отдалечената таблица. Репликацията е възможна само ако използвате два отделни екземпляра на MySQL.
- използвайте
FEDERATEDкод> Машина за съхранение на MySQL
за практически импорт таблицата във вашата текуща база данни. Това премахва изискването за предоставяне на текущия потребителски права за достъп до втората база данни, тъй като идентификационните данни се дават сCREATE TABLE
-изявление при използване наFEDERATED
двигател за съхранение. Това също работи с бази данни, работещи на различни физически сървъри или различни MySQL екземпляри. Мисля, че това ще бъде най-лошият вариант за представяне и има някои ограничения - повече или по-малко важно в зависимост от вашия сценарий на използване и вашите изисквания. - Това е разширение към метод 1. Вместо да се налага да посочвате напълно квалифицираните имена на таблици всеки път, когато поискате информация от външното таблица, можете просто да създадете изглед
във вашата текуща база данни въз основа на прост
SELECT <<колони>> FROM <<база от данни>>.<
> . Това прилича на начина,
FEDERATED
-method работи, но е ограничен до таблици в същия MySQL екземпляр.Лично аз бих счел метод (4) за най-полезен, но другите също биха могли да бъдат възможни заобиколни решения в зависимост от вашите изисквания.
-
PHP Предупреждение:mysqli_connect():(HY000/2002):Връзката е отказана
-
Можем ли да свържем отдалечена база данни MySQL в Android с помощта на JDBC?
-
Как да зададете стойност по подразбиране за колона за дата и час на MySQL?
-
Безплатен уеб хостинг с поддръжка на PHP
-
Чувствителни ли са имената на колона и таблица в MySQL?
-