2 つの異なるデータベースのテーブルからビューを作成することはできますか? お気に入り:
creative view 'my_view' as
select names as value
from host_a.db_b.locations
union
select description as value
from host_b.db_b.items;
現在、これらは異なるデータベース エンジン (MyISAM と InnoDB) です。
thx事前に
2 つの異なるデータベースのテーブルからビューを作成することはできますか? お気に入り:
creative view 'my_view' as
select names as value
from host_a.db_b.locations
union
select description as value
from host_b.db_b.items;
現在、これらは異なるデータベース エンジン (MyISAM と InnoDB) です。
thx事前に
はい、 FEDERATED dbエンジンを介してリモートテーブルにアクセスし、クエリを使用してビューを作成する必要があります。
ただし、これは問題を解決するためのかなり厄介な方法です。特に(サンプルクエリから)データが効果的にシャーディングされるためです。
この構造では、ビューの更新/挿入は許可されません。更新可能/挿入可能なビューの場合でも、特にテーブルタイプを混合しているときに、自動コミットトランザクション以外のことを実行しようとすると、問題が発生するというのが私の直感です。問題を解決するためのより良い方法として、レプリケーションを検討することをお勧めします。