我正在寻找一种有效的方法来保持多个数据库(在不同的服务器上)与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