我正在尋找一種有效的方法來保持多個數據庫(在不同的服務器上)與master
數據庫(也在不同的服務器上)同步。請注意,我只需要單向同步(從主人到所有其他人)。設置本地數據庫從主數據庫更新
正如我在尋找我遇到了多種解決方案。
replication
:這(從我讀)是不可靠的,因爲如果從服務器或暫時關閉或類似的東西,他們最終丟失的信息。 (請糾正我,如果我錯了)Injection
:我也認爲這是不可靠的,更不用說安全問題,因爲你直接與從屬數據庫進行通信。
因爲我不喜歡我所看到的,我決定把我自己的系統(最終不喜歡它要麼)我的系統是使一個新的表名爲ORDERS
,並且將基本上認爲可以翻譯值作爲「在表someTable中刪除ID爲32的項目」,並且在從屬端他們將遵循這些指令中的每一個。
您認爲最好的方法是什麼?數據庫非常小(最多有3000個條目),所以我想要一個非常簡單的解決方案。謝謝
它可能* [Memcache](http://php.net/manual/en/book.memcache.php)可能替代基於磁盤的數據庫克隆。 –
如果兩個服務器都在unix上,那麼你可以將數據庫轉儲到文件'mysqldump -u USER -p PASSWORD DATABASE> filename.sql'然後使用file_get_contents或curl來檢索文件,然後使用'mysqldump -u USER -p PASSWORD DATABASE < filename.sql'加載它或直接通過shell管道:'mysqldump --opt --compress --user = USERHERE --password = PWHERE --host = SOURCE.HOST.HERE SOURCE_DB_NAME | mysql --user = USERHERE --password = PWHERE --host = TARGET.HOST.HERE -D TARGET_DB_NAME -C TARGET_DB_NAME' –
@LawrenceCherone這是我最後的手段(給定效率如何低效)但謝謝。 – vvMINOvv