- 博客(24)
- 资源 (1)
- 收藏
- 关注
转载 windows 测试us级别性能的函数
LARGE_INTEGER li1, li2, freq;::QueryPerformanceFrequency(&freq);::QueryPerformanceCounter(&li1);......::QueryPerformanceCounter(&li2);Log("耗时: %I64d/%I64d s", li2.QuadPart - li1.
2012-05-30 15:25:36 749
转载 MySQL查询优化--数据类型与效率
这一部分提供了如何选择数据类型来帮助提高查询运行速度的一些指导: 在可以使用短数据列的时候就不要用长的。如果你有一个固定长度的CHAR数据列,那么就不要让它的长度超出实际需要。如果你在数据列中存储的最长的值有40个字符,就不要定义成CHAR(255),而应该定义成CHAR(40)。如果你能够用MEDIUMINT代替BIGINT,那么你的数据表就小一些(磁盘I/O少一些),在计算过程中
2012-05-16 13:53:20 499
转载 MySQL查询优化系列讲座之查询优化器
当你提交一个查询的时候,MySQL会分析它,看是否可以做一些优化使处理该查询的速度更快。这一部分将介绍查询优化器是如何工作的。如果你想知道MySQL采用的优化手段,可以查看MySQL参考手册。 当然,MySQL查询优化器也利用了索引,但是它也使用了其它一些信息。例如,如果你提交如下所示的查询,那么无论数据表有多大,MySQL执行它的速度都会非常快:SELECT * F
2012-05-16 13:52:54 398
转载 五款常用mysql slow log分析工具的比较
mysql slow log 是用来记录执行时间较长(超过long_query_time秒)的sql的一种日志工具.启用 slow log有两种启用方式:1, 在my.cnf 里 通过 log-slow-queries[=file_name]2, 在mysqld进程启动时,指定--log-slow-queries[=file_name]选项比较的五款常用工具my
2012-05-16 13:51:40 508
转载 Mysql数据库的索引分析和优化
一、什么是索引? 索引用来快速地寻找那些具有特定值的记录,所有MySQL索引都以B-树的形式保存。如果没有索引,执行查询时MySQL必须从第一个记录开始扫描整个表的所有记录,直至找到符合要求的记录。表里面的记录数量越多,这个操作的代价就越高。如果作为搜索条件的列上已经创建了索引,MySQL无需扫描任何记录即可迅速得到目标记录所在的位置。如果表有1000个记录,通过索引查找记录至少要比顺序扫
2012-05-16 12:43:28 429
转载 SQLite——查询处理及优化(深度精华)
查询处理及优化是关系数据库得以流行的根本原因,也是关系数据库系统最核心的技术之一。SQLite的查询处理模块非常的精致,而且很容易移植到不支持 SQL的存储引擎,Berkeley DB最新的版本已经将其完整的移植过来。本文将简要的讨论一下SQLite的查询处理及优化。 查询处理一般来说,包括词法分析、语法分析、语义分析、生成执行计划以及计划的执行几个部分。SQLite的词法分析器是手工写
2012-05-15 10:20:10 2815
转载 mysql优化(1)show命令 慢查询日志 explain profiling(查看CPU、DISK I\O等信息)
目录一、优化概述二、查询与索引优化分析1性能瓶颈定位Show命令慢查询日志explain分析查询profiling分析查询 2索引及查询优化三、配置优化1) max_connections2) back_log3) interactive_timeout4)
2012-05-15 10:11:24 3813
转载 SQLITE 查询分析器---高性能编写SQL
Small. Fast. Reliable.Choose any three.About Sitemap Documentation Download License News Support The SQLite Query PlannerThis docume
2012-05-15 09:52:08 3077
转载 sql 转义字符
在表PersonalMember中查找strloginname字段中含有"["的记录。 一、搜索通配符字符的说明可以搜索通配符字符。有两种方法可指定平常用作通配符的字符: 使用 ESCAPE 关键字定义转义符。在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符。例如,要搜索在任意位置包含字符串 5% 的字符串,请使用:WHERE ColumnA LIKE '%
2012-05-15 09:51:17 6988
转载 安装chromium
Ref: http://www.chromium.org/developers/how-tos/build-instructions-windowsRef:http://trac.webkit.org/wiki/Chromium 环境搭建:1、安装 VS2010 SP1,下载地址:http://go.microsoft.com/fwlink/?LinkId=2107
2012-05-13 08:02:02 3400
转载 sql 调优-sql 的limit
加个例子:delete * from table where accesstime 类似小根堆取数据删除,效率高SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset mysql> SELECT * FROM table LIMIT 5,10; // 检索记录行 6-15//为了检索从某
2012-05-11 16:03:01 519
转载 【设计模式】简单工厂,工厂方法,抽象工厂
简单工厂,工厂方法,抽象工厂都属于设计模式中的创建型模式。其主要功能都是帮助我们把对象的实例化部分抽取了出来,优化了系统的架构,并且增强了系统的扩展性。本文是本人对这三种模式学习后的一个小结以及对他们之间的区别的理解。简单工厂简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。不修改代码的话,是无法扩展的。工厂方法
2012-05-07 12:12:11 517
转载 XP下安装gVim,外加Ctags,Taglist,cscope等插件的配置
1、下载gvim 并安装http://www.vim.org/download.php#pc 2、下载 ctagshttp://ctags.sourceforge.net/ 下的Source and binary for Windows 98/NT/2000/XPctags58.zip我把它解压到...
2012-05-06 22:43:20 1614
转载 关于 Vim 补全模式
---- Vim 一共提供了 15 种自动补全的模式(:help ins-completion)。其中有两种的补全列表内容与另外两种相同,只是排序不同,这 15 种模式: 1 文字编辑用的 3 种: ---- 文字编辑显然是不用 Vim 的,所以这三种模式比较悲催,我从没用过: K 模式 (Vim 默认: CTRL-X CTRL-K) -- 字典补全,
2012-05-06 22:39:02 1068
转载 python 验证 sqlite数据库隔离级别
sqlite3支持三种数据库锁级别,也叫隔离级别。下面代码中我们对数据库中task表进行更新,然后由另一个线程读取这个表的数据import loggingimport sqlite3import sysimport threadingimport timelogging.basicConfig( level=logging.DEBUG, fo
2012-05-03 19:29:49 4822
转载 事务 与 并发 成反比
防止与锁定相关的性能问题调整锁定以实现并发性和数据完整性时,应考虑下列准则:频繁使用 COMMIT 语句来创建较小的工作单元以使许多用户并发访问数据。当应用程序在逻辑上一致时,即当更改的数据一致时,包括COMMIT 语句。当发出 COMMIT 时,释放锁定,与声明了WITH HOLD 的游标相关的表锁定除外。在发出 COMMIT 语句之前,应先关闭 CURSOR WITH
2012-05-03 19:15:58 539
转载 再谈 事务 与 io
InnoDB uses its log to reduce the cost of committing transactions. Instead of flushing the buffer pool to disk after each transaction commits, it logs the transactions.----不是同步提交到硬盘,而是先写到缓存中,通过事务日志来保证
2012-05-03 19:14:54 887
转载 事务与io
innodb引擎通过缓存技术,将常用的数据和索引缓存到内存中,这样在读取数据或者索引的时候就减少磁盘io来提高性能。 innodb修改数据的时候也只是先修改下buffer pool中的数据,并不是当一个事务提交后将buffer pool中的数据刷新到磁盘中,而是将修改信息记录到事务日志中去,这样做的目的还是尽量减少磁盘的io。 这里先解释下磁盘读写的两个概念:连续读写和随
2012-05-03 19:13:14 1196
转载 数据库 事物 与 并发 事物隔离等级
一、数据库事务的定义数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作。事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性、一致性、隔离性和持久性)属性。
2012-05-03 19:04:11 866
转载 数据库 并发控制 常见锁
封锁 (数据库)维基百科,自由的百科全书跳转到: 导航,搜索汉漢▼封锁是一项用于多用户同时访问数据库的技术,是实现并发控制的一项重要手段,能够防止当多用户改写数据库时造成数据丢失和损坏。当有一个用户对数据库内的数据进行操作时,在读取数据前先锁住数据,这样其他用户就无法访问和修改该数据,直到这一数据修改并写回数据库解除封锁为止。
2012-05-03 18:01:05 4516
转载 数据库事物隔离级别
补充:1、脏读:事物一读到了事物二尚未提交的数据(如果事物二失败回滚的情况下,则事物一读到的数据则是无效的,或者说垃圾) 产生级别:读未提交 解决需要级别: 读已提交 2、不可重复读:事物一在二次或多次读取数据时,读到了不同的数据。原因是事物二在中间修改了其中的数据。 产生级别:读已提交
2012-05-03 17:59:29 635
转载 数据库事物并发---事物隔离机制
数据库事物并发---事物隔离机制(2010-09-06 13:38:37)转载▼标签:杂谈 ISOLATIONLEVELSSQL规定了以下隔离级别:ReadUncommited: 读已提交的。ReadCommited:仅读已提交的数据。显然,可以防止脏读。但是它不能保证此数据在本事务完成之前不被其他事务修改,所以有可能
2012-05-03 17:28:39 1121
转载 sql ---- 未提交的 事物 的真相
Stages in Processing DML StatementsAt this point, meet yet another “behind-the-scenes” player in Oracle transaction processing—the rollback segment. The rollback segment is a database object in Orac
2012-05-03 17:12:00 1963
转载 SQLite—参数绑定和重执行已编译语句
语句参数(statementparameters)是指插入到SQL命令字符串中的特殊字符,他们作为临时占位符。当一条语句在prepare之后,尚未执行之前,可以给这些占位符绑定指定的值。参数符号(ParameterTokens) 语句参数一共有5种类型,它们跟随SQL命令字符串一起被传入到sqlite3_prepare函数。 (1)? 一个自动索引的匿名参数,如果一条语句中含有多个
2012-05-02 13:41:54 6728 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人