利用ado.net 实现百万级的数据复制备份
现在的需求是利用c# ado.net 将数据从A库的表中提取出来备份到B库的表中
一个月执行一次
一次大概有百万行的数据
字段很简单 一般只有2到3个字段
我现在实现的方法是一次性读取到dataset中
然后在一条条插入到数据库中
问题有2个:
1.一次性读出来 内存占用很大,而且内存中可能会丢失(我测了一次 用了500M)
2.插入太慢 测试的时候20分钟才插入了5000条
我自己的想法:
针对第一个问题:我考虑根据某个字段做分页,然后分批次的读取到内存中,循环处理,可是这样可能会出现漏查的情况 (中间有新数据插入)
针对第二个问题目前还没有好的解决思路
求大神们帮忙看看
谢谢