数据库
文章平均质量分 79
xiaoxuan2015
这个作者很懒,什么都没留下…
展开
-
加锁与事务MySQL
/*MYSQL的事务处理主要有两种方法。1、用begin,rollback,commit来实现begin 开始一个事务rollback 事务回滚commit 事务确认2、直接用set来改变mysql的自动提交模式MYSQL默认是自动提交的,也就是你提交一个QUERY,它就直接执行!我们可以通过set autocommit=0 禁止自动提交set autocomm原创 2016-01-08 14:22:10 · 435 阅读 · 0 评论 -
SQL提高查询效率【in、not in、between、like】等条件讲述
在使用SQL语句查询数据库记录时,如果要查询相同的内容,有着不同的多种方法。 仍然,尽管使用多种方法可以得到相同的结果,但是,如果您使用不同的方法,在执行效益上是截然不同的。因此,我们得仔细考虑,如果要查询相同结果,该使用哪种语句,执行效益比较好。 这就是SQL语句的优化。 以下优化语句,针对MS Sql数据库。 1、对查询进行优化,应尽量避免全表扫描,首先应考虑在 whe转载 2017-04-01 16:23:44 · 7854 阅读 · 0 评论 -
mysql处理海量数据时的一些优化查询速度方法
mysql处理海量数据时的一些优化查询速度方法最近一段时间由于工作需要,开始关注针对Mysql数据库的select查询语句的相关优化方法。由于在参与的实际项目中发现当mysql表的数据量达到百万级时,普通SQL查询效率呈直线下降,而且如果where中的查询条件较多时,其查询速度简直无法容忍。曾经测试对一个包含400多万条记录(有索引)的表执行一条条件查询,其查询时间竟然高达40几秒原创 2017-02-27 14:11:06 · 343 阅读 · 0 评论 -
MySQL数据库性能优化之存储引擎选择
MyISAM 1.特性 不支持事务:MyISAM存储引擎不支持事务,所以对事务有要求的业务场景不能使用 表级锁定:其锁定机制是表级索引,这虽然可以让锁定的实现成本很小但是也同时大大降低了其并发性能 读写互相阻塞:不仅会在写入的时候阻塞读取,MyISAM还会在读取的时候阻塞写入,但读本身并不会阻塞另外的读 只会缓存索引:MyISAM可以通过key_buffer缓存以大大原创 2016-05-06 16:07:38 · 3026 阅读 · 0 评论 -
MySQL 数据库性能优化之SQL优化
优化目标 1.减少 IO 次数 IO永远是数据库最容易瓶颈的地方,这是由数据库的职责所决定的,大部分数据库操作中超过90%的时间都是 IO 操作所占用的,减少 IO 次数是 SQL 优化中需要第一优先考虑,当然,也是收效最明显的优化手段。 2.降低 CPU 计算 除了 IO 瓶颈之外,SQL优化中需要考虑的就是 CPU 运算量的优化了。order by, group by,原创 2016-05-06 16:05:38 · 3057 阅读 · 0 评论 -
MySQL 数据库性能优化之索引优化
这是 MySQL数据库性能优化专题 系列的第三篇文章:MySQL 数据库性能优化之索引优化 索引为什么能提高数据访问性能? 很多人只知道索引能够提高数据库的性能,但并不是特别了解其原理,其实我们可以用一个生活中的示例来理解。 我们让一位不太懂计算机的朋友去图书馆确认一本叫做《MySQL性能调优与架构设计》的书是否在藏,这样对他说:“请帮我借一本计算机类的数据库书籍,是属于 MyS原创 2016-05-06 16:04:22 · 1359 阅读 · 0 评论 -
MySQL 数据库性能优化之表结构优化
这是 MySQL数据库性能优化专题 系列的第二篇文章:MySQL 数据库性能优化之表结构优化 由于MySQL数据库是基于行(Row)存储的数据库,而数据库操作 IO 的时候是以 page(block)的方式,也就是说,如果我们每条记录所占用的空间量减小,就会使每个page中可存放的数据行数增大,那么每次 IO 可访问的行数也就增多了。反过来说,处理相同行数的数据,需要访问的 page 就会减原创 2016-05-06 16:03:16 · 1160 阅读 · 0 评论 -
MySQL 数据库性能优化之缓存参数优化
这是 MySQL数据库性能优化专题 系列的第一篇文章:MySQL 数据库性能优化之缓存参数优化 数据库属于 IO 密集型的应用程序,其主要职责就是数据的管理及存储工作。而我们知道,从内存中读取一个数据库的时间是微秒级别,而从一块普通硬盘上读取一个IO是在毫秒级别,二者相差3个数量级。所以,要优化数据库,首先第一步需要优化的就是 IO,尽可能将磁盘IO转化为内存IO。本文先从 MySQL 数据原创 2016-05-06 16:02:03 · 1247 阅读 · 0 评论 -
数据库优化
新的关于数据库的内容。查询速度慢的原因很多,常见如下几种: 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)2、I/O吞吐量小,形成了瓶颈效应。3、没有创建计算列导致查询不优化。4、内存不足5、网络速度慢6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)8、sp_lock,原创 2016-04-25 11:16:34 · 8828 阅读 · 1 评论 -
锁与事务处理
1. 理解ACID 特性 1.1 A (Atomicity) 原子性 事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。 打个比方,张三从他的工行卡里转账10万元到农行卡. 执行这个过程, 如果不计手续费, 只有下列两种情况: A:转账失败, 工行卡和农行卡的金额保持不变B:转账成功, 以下两个语句组为一个单元执行完成。1) UPDATE G原创 2016-03-10 17:22:06 · 1303 阅读 · 0 评论 -
sql修改以及添加表字段
1.增加字段 alter table docdsp add dspcode char(200) alter table tbl add meet_group int22.删除字段 ALTER TABLE table_NAME DROP COLUMN column_NAME3.修改字段类型 ALTER TABLE table_name转载 2015-12-29 14:58:01 · 733 阅读 · 0 评论 -
用SQL语句添加删除修改字段
1.增加字段 alter table docdsp add dspcode char(200) alter table tbl add meet_group int22.删除字段 ALTER TABLE table_NAME DROP COLUMN column_NAME3.修改字段类型 ALTER TABLE table_name翻译 2015-12-29 14:40:16 · 298 阅读 · 0 评论 -
PHP事务
//数据库连接$conn = mysql_connect('localhost', 'root', '');mysql_select_db('test', $conn);mysql_query("SET NAMES GBK");/*支持事务的表必须是InnoDB类型一段事务中只能出现一次:mysql_query('START TRANSACTION');//开始事务原创 2016-01-08 14:18:51 · 369 阅读 · 0 评论 -
redis 配置 翻译
1. Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程 daemonize no2. 当Redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,可以通过pidfile指定 pidfile /var/run/redis.pid3. 指定Redis监听端口,默认端口为6379,作者在自己的一篇...翻译 2018-05-12 23:40:25 · 304 阅读 · 0 评论