0

我们运行了一个查询,它是一个从 Select 语句中插入的语句,它实际上在几秒钟内完成 - 并且能够轻松插入 130 万条记录。

我们有新的要求。正在创建和插入的表现在必须存在于同一子网上的不同 mysql 服务器上。

如何才能做到这一点?最有效的方法是什么?我们是否应该在文件级别备份表,并将其复制到新服务器?

或者我们应该对两个数据库都运行一个查询,如果是这样 - 需要多长时间?

我们需要手动执行此过程 -

这是我们用来执行此操作的当前代码的示例:

$populateNewTable = "insert into tbl_free_minutes_".strtolower(date("M")).date("Y")." (cust_id,telephone_number,state,created_datetime,plan_id,requested_planid) SELECT id,telephone_number,state,created_datetime,plan_id,requested_planid FROM tbl_customer WHERE created_datetime <= '".$date." 23:59:59' AND account_status IN ( 'Active', 'ActiveLL','Suspend') AND  plan_id IN ('14','13','15','16','17','19','20','21','22','23','24','60','26', '27','28','29','30','31','32','33','34','38','39','40','44','45','46','47','48', '49','50','51','52','53','54','55','56','57','58','59','35','36','66','63','64', '65','67','68','69',76,77,78,79,82,83,84,85,86,87,88,89,93,94,95,96) and unlimited_plan != 'Y' ";

萨斯

4

1 回答 1

4

我建议使用“SELECT ... INTO OUTFILE”在第一台服务器上提取您的数据。
然后将查询创建的文件传输到第二台服务器。
最后,在第二台服务器上使用“LOAD DATA INFILE”将数据加载到表中。

一些链接: http:
//dev.mysql.com/doc/refman/5.5/en/select-into.html
http://dev.mysql.com/doc/refman/5.5/en/load-data.html

于 2012-06-01T16:56:02.907 回答