はじめに
データベースには、データが複数の場所に存在するシナリオが含まれることがよくあります。システム。この課題を克服するために、SQL Server や Oracle などのベンダーは、それぞれリンク サーバーや 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 中国語 Web サイトの他の関連記事を参照してください。