ChinaUnix.net
相关文章推荐:

innoDB 高并发insert innodbautoinclockmode

在sybase iq下开发C嵌入式, 我执行多个并发任务,每个任务一开始要往日志里面插入日志记录, 几乎是同一时间执行这些日志插入, 结果每次都有产生死锁的问题, 返回码为 -21 于是在插入的时候加了一段代码 if(sqlca.sqlcode == -21) { sleep(1) goto 到插入语句; } 结果几个任务程序同时停留在 sleep状态 绝望了!!

by xgwx - Sybase - 2010-08-06 11:29:24 阅读(7373) 回复(14)

相关讨论

请问有没有像 oracle 中的那种 row share 模式的允许并发写入的方法? 我自己的摸索是,假设 lock table t_test in share mode 的话,据文档说,别的进程只有读权限没有写权限,然后 set lock mode to wait ,即便不死锁,也是假并发。如果在 wait 后加上时间限制,倒是可以避免死锁,但可能导致插入失败重做一遍。 请大家介绍一下并发写入的经验,谢谢。

by ikb - Informix - 2005-04-18 22:10:04 阅读(1259) 回复(2)

个人理解:insert buffer 加速了插入速度,同时有几个疑问: 1.buffer的merge(合并)过程效率如何,能否检查到状态? 2.在合并未完成的状态下,未刷新到磁盘的数据能查询到吗? 3.在关闭mysql后,show innodb status 中得insert buffer行,inserts值为0,但如 果有未刷新的buffer将继续刷新,如何知道他是否结束? 4.在重启后会继续刷新,而这段buffer存放在缓存中,在服务器关闭过程中,这些数据 写入磁盘文件?...

by devilkin0312 - MySQL - 2012-01-06 10:35:21 阅读(1918) 回复(2)

skip to main | skip to sidebar High Availability MySQL Wednesday, December 10, 2008 innodb insert performance Stop reading now if you don't like handwaving. I have taken the Tokutek challenge and run iibench. This test matches behavior that occasionally matters to me: reloading all tables of a database via insert statements, alter table requires a copy of the table to be made and all inde...

by tclwp - MySQL文档中心 - 2009-07-13 15:35:27 阅读(1626) 回复(0)

一、PostgreSQL的多版本实现(基于8.4.1版本) PostgreSQL采用堆+B+树索引(忽视R树、哈希、GiST等不常用的索引)的存储结构,堆与索引的存储模式不同。 堆中记录包含版本化信息,PostgreSQL不区分记录的最新版本或老版本,都存储在堆中。简单的说,堆中每条记录头上记录t_xmin和t_xmax两个属性,分别表示创建与删除这一版本的事务ID,另外记录t_ctid属性,表示该记录下一个更新的版本的RID,即记录的多个版本构成从最老到最新的单...

by menyuchun - PostgreSQL - 2010-10-20 13:15:11 阅读(2359) 回复(1)

本帖最后由 cenalulu 于 2012-07-23 16:18 编辑 例如我对表t1,进行同一时刻插入500百条语句。 谁最先插入? 并发的情况是怎样的? 怎样做测试可以看到?

by zhangshengdong - MySQL - 2012-07-25 23:20:52 阅读(2164) 回复(9)

多版本并发控制:PostgreSQL vs innodbChinaUnix网友:风清扬   多版本并发控制技术被很多数据库或存储引擎采用,如Oracle,MS SQL Server 2005+, PostgreSQL, Firebird, innodb, Falcon, PBXT, Maria等等。新的数据库存储引擎,几乎毫无例外的使用多版本而不是单版本加锁的方法实现并发控制,可以说多版本已经成为未来的发展趋势。   虽然都是多版本,但不同的系统的实现却有很大不同。在开源数据库领域最负盛名的两个系统Pos...

by kns1024wh - 杂志文章 - 2009-12-08 09:29:52 阅读(3529) 回复(1)

innodb引擎对于巨量数据有强大的优势。特别是ROW LOCK的设计,即使多线程同时修改表中的多处数据,也不会造成锁死和等待。好处我就不多说了。 但是如果在innodb中大量使用 insert…SELECT这种批量插入的语句,innodb的优势便很遗憾的无法发挥了。为什么?因为MySQL为了保证Log和 Replication阵列的正常工作,就必须按顺序记录下所有数据插入记录,以保证当数据库阵列中的其他数据库通过Log建立数据库镜像的正确性。其前 提就是记录...

by wujing168 - Linux文档专区 - 2009-08-04 15:51:28 阅读(834) 回复(0)

正式环境上的innodb表如题, 4g内存, intel至强1.6cpu, insert和update很慢, 在mysql>下单条insert/update都很慢1000行4列的表update要3.6秒, select没有问题, 关闭自动提交(set autocommit=0)也很快, 但是commit的时候又很慢 myisam的表insert/update都很快 my.cnf里的主要参数如下 公共和myisam部分 [mysqld] port = 3306 socket = /tmp/mysql.sock skip-locking key_buffer = 768M max_allowed_packet ...

by reiliay - MySQL - 2008-11-15 13:41:47 阅读(6112) 回复(5)

能否将表中的数据备份成一条条insert into 的语句?

by c953131 - SQL server - 2003-04-21 17:11:28 阅读(2876) 回复(1)

表里对经常做where条件的字段做了index,并且基数都很大,但是slow query中有时会出现操作缓慢的记录(超过slow-query的阈值2秒),用 mysql> 单独执行这些语句,都是立即完成的,没有等待 为什么有时慢呢? Slow query里的记录: Query_time: 2 Lock_time: 0 Rows_sent: 0 Rows_examined: 0 [ 本帖最后由 bigcat_eat_rat 于 2008-11-12 10:26 编辑 ]

by bigcat_eat_rat - MySQL - 2008-11-17 22:32:27 阅读(4219) 回复(18)