使用C#将本地mysql数据库与在线mysql数据库同步的最佳方法是什么(其他解决方案,除了在本地创建mysql Dump并将其还原到在线mysql服务器上)。
答案 0 :(得分:1)
您可以在本地使用FEDERATED Storage Engine。
并不是说这是最好的,但是很容易设置。
如果您的MySQL服务器版本已经使用联邦引擎支持进行编译,那么MySQL Windows版本将具有什么缝隙。
FEDERATED存储引擎使您可以从远程MySQL访问数据 数据库而不使用复制或群集技术。查询一个 本地FEDERATED表自动从远程提取数据 (联合)表格。没有数据存储在本地表上。
来源https://dev.mysql.com/doc/refman/8.0/en/federated-storage-engine.html
但是您需要检查您的MySQL版本是否支持它并且FEDERATED存储引擎已激活。
SHOW ENGINES;
仅考虑需要从每个表中复制一个表,并使其成为联合存储引擎。
最好是为此创建一个单独的数据库。
这是一个创建表的示例。
CREATE TABLE `T1`(`A` VARCHAR(100),UNIQUE KEY(`A`(30)))
ENGINE=FEDERATED
CONNECTION='MYSQL://127.0.0.1:3306/TEST/T1';
然后您可以在该表中插入,更新和删除
答案 1 :(得分:0)
我建议您使用MySQL复制功能。
中找到更多信息。通过复制,可以将来自一台MySQL数据库服务器(主服务器)的数据复制到一台或多台MySQL数据库服务器(从服务器)。默认情况下,复制是异步的;从站不需要永久连接就可以接收来自主站的更新。根据配置,您可以复制数据库中的所有数据库,选定的数据库,甚至选定的表。