mysql慢查询的奇异事件
打开mysql慢查询日志,发现有很多sql查询时间很短,明显不到0.01s的sql竟然也在慢日志查询里面,日志详细情况如下:# User@Host: otterpro[otterpro] @ [172.22.53.122] Id: 2061# Schema: otter Last_errno: 0 Killed: 0# Query_time: 0.000559 Lock_time: 0.000080 Rows_...
运维的常用命令
----查找字符串find epdres_center-solrcloud -type f | xargs grep 50412----查杀某个端口的进程ps -ef|grep redis|grep 6902|awk '{print $2}'|xargs kill -9----批量替换某文件的内容sed -i "s/67.102/51.172/g" sentinel.conf...
mysql主从同步机制
1、binlog+pos同步(默认为异步)从服务器通过IO进程读取主库的binlog,写入到relay_log中,从服务器通过sql running进程读取从库的relay_log,并写入到从库的bin_Log实现同步我们生产一般使用row模式,因为有些函数在使用mix和state模式可能会报错。2、半同步(5.5开始)半同步就是就是用户向mysql...
mysql进修
1、同步方式binlog和pos同步、异步、半同步、基于GTID同步、单线程同步、多线程同步2、关键参数配置innodb_buffer_pool_size、key_buffer_size、innodb_flush_log_at_trx_commit、bin、sync_binlog、innodb_file_per_table、character_set_server、max_connections、transaction_isolation隔离级别、默认...
分享MySQL的自动化安装部署的方法
有过MySQL运维的人应该都清楚,线上的MySQL一般都采用源码编译,因为这样才可以根据企业的各自需要选择要编译的功能,虽然MySQL的源码编译挺简单的,但是试想一下,如果你有几百台服务器同时要安装MySQL,难道你还一台台去手动编译、编写配置文件吗?这显然太低效了,本文讨论MySQL的自动化安装部署。1、制作符合自己...
优化 | MySQL全面快速优化参考
全面的MySQL快速优化参考
MySQL oak-online-alter-table工具使用初探
MySQL oak-online-alter-table工具使用初探
mysql备份的三种方式详解
备份的本质就是将数据集另存一个副本,但是原数据会不停的发生变化,所以利用备份只能回复到数据变化之前的数据。那变化之后的呢?所以制定一个好的备份策略很重要.一、备份的目的做灾难恢复:对损坏的数据进行恢复和还原需求改变:因需求改变而需要把数据还原到改变以前测试:测试新功能是否可用二、备份需要...
mysql 关于主键索引--节选丁奇博客
CREATE TABLE t ( a char(32) not null primary key, b char(32) not null, KEY idx1 (a,b), KEY idx2 (b,a) ) Engine=InnoDB;插入部分数据后可以看到idx1和idx2两个索引的大小相同。这说明idx1和idx2的内部结构是一样的,因此 不可能 是idx1在内部存为(a,b,a)。只要用户定义的索引字段中包含了主键中的字段,那么这个...
相同sql不同机器上效率差异case
一个用户问题,数据从ECS迁移到RDS,相同的语句,查询性能下降了几十倍。而实际上RDS这个实例在内存上的配置与原来ECS上的实例相当。本文简单说明这个case的原因及建议。用户反馈性能变慢的语句为 (修改了真实表名和列名)select count(1) from HR hr join H h on h.hid = hr.hid join A e on e.aid = h.eid jo...
慢查询优化及分析
一个用户反映线上一个SQL语句执行时间慢得无法接受。SQL语句看上去很简单(本文描述中修改了表名和字段名):SELECT count(*) FROM a JOIN b ON a.`S` = b.`S` WHERE a.`L` > '2014-03-30 00:55:00' AND a.`L` < '2014-03-30 01:00:00' ; 且查询需要的字段都建了索引,表结构如下:CREATE TABLE `a` ( `L` timesta...
autocommit=0引起的业务hang住 ---转自丁奇博客
背景有用户报告一个普通的select 语句被hang住了,执行超时。查明之后发现是autocommit使用不当导致。这里将case简化,说明复现步骤及原因。 复现session1 建表并插入数据:create table if not exists t(id int primary key, c int);set autocommit=0;insert into t values(1,1);insert into t values(2,2)...
MySQL5.6 PERFORMANCE_SCHEMA 说明
MySQL 5.5开始新增一个数据库:PERFORMANCE_SCHEMA,主要用于收集数据库服务器性能参数。并且库里表的存储引擎均为PERFORMANCE_SCHEMA,而用户是不能创建存储引擎为PERFORMANCE_SCHEMA的表。MySQL5.5默认是关闭的,需要手动开启,在配置文件里添加:[mysqld] performance_schema=ON从M...
找到MySQL服务器发生SWAP罪魁祸首
0、导读MySQL数据库服务器发生SWAP相信很多人都遇到过,如何找出元凶,又如何应对呢?2、问题交代我的朋友小芳(这次不是小明了,hoho),最近遇到了一个郁闷的问题:明明OS还有大量的空闲内存,可是却发生了SWAP,百思不得其解,她就来找我搬救兵了(嗯,我可不是派来的)。先看下SWAP是干嘛的,了...
优秀的MYSQL站点
MySQL常用工具相关网站:Devart: Database Management Software, Data AccessComponents, Developer ToolsMySQL backups and recovery software - zmanda Leader in opensource backupMySQL-FrontphpMyAdminMySQL社区Dimitri (dim) Tools HOMEPAGEIT168 -MySQL数据库专栏IT专家网 - M...
InnoDB行锁实现方式
mysql> create table tab_no_index(id int,name varchar(10)) engine=innodb;mysql> insert into tab_no_index values(1,'1'),(2,'2'),(3,'3'),(4,'4');Records: 4 Duplicates: 0 Warnings: 0复制代码表20-9 &nb...
mysql常见slave 延迟原因以及解决方法
一 序言在运维线上M-M 架构的MySQL数据库时,接收的比较多关于主备延时的报警:check_ins_slave_lag (err_cnt:1)critical-slavelag on ins:3306=39438相信slave 延迟是MySQL dba 遇到的一个老生长谈的问题了。先来分析一下slave延迟带来的风险 1. 异常情况下,主从HA无法切换。HA 软件...
mysql优化
一、硬件层的优化1 CPU:个数/核数/频率/线程数/一级cache/二级cache2 内存:容量与64-bits/带宽3 I/O:seek(>100次/秒)/read/write(>10–20MB/s)4网络:带宽/传输协议二、存储引擎优化1 InnoDB:1) innodb_buffer_pool_size :caching data and indexes in memory,可配置为可...
mysql状态查看 QPSTPS缓存命中率查看
mysql状态查看 QPS/TPS/缓存命中率查看运行中的mysql状态查看 对正在运行的mysql进行监控,其中一个方式就是查看mysql运行状态。 (1)QPS(每秒Query量) QPS = Questions(or Queries) / seconds mysql > show global status like 'Question%'; ...
比较全面的MySQL优化参考
1、硬件层相关优化 1.1、CPU相关 在服务器的BIOS设置中,可调整下面的几个配置,目的是发挥CPU最大性能,或者避免经典的NUMA问题: 1、选择Performance Per Watt Optimized(DAPC)模式,发挥CPU最大性能,跑DB这种通常需要高运算量的服务就不要考虑节电了; 2、关闭C1E和C States等选项,目的...