自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(32)
  • 收藏
  • 关注

转载 mysql 5.6 在线 DDL

原文链接地址:http://seanlook.com/2016/05/24/mysql-online-ddl-concept/做MySQL的都知道,数据库操作里面,DDL操作(比如CREATE,DROP,ALTER等)代价是非常高的,特别是在单表上千万的情况下,加个索引或改个列类型,就有可能堵塞整个表的读写。然后 mysql 5.6 开始,大家期待的Online DDL出现了,可...

2019-01-15 16:06:00 169

转载 mysql8.0CTE实现递归查询

+----+----------+--------------+| ID | ParentID | name |+----+----------+--------------+| 1 | 0 | 河南省 || 2 | 1 | 信阳市 || 3 | 2 | 淮滨县 || 4 |...

2018-11-19 17:01:00 1153

转载 MySQL CPU 使用率高的原因和解决方法

用户在使用 MySQL 实例时,会遇到 CPU 使用率过高甚至达到 100% 的情况。本文将介绍造成该状况的常见原因以及解决方法,并通过 CPU 使用率为 100% 的典型场景,来分析引起该状况的原因及其相应的解决方案。 常见原因系统执行应用提交查询(包括数据修改操作)时需要大量的逻辑读(逻辑 IO,执行查询所需访问的表的数据行数),所以系统需要消耗大量的 CPU 资源以维护...

2018-07-03 14:43:00 403

转载 MySql数据库细节使用规范

一、基础规范(1)必须使用InnoDB存储引擎解读:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高(2)必须使用UTF8字符集解读:万国码,无需转码,无乱码风险,节省空间(3)数据表、数据字段必须加入中文注释解读:N年后谁tm知道这个r1,r2,r3字段是干嘛的(4)禁止使用存储过程、视图、触发器、Event解读...

2018-03-02 14:55:00 111

转载 mysql的undo log和redo log

在数据库系统中,既有存放数据的文件,也有存放日志的文件。日志在内存中也是有缓存Log buffer,也有磁盘文件log file,本文主要描述存放日志的文件。 MySQL中的日志文件,有这么两类常常讨论到:undo日志与redo日志。1 undo1.1 undo是什么undo日志用于存放数据修改被修改前的值,假设修改 tba 表中 id=2的行数据,把Name='B...

2017-11-22 16:57:00 74

转载 MySQL表的定期分析检查优化

Analyze Table 分析表 MySQL 的Optimizer(优化元件)在优化SQL语句时,首先需要收集一些相关信息,其中就包括表的cardinality(可以翻译为“散列程度”),它表示某个索引对应的列包含多少个不同的值——如果cardinality大大少于数据的实际散列程度,那么索引就基本失效了。我们可以使用SHOW INDEX语句来查看索引的散列程度:SHOW I...

2017-10-27 17:20:00 143

转载 MySQL 数据库设计总结

规则1:一般情况可以选择MyISAM存储引擎,如果需要事务支持必须使用InnoDB存储引擎。注意:MyISAM存储引擎 B-tree索引有一个很大的限制:参与一个索引的所有字段的长度之和不能超过1000字节。另外MyISAM数据和索引是分开,而InnoDB的数据存储是按聚簇(cluster)索引有序排列的,主键是默认的聚簇(cluster)索引,因此MyISAM虽然在一般情况下,查询...

2017-08-29 15:48:00 117

转载 Innodb引擎下mysql自身配置优化

1.简单介绍InnoDB给MySQL提供了具有提交,回滚和崩溃恢复能力的事务安全(ACID兼容)存储引擎。InnoDB锁定在行级并且也在SELECT语句提供一个Oracle风格一致的非锁定读。这些特色增加了多用户部署和性能。没有在InnoDB中扩大锁定的需要,因为在InnoDB中行级锁定适合非常小的空间。InnoDB也支持FOREIGN KEY强制。在SQL查...

2017-08-23 16:51:00 105

转载 linux的top命令参数详解

简介top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止. 比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列表....

2017-08-16 11:44:00 53

转载 InnoDB的关键特性-插入缓存,两次写,自适应hash索引

InnoDB存储引擎的关键特性包括插入缓冲、两次写(double write)、自适应哈希索引(adaptive hash index)。这些特性为InnoDB存储引擎带来了更好的性能和更高的可靠性。插入缓冲插入缓冲是InnoDB存储引擎关键特性中最令人激动的。不过,这个名字可能会让人认为插入缓冲是缓冲池中的一个部分。其实不然,InnoDB缓冲池中有Insert Buffer...

2017-08-04 17:36:00 188

转载 mysql体系结构

Mysql是由SQL接口,解析器,优化器,缓存,存储引擎组成的1 Connectors指的是不同语言中与SQL的交互max_connections:就是整个MySQL实例的最大连接数限制 max_user_connections:是单个用户的最大连接数,这里未指明是哪个用户,是任意一个用户。2 Management Serveices &amp...

2017-08-03 17:06:00 57

转载 MySQL提示“too many connections”的解决办法

今天生产服务器上的MySQL出现了一个不算太陌生的错误“Too many connections”。平常碰到这个问题,我基本上是修改/etc/my.cnf的max_connections参数,然后重启数据库。但是生产服务器上数据库又不能随便重启。没办法,只好想办法手动去释放一些没用的连接。登陆到MySQL的提示符下,数据show processlist这个命令,可以得到所以连接到这个...

2017-07-10 16:49:00 102

转载 mysql事务隔离级别

1、什么是事务事务是一条或多条数据库操作语句的组合,具备ACID,4个特点。原子性:要不全部成功,要不全部撤销隔离性:事务之间相互独立,互不干扰一致性:数据库正确地改变状态后,数据库的一致性约束没有被破坏持久性:事务的提交结果,将持久保存在数据库中2、事务并发会产生什么问题1)第一类丢失更新:在没有事务隔离的情况下,两个事务都同时更新一行数据,但是第二...

2017-06-05 16:50:00 70

转载 mysql innodb 行级锁升级

创建数据表test,表定义如下所示:CREATE TABLE `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(20) NOT NULL, PRIMARY KEY (`id`), KEY `idx_name` (`name`)) ENGINE=InnoDB AU...

2017-06-01 15:53:00 198

转载 mysql性能优化

mysql> show global status;可以列出MySQL服务器运行各种状态值,另外,查询MySQL服务器配置信息语句:mysql> show variables;一、慢查询mysql> show variables like ‘%slow%‘;+------------------+-------+| Varia...

2017-05-10 11:43:00 71

转载 MySQL的聚集索引和非聚集索引

一. MYSQL的索引mysql中,不同的存储引擎对索引的实现方式不同,大致说下MyISAM和InnoDB两种存储引擎。MyISAM的B+Tree的叶子节点上的data,并不是数据本身,而是数据存放的地址。主索引和辅助索引没啥区别,只是主索引中的key一定得是唯一的。这里的索引都是非聚簇索引。MyISAM还采用压缩机制存储索引,比如,第一个索引为“her”,第二个索引为“he...

2017-01-10 16:32:00 70

转载 Mysql binlog 日志

一. Binlog格式介绍 模式1 Row:日志中会记录成每一行数据被修改的形式,然后在slave端再对相同的数据进行修改。优点:row level模式下,bin-log中可以不记录执行的sql语句的上下文相关的信息,仅仅只需要记录那一条记录被修改了,修改成什么样了。所以row level的日志内容会非常清楚的记录下每一行数据修改的细节。且不会出现某些特定情况下的存...

2017-01-05 14:06:00 48

转载 linux下安装redis及其中遇到的问题的解决方法

1.将下载好的压缩包放到/usr/local目录下# tar xzf redis-3.0.2.tar.gz# cd redis-3.0.2# make提示错误 make: cc: Command not found make: *** [adlist.o] Error 127没有安装gcc环境,需要安装gcc# yum install gcc安装后检查是否安装成功# ...

2016-12-07 15:06:00 2134

转载 mysql 用init-connect+binlog实现用户操作追踪做access的ip的log记录

在MYSQL中,每个连接都会先执行init-connect,进行连接的初始化。我们可以在这里获取用户的登录名称和thread的ID值。然后配合binlog,就可以追踪到每个操作语句的操作时间,操作人等。实现审计。实验过程:1:创建登录日志库,登录日志表CREATEDATABASE`accesslog`;USE`accesslog`;CREATETABLE`acc...

2016-11-28 14:01:00 421

转载 mysql配置文件参数详解

(一)[client]port = 3306socket = /tmp/mysql.sock[mysqld]port = 3306socket = /tmp/mysql.sockbasedir = /usr/local/mysqldatadir = /data/mysqlpid-file = /data/mysql/mysql.piduser = mysqlbind-addr...

2016-11-23 11:25:00 136

转载 MySQL缓存命中率概述及如何提高缓存命中率

MySQL缓存命中率概述工作原理:查询缓存的工作原理,基本上可以概括为: 缓存SELECT操作或预处理查询(注释:5.1.17开始支持)的结果集和SQL语句; 新的SELECT语句或预处理查询语句,先去查询缓存,判断是否存在可用的记录集,判断标准:与缓存的SQL语句,是否完全一样,区分大小写;查询缓存对什么样的查询语句,无法缓存其记录集,大致有以下几类:1、 查询语句中...

2016-11-22 15:08:00 273

转载 Redis简介

本文主要内容Redis与其他软件的相同之处和不同之处Redis的用法使用Python示例代码与Redis进行简单的互动使用Redis解决实际问题Redis是一个远程内存数据库,它不仅性能强劲,而且还具有复制特性以及为解决问题而生的独一无二的数据模型。Redis提供了5种不同类型的数据结构,各式各样的问题都可以很自然地映射到这些数据结构上:Redis的数...

2016-11-18 17:41:00 81

转载 Redis详解入门篇

【本教程目录】1.redis是什么2.redis的作者3.谁在使用redis4.学会安装redis5.学会启动redis6.使用redis客户端7.redis数据结构 – 简介8.redis数据结构 – strings9.redis数据结构 – lists10.redis数据结构 – 集合11.redis数据结构 – 有序集合12.redi...

2016-11-18 17:38:00 64

转载 mysql数据库主从同步复制原理

MySQL的Replication(英文为复制)是一个多MySQL数据库做主从同步的方案,特点是异步复制,广泛用在各种对MySQL有更高性能、更高可靠性要求的场合。与之对应的是另一个同步技术是MySQL Cluster,但因为MySQL Cluster配置比较复杂,所以使用者较少。MySQL的Replication是一个异步复制的过程(mysql5.1.7以上版本分为异步复制和半同步...

2016-11-16 15:36:00 70

转载 NoSQL

诞生的原因 随着互联网的不断发展,各种类型的应用层出不穷,所以导致在这个云计算的时代,对技术提出了更多的需求,主要体现在下面这四个方面:1. 低延迟的读写速度:应用快速地反应能极大地提升用户的满意度;2. 支撑海量的数据和流量:对于搜索这样大型应用而言,需要利用PB级别的数据和能应对百万级的流量; 3. 大规模集群的管理:系统管理员希望分布式应用能更简单的部署和管理;...

2016-11-11 10:27:00 396

转载 Mysqldump参数大全

参数参数说明--all-databases,-A导出全部数据库。mysqldump-uroot-p--all-databases--all-tablespaces,-Y导出全部表空间。mysqldump-uroot-p--all-databases--all-tablespaces--no-tablespaces,-y...

2016-11-09 11:09:00 59

转载 MySQL Show命令的使用

show tables或show tables from database_name;解释:显示当前数据库中所有表的名称show databases;解释:显示mysql中所有数据库的名称show processlist;解释:显示系统中正在运行的所有进程,也就是当前正在执行的查询。大多数用户可以查看他们自己的进程,但是如果他们拥有process权限,就可以查看所...

2016-11-08 10:05:00 57

转载 学习shell脚本之前的基础知识

日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写shell脚本,那么你就不算一个合格的管理员。目前很多单位在招聘linux系统管理员时,shell脚本的编写是必考的项目。有的单位甚至用shell脚本的编写能力来衡量这个linux系统管理员的经验是否丰富。笔者讲这些的目的只有一个,那就是让你认真对待shell脚本,从一开始就要把基础知识掌握牢固,然后要不断的练习,只要...

2016-11-03 16:26:00 61

转载 详解MySQL大表优化方案

单表优化除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分,拆分会带来逻辑、部署、运维的各种复杂度,一般以整型值为主的表在千万级以下,字符串为主的表在五百万以下是没有太大问题的。而事实上很多时候MySQL单表的性能依然有不少优化空间,甚至能正常支撑千万级以上的数据量:字段尽量使用TINYINT、SMALLINT、MEDIUM_INT作为整数类型而非INT,如果非负则...

2016-11-03 16:19:00 106

转载 sql索引的优缺点

一、为什么要创建索引呢(优点)?创建索引可以大大提高系统的性能。第一, 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。第二, 可以大大加快数据的检索速度,这也是创建索引的最主要的原因。第三, 可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。第四, 在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。第五, 通过...

2016-11-03 16:18:00 79

转载 Mysql Explain 详解

一.语法explain < table_name >例如: explain select * from t3 where id=3952602;二.explain输出解释+----+-------------+-------+-------+-------------------+---------+---------+-------+------+-------+| id ...

2016-11-03 16:16:00 55

转载 show engine innodb status解读

innodb存储引擎在show engine innodb status(老版本对应的是show innodb status)输出中,显示除了大量的内部信息,它输出就是一个单独的字符串,没有行和列,内容分为很多小段,每一段对应innodb存储引擎不同部分的信息,其中有一些信息对于innodb开发者来说非常有用,但是,许多信息,如果你尝试去理解,并且应用到高性能innodb调优的时候,你会...

2016-11-03 16:09:00 222

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除