php+Mysql 大数据导入怎样提高效率?

数据库数据同步,迁移等其他操作时,会涉及到数据的转移,插入操作。如果是千万级别的数据操作,那么怎样提高插入效率呢??可能有人会说,用load方法简单高效。是的,但是如果是不同数据库之间的同步插入该怎么解决呢??也许你有很高明的办法,也许你一无所措。这里演示一种常规操作方法,仅供参考。

工具/原料

 
  • php开发运行环境;
  • 数据库系统;
  • 大数据资源。

方法/步骤

 
  1. 1

    优化SQL插入语句;

    比如循环一条一条插入,改成链接多个值进行插入。

    将:

    foreach($re as $it){

    $sql="insert into table (id,name) values(".$it['id'].","."$it['name'].")";

    mysql_query($sql);

    }

    改为:

    $sql="insert into table (id,name) values";          

    foreach($re as $it){          

    $str=    "'".$it['id']."','".$it['name']."'";           

    }           

    $sql .= "(".$str."),";           

    $sql2 = substr($sql,0,-1);          

    mysql_query($sql);

    php+Mysql 大数据导入怎样提高效率?
  2. 2

    打开mysql的配置文件,my.ini文件,并找到:max_allowed_packet项;

    php+Mysql 大数据导入怎样提高效率?
  3. 3

    将值修改大一点,具体根据自己需要修改。比如这里修改为:1G。

    php+Mysql 大数据导入怎样提高效率?
  4. 4

    重启mysql服务;

    php+Mysql 大数据导入怎样提高效率?
  5. 5

    如果运行页面提示内存溢出,可将值设大一点。

    Allowed memory size of 134217728 bytes exhausted (tried to allocate 132907287 bytes)

    php+Mysql 大数据导入怎样提高效率?
  6. 6

    这样,面对千万数据导入的时候,比原来那种方法至少快好多倍。

    END
 
经验内容仅供参考,如果您需

转载于:https://www.cnblogs.com/benpaodegegen/p/7365754.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值