Mysql 效率问题后篇---远程数据访问---特慢!!

最近在开发中才发现的一个问题,用C 或者C++语言通过编程形式操作 远程的MySQL 数据库,(数据库放在一个空间中)它的效率都很低,测试:插入5000条(只有三个属性 code varchar(20) username(20) address(40))这样的数据,不管是通过MyODBC(5.1)还是通过 MySQL C API 的编程形式操作数据库都得花上 500 多秒,汗死我了,正常的通过JDBC访问的话也只需要5秒左右的,这个测试在 Mysql 5.0 和 MySQL 5.5都测试过,也都分别以 MyODBC 和 MySQL C API 的形式测试过,结果都是差不多的都在130 - 150秒之间徘徊,那位高手曾今遇到过这个问题了。或者懂得怎么解决的。。请发表一下见解,(最后我想说,不会是语句的问题的:测试语句就是一句 Insert Into tablename(xxx,xxx,xxx) vulues('xx','xxxx','xxxx') 插入语句,这个插入语句至于一个 for(int i=0;i<5000;i++) 中,所以不要考虑是编写代码的问题了。。代码就简单的插入语句。请高手们指点。。。谢谢。。。由于昨天高手wwwwa的方法 在 insert into 操作前加入 BeginTransaction() insert into ...
  commitTransaction() 这对本地的数据库是起作用了。。但是远程的MySQL数据库,插入操作还是很慢,(500秒啊)不要考虑这个网络问题了。。。网络再怎么的慢也不会有500秒那么夸张的,,那位高手。。请再指点指点

作者: asuo_asuo   发布时间: 2011-06-16

你一次插入这么多语句都是一次提交的,试试在你的循环中加i mod 100 =0 commit;看是否还有效率问题

作者: biandongfeng   发布时间: 2011-06-16