项目需要,把股票数据写数据库,暂时在试mysql,
replace了300万条数据进同一个表中(每行10个字段,全float数值型),
程序当中是开了事务处理的,
根据mysql的Com_commit和Com_begin整个处理过程只增加了1来看,肯定是开事务操作了,
但是真的实在是太慢了,整个过程用了50分钟
数据库是localhost,所以应该不是网速问题,
我看handler_commit也被调了足足300万次,是不是不应该这样,明明已经开启事务处理了啊!这个值整个过程难道不是只应该增加1吗!
replace了300万条数据进同一个表中(每行10个字段,全float数值型),
程序当中是开了事务处理的,
根据mysql的Com_commit和Com_begin整个处理过程只增加了1来看,肯定是开事务操作了,
但是真的实在是太慢了,整个过程用了50分钟
数据库是localhost,所以应该不是网速问题,
我看handler_commit也被调了足足300万次,是不是不应该这样,明明已经开启事务处理了啊!这个值整个过程难道不是只应该增加1吗!
解决方案 »
- mysql c api 报错 Commands out of sync
- mysql可以实现一个数据库,只体现为一个文件吗?就象ms sqlserver那样?
- 这个能否用触发器?
- 请大家帮忙,mysql-administrator 还原mysql数据库的问题,有用过的帮帮忙哦~!
- 有人做过充值卡系统吗?用户名和卡的值金额要建几张表,都应该有什么字段?
- 如何解决mysql 4.0.21中的中文问题!
- 关于postgresql数据库统计的问题,急!急!急!,在线等待
- mysql 与 ms-sql server 能互相转换吗?
- mysql
- Linux PID 与 MySql的processlist id的对应关系是什么??
- 请教:如何查询每年中最小的10条记录?
- IP address '**.**.**.**' could not be resolved: 请求的名称有效,但是没有找到
mysql默认是开启 autocommit的,也就是autocommit = 1,所以语句会自动提交。
com_commit是在显式提交的时候,才会增加计数。而 handler_commit 有300万次,说明内部有实际提交了 300万次,也就是隐式的提交了300万次,这个收到 autocommit = 1的影响。
+--------------+
| @@autocommit |
+--------------+
| 1 |
+--------------+