我正在尝试将数据从内存中的DB1迁移到我的DB2上。为此,我使用的SymmetricDS配置方式是,当SymmetricDS启动时,它将执行从DB1到DB2的初始加载。此外,每当在DB1中发生某些数据修改时,都会将同样的修改拖到DB2中。
这就是我遇到问题的地方。SymmetricDS要求配置表或Sym表同时存在于DB1端和DB2端。
由于我的DB1是内存中的,所以这些配置表占用了大量内存。
因此,我想知道的是,是否有一种方法,将配置表与DB1端完全隔离在磁盘db中,并保留现有的功能?。
希望我能说清楚。
如有任何建议,将不胜感激。
发布于 2017-12-06 17:12:49
选项1:最小化运行时表占用。您可以积极地清除运行时表。例如,每10分钟清除一次,只保留10分钟的活动:
purge.retention.minutes=10
job.purge.incoming.cron=0 */10 * * * *
job.purge.outgoing.cron=0 */10 * * * *完全避免记录incoming_batch表:
incoming.batches.record.ok.enabled=false选项2:将SymmetricDS放在另一个数据库中。设置SymmetricDS指向数据库,如基于H2文件的数据库.这就是所有"SYM“表的去处。然后配置"jdbc“参数以加载到内存中的数据库中。例如,您可以加载到Apache中:
jdbc.db.url=jdbc:ignite:thin://localhost
jdbc.db.driver=org.apache.ignite.IgniteJdbcThinDriver
jdbc.db.user=
jdbc.db.password=然后,将用于加载数据的通道(如“默认”和“重新加载”通道)设置为"jdbc“。
发布于 2017-12-06 16:46:06
SymmetricDS 3.9将提供“只加载”功能,允许您加载到数据库中,并在磁盘上的H2数据库中创建sym表。这将允许您在没有任何sym表的情况下复制到您的D2。
发布于 2017-12-04 15:40:56
低挂果可使净化期缩短,即job.purge.period.time.ms参数由5d(秒- 7200000)降至数小时。对称性将清理所有成功同步的输出批(sym_outgoin_batch)和关联提取的数据(sym_data),更经常地保持较低的内存占用。
SymmetricDs允许将其表保存在另一个目录和/或模式中,这并不能真正解决您的问题。
https://stackoverflow.com/questions/47627446
复制相似问题