집 >데이터 베이스 >MySQL 튜토리얼 >MySQL은 원격 데이터베이스에 액세스하기 위해 연결된 서버를 제공합니까?
소개
데이터베이스에는 데이터가 여러 곳에 상주하는 시나리오가 포함되는 경우가 많습니다. 시스템. 이러한 문제를 극복하기 위해 SQL Server 및 Oracle과 같은 공급업체는 각각 Linked Server 및 dblink와 같은 개념을 도입합니다. 하지만 MySQL을 활용한다면 어떨까요? 동등한 기능을 사용할 수 있습니까?
MySQL의 FEDERATED 엔진: 개념 이해
MySQL은 기본적으로 SQL Server의 연결된 서버 또는 Oracle의 dblink의 정확한 복제본을 지원하지 않습니다. , FEDERATED 엔진은 유사한 기능을 제공합니다. FEDERATED 엔진을 사용하면 다른 MySQL 인스턴스의 테이블이 로컬 테이블인 것처럼 액세스할 수 있습니다.
FEDERATED 엔진 구성(MySQL 5.5)
[mysqld] federated = ON
CREATE FOREIGN DATA SOURCE example_ds OPTIONS ( LINK 'mysql://user:pass@host:port/dbname' );
CREATE TABLE example_local LIKE example_remote;
사용 FEDERATED 테이블
한번 구성되면 마치 로컬 테이블인 것처럼 로컬 래퍼 테이블을 통해 원격 MySQL 테이블에 액세스할 수 있습니다. 예:
SELECT * FROM example_local;
제한 사항
FEDERATED 엔진은 연결된 서버와 유사한 기능을 제공하지만 다음과 같은 제한 사항이 있습니다.
대안: MySQL 프록시
MySQL이 아닌 데이터 소스에 연결해야 하는 경우 MySQL 프록시를 고려하세요. 연결된 서버/dblink와 동일한 아키텍처를 따르지는 않지만 유사한 연결 문제에 대한 솔루션을 제공합니다.
위 내용은 MySQL은 원격 데이터베이스에 액세스하기 위해 연결된 서버를 제공합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!