首先要把數(shù)據(jù)庫A、B的連接權(quán)限都grant給一個用戶,然后用這個用戶連接數(shù)據(jù)庫。
10年積累的網(wǎng)站設(shè)計、成都做網(wǎng)站經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先做網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有尚志免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
那么可以用A.a, B.b這樣去訪問表。
剩下的就是SQL select ... insert into語句的事,相信你會。
基于數(shù)據(jù)庫 Log 日志分析可以實現(xiàn),網(wǎng)上搜一下 CDC 數(shù)據(jù)同步。。
不過你也可以嘗試下 cloud.tapdata.net , 一個在線的數(shù)據(jù)同步工具,支持一次性全量同步,也支持實時的增量同步。
使用程序無法實現(xiàn)這種功能,因為無法保證事務(wù)的一致性,比如:A數(shù)據(jù)庫中的a表復(fù)制到B數(shù)據(jù)庫中的a表的過程中,A數(shù)據(jù)庫中的a表的一條記錄被刪除,這樣就無法實現(xiàn)數(shù)據(jù)的一致性!正確的做法是使用MySQL復(fù)制的功能!很簡單,只需要幾步配置即可!
很好解決啊,加個mysql數(shù)據(jù)庫,客戶端php動態(tài)網(wǎng)頁從數(shù)據(jù)庫讀取數(shù)據(jù)。服務(wù)器端寫入數(shù)據(jù)。客戶端可以反饋(寫入)瀏覽者的數(shù)據(jù)到數(shù)據(jù)庫(如網(wǎng)頁點擊率,客戶IP等),服務(wù)器端就可以看到
你是希望用PHP代碼實現(xiàn)同時寫兩個數(shù)據(jù)庫還是希望只是兩個數(shù)據(jù)庫的數(shù)據(jù)一致?如果僅是希望數(shù)據(jù)庫數(shù)據(jù)數(shù)據(jù)一至,oracle自帶的機制就能實現(xiàn)。如果是想自己編程實現(xiàn)同時兩個數(shù)據(jù)庫的操作,也方便,PHP在鏈接不同數(shù)據(jù)庫實例時,會得到不同的鏈接句柄,在后面具體操作時,同時對這兩個鏈接句柄操作就行了,但這樣存在數(shù)據(jù)不完全一致的風(fēng)險,必須校驗,這樣又拖慢了速度。
演示代碼如下:
echo "br /b演示多數(shù)據(jù)庫克隆操作(多數(shù)據(jù)庫同時寫操作)/bbr /";
$this-loadModel('student.php',1);
//如果兩個不同數(shù)據(jù)庫服務(wù)器的表對象結(jié)構(gòu)完全一致,則不必重復(fù)載入表對象定義文件,只需要在實例化時指定服務(wù)器id就行了。
//$this-loadModel('student.php',2);
$this-loadModel('student2.php',2);
$student1=new Tstudent(1);
$student2=new Tstudent2(2);
$student3=new Tstudent(2);
$student2-cloneFrom($student1);
$student3-cloneFrom($student1);
$student1-uuid='999';
$student1-id='999';
$student1-name='測試克隆人';
//如果進行了主對象的克隆操作,則在完成主對象數(shù)據(jù)持久化后,所有的子對象將會同步插入數(shù)據(jù)。
$student1-insert();