利用Federated引擎進行mysql複製

2021-05-21 21:12:45 字數 1116 閱讀 6071

federated儲存引擎可以使幾台資料庫邏輯上組成乙個資料庫,其作用相當於oracle的資料庫鏈結,通俗地說,即在本地建立遠端的資料庫表的引用。

mysql需要5.0以上

(1)檢視是否安裝了federated引擎

show engines;

從中可以看出federated引擎沒有開啟

windows下在my.ini中加入federated,即可開啟;而在linux中,需要編譯時加入選項,再在my.ini中加入federated,即可開啟。

(2)建立遠端資料庫表鏈結

比如:在server1中有乙個資料庫db1,在server2中有db1,其中server1.db1為寫,server.db1為備份;假設在兩個伺服器db1中分別有乙個表a,在server1.db1中建立server2.db1.a的鏈結

create table remote_a ...... engine=federated connection = 'mysql://root:123456@server2:3306/db1/a';

(3)建立觸發器

delimiter ;;

create trigger copy_a_insert after insert on a for each row begin 向remote_a插入資料 end;;

create trigger copy_a_update after update on a for each row begin 向remote_a更新資料 end;;

create trigger copy_a_delete after delete on a for each row begin 向remote_a刪除資料 end;;

delimiter ;

這樣在向server1.db1.a中插入資料時,呼叫觸發器copy_a_insert,向remote_a插入資料,而remote_a是對server2.db1.a的鏈結,從而達到復

制的目的。

MySQL儲存引擎之 Federated

federated 儲存引擎允許訪問遠端mysql資料庫中的資料,federated 僅支援表級別的遠端訪問。本地的federated表中不儲存資料,訪問本地表時,會自動從遠端表中獲取資料。mysql 預設未開啟federated儲存引擎,需要修改配置檔案進行開啟。mysql show engine...

MySQL中的FEDERATED引擎

mysql中的federated引擎 首先說明 federated儲存引擎訪問在遠端資料庫的表中的資料,而不是本地的表。這個特性給某些開發應用帶來了便利,你可以直接在本地構建乙個federated表來連線遠端資料表,配置好了之後本地表的資料可以直接跟遠端資料表同步。實際上這個引擎裡面是不真實存放資料...

MySQL中的FEDERATED引擎

首先說明 federated儲存引擎訪問在遠端資料庫的表中的資料,而不是本地的表。這個特性給某些開發應用帶來了便利,你可以直接在本地構建乙個federated表來連線遠端資料表,配置好了之後本地表的資料可以直接跟遠端資料表同步。實際上這個引擎裡面是不真實存放資料的,所需要的資料都是連線到其他mysq...