mysql 索引和查询优化
摘要:对于任何DBMS,索引都是进行优化的最主要的因素。对于少量的数据,没有合适的索引影响不是很大,但是,当随着数据量的增加,性能会急剧下降。如果对多列进行索引(组合索引),列的顺序非常重要,MySQL仅能对索引最左边的前缀进行有效的查找。 例如:假 设存在组合索引it1c1c2(c1,c2),查询语句s
阅读全文
posted @
2016-04-21 22:39
馒头斋
阅读(272)
推荐(0) 编辑
数据库锁:各种锁
摘要:一、悲观锁和乐观锁 我们经常在开发中遇到数据库并发处理时,处理不一致的问题。需要对程序做并发控制。典型的并发时出现的冲突有两种:1、丢失更新:一个事务的更新覆盖了其它事务的更新结果,就是所谓的更新丢失。例如X=0 A1把X=X+1 A2也设置X=X+1 如果A1和A2同时执行,可能出现最终X=1的情
阅读全文
posted @
2016-03-29 15:20
馒头斋
阅读(340)
推荐(0) 编辑
mysql primary partition分区
摘要:尝试把数据库一个表分区 结果出现 ERROR 1503 A PRIMARY KEY must include all columns in the table's partitioning function google一下,查出以下解释,来自官方文档,意思是在分区的表达式中的条件字段必须是那个表定
阅读全文
posted @
2016-03-23 11:49
馒头斋
阅读(566)
推荐(0) 编辑
mysql replication常见错误整理
摘要:这篇文章旨在记录MySQL Replication的常见错误,包括自己工作中遇到的与网友在工作中遇到的,方面自己及别人以后进行查找。每个案例都是通过Last_IO_Errno/Last_IO_Error或者Last_SQL_Errno/Last_SQL_Error给出错误关键信息,所以以后查找时只需
阅读全文
posted @
2016-03-22 17:09
馒头斋
阅读(368)
推荐(0) 编辑
mysql无法启动,报错 Can't start server: can't create PID file: No space left on device
摘要:然后看mysql日志文件 出现Can't start server: can't create PID file: No space left on device 这个错误。 提示磁盘空间不足 后用df -h 命令查看 竟然发现磁盘容量全部用完了,于是要查看是谁占用了 用命令: find /tmp
阅读全文
posted @
2016-02-29 16:43
馒头斋
阅读(560)
推荐(0) 编辑
MYSQL 权限设置查询
摘要:mysql> GRANT RELOAD, SUPER, REPLICATION SLAVE ON *.* TO 'repl'@'192.168.3.%' IDENTIFIED BY PASSWORD 'mysql'; ERROR 1372 (HY000): Password hash should
阅读全文
posted @
2016-02-25 17:26
馒头斋
阅读(394)
推荐(0) 编辑
关于Relay Log无法自动删除的问题
摘要:本文介绍了一次运维实践中relay-log长期无法自动删除的原因和解决过程 背景: 今天在运维一个mysql实例时,发现其数据目录下的relay-log 长期没有删除,已经堆积了几十个relay-log。 然而其他作为Slave服务器实例却没有这种情况。 现象分析 通过收集到的信息,综合分析后发现r
阅读全文
posted @
2016-02-23 10:43
馒头斋
阅读(843)
推荐(0) 编辑
Xtrabackup流备份与恢复
摘要:Xtrabackup是MySQL数据库的备份不可多得的工具之一。提供了全备,增备,数据库级别,表级别备份等等。最牛X的还有不落盘的备份,即流备份方式。对于服务器上空间不足,或是搭建主从,直接使用流式备份大大简化了备份后的压缩复制所带来的更多开销。Xtrabackup支持tar格式以及xbstream
阅读全文
posted @
2016-02-22 14:35
馒头斋
阅读(6843)
推荐(0) 编辑
mysqldump备份数据库时排除某些库
摘要:说明:使用mysqldump –all-databases会导出所有库。但如果做主从,从主库dump出数据时,我们是不需要也不想要information_schema 和 mysql 库的。数据库少的情况下还可以通过/usr/local/mysql/bin/mysqldump -uroot -p -
阅读全文
posted @
2016-02-22 10:50
馒头斋
阅读(4952)
推荐(0) 编辑
mysql 查看所有存储过程
摘要:转载地址:http://zhuixue.iteye.com/blog/375353 查询数据库中的存储过程 方法一: select `name` from mysql.proc where db = 'your_db_name' and `type` = 'PROCEDURE' 方法二: show
阅读全文
posted @
2016-02-18 09:40
馒头斋
阅读(5275)
推荐(2) 编辑
mysql now() sysdate() curdate()区别
摘要://mysql中now,curdate,curtime,sysdate区别 1.now 返回的时间,格式如下:2013-01-17 10:57:13 mysql> select now(),sleep(5),now();+---------------------+----------+------
阅读全文
posted @
2016-02-16 15:20
馒头斋
阅读(6107)
推荐(2) 编辑
MYSQL建立索引需要注意几点
摘要:1.建立索引的时机:若表中的某字段出现在select、过滤、排序条件中,为该字段建立索引是值得的。2.对于like '%xxx'的模糊查询,普通的索引是无法满足的,需要建立全文索引。3.对于有多个条件的,比如: "...where a=xxx and b=yyy","...where a=xxx o
阅读全文
posted @
2016-02-04 13:19
馒头斋
阅读(1185)
推荐(0) 编辑
order by多个字段对索引的影响
摘要:某前台sql语句,简化后如下SELECT products_name,products_viewed FROM `products_description` ORDER BY products_viewed DESC,products_name LIMIT 0,20; 该语句经常大批量出现在慢日志中
阅读全文
posted @
2016-02-04 13:16
馒头斋
阅读(1668)
推荐(0) 编辑
不要随随便便的distinct和order by
摘要:相关查询非常慢,通过程序拿到了相关sqlexplainexplain SELECT DISTINCT(o.orders_id), o.oa_order_id, customers_email_address, o.order_type, ot.text AS total_value, o.track
阅读全文
posted @
2016-02-04 13:14
馒头斋
阅读(319)
推荐(0) 编辑
where group by联合使用
摘要:where group by联合使用 select 列a,聚合函数 from 表名 where 过滤条件 group by 列a having 过滤条件 group by 字句也和where条件语句结合在一起使用。当结合在一起时,where在前,group by 在后。即先对select xx fr
阅读全文
posted @
2016-02-04 13:12
馒头斋
阅读(3615)
推荐(0) 编辑
查看事务锁:innodb_trx+innodb_locks+innodb_lock_waits
摘要:当出现:ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction,要解决是一件麻烦的事情;特别是当一个SQL执行完了,但未COMMIT,后面的SQL想要执行就是被锁,超时结束,DBA光从数据库无法着手找出源头...
阅读全文
posted @
2016-01-21 12:15
馒头斋
阅读(1283)
推荐(0) 编辑
replicate-do-db参数引起的MySQL复制错误及处理办法
摘要:replicate-do-db配置在MySQL从库的my.cnf文件中,可以指定只复制哪个库的数据。但是这个参数有个问题就是主库如果在其他的schema环境下操作,其binlog不会被从库应用,从而出现异常。可以简单的测试一下 --replicate-do-db参数引起的MySQL复制错误,步骤如下...
阅读全文
posted @
2016-01-21 10:46
馒头斋
阅读(2454)
推荐(1) 编辑
mysql同步 小问题
摘要:由于历史遗留问题,我们的MySQL主从库的表结构不一致,主库的某个表tableA比从库表tableA少了一个字段。当尝试在主库上更改表结构时,这行alter语句会随着binlog同步到从库,如果从库执行这行语句时出错,主从同步线程就会自动停止,那样只能人为手动处理错误,然后再启动slave上的主从同...
阅读全文
posted @
2016-01-21 10:45
馒头斋
阅读(216)
推荐(0) 编辑
通过 XtraBackup 实现不停机不锁表搭建主从同步
摘要:简介Xtrabackup是由 Percona 开发的一个开源软件,可实现对 InnoDB 的数据备份,支持在线热备份(备份时不影响数据读写)。备份时,Xtrabackup 会将 Master 的 binlog 信息记录在 xtrabackup_slave_info 文件中,通过此信息可以方便的搭建主...
阅读全文
posted @
2016-01-20 10:59
馒头斋
阅读(853)
推荐(0) 编辑
grep -A -B选项详解和mysqlbinlog
摘要:grep的-A-B-选项详解(转)[@more@]grep能找出带有关键字的行,但是工作中有时需要找出该行前后的行,下面是解释1. grep -A1 keyword filename找出filename中带有keyword的行,输出中除显示该行外,还显示之后的一行(After 1)2. grep -...
阅读全文
posted @
2016-01-19 11:19
馒头斋
阅读(1395)
推荐(0) 编辑