首页 > mysql海量数据的插入和查询

mysql海量数据的插入和查询

场景

数据库A,其中有三张表,t1,t2,t3,分别记录了用户的行为数据,且三者有关联关系

数据库B,需要把A库的t1,t2,t3的数据导入进B库中(因为只有查询权限,没有配置主从的权限)

难点

库A的三张表都是高速插入的,可能一个小时都有几万条数据(也许也没有那么多)

问:如何实现复制库A的数据到库B中?

使用的开发环境是:phpmysql

我想到的办法

1.写一个php的死循环

2.在死循环里读取库A的数据,每次100条,导入库B后,记录其中最大的ID值

3.睡眠5秒

4.再次执行的循环的时候,从最大的iD值往后查100条,导入库B,如果读取库A的数据小于100条的时候,导入库B工作完成后,就睡眠10秒

如果连续3次库A都没有更新数据,那么就睡眠20秒,如此反复,最大睡眠30秒,这样

不知道我的想法是否靠谱,求各位老司机看看!!


你不停地插入A,又想复制到b自然是冲突的,

要是你A,B要同时插入的话可以这样做:
正在运行的程序想插入数据库的时候,先查询A,不存在则同时插入到A和B,然后慢慢把A中不存在于B中的数据插进来

要是丢弃A,要用B的话:
正在运行的程序想插入数据库的时候,插入之前查询A,不存在则插入到B,A中的数据慢慢插到B中去

【热门文章】
【热门文章】