自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(89)
  • 资源 (2)
  • 收藏
  • 关注

原创 zabbix3.2 告警

1. 创建用户组注意用户组权限 2. 添加用户 3. 设置报警媒介4. 设置Action 注意:添加新主机后,要确认权限分配

2017-02-04 16:09:48 1714 1

原创 zabbix3.2 添加nginx监控(连接数)

nginx端相关操作在nginx.conf中添加如下内容#vi nginx.conf...location /nginx-status { stub_status on; access_log off; allow 192.168.233.0/24; deny all;

2017-02-03 16:44:46 3641

原创 centos7.3 zabbix3.2 安装server端

server端安装安装yum源(这里我们使用的是阿里云提供的repo)# rpm -ivh http://mirrors.aliyun.com/zabbix/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm安装相关软件yum install zabbix-server zabbix-web zabbix-ser

2017-02-03 14:29:39 3093

转载 mysql隔离级别

原文链接 MySQL InnoDB事务的隔离级别有四级,默认是“可重复读”(REPEATABLE READ)。未提交读(READ UNCOMMITTED)。另一个事务修改了数据,但尚未提交,而本事务中的SELECT会读到这些未被提交的数据(脏读)。提交读(READ COMMITTED)。本事务读取到的是最新的数据(其他事务提交后的)。问题是,在同一个事务里,前后两次相同的SELECT会读

2016-10-21 10:21:02 350

原创 python OrderedDict

python的Dictionary类型是无序的,所以当我们想要字典安装插入的顺序输出时,我们可以使用collections的OrderedDict来实现 示例:from collections import OrderedDictfavorite_languages = OrderedDict()favorite_languages['jen'] = 'python'favorite_langu

2016-10-12 17:01:30 1015

原创 zabbix安装文档

源码包下载# wget http://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.0.4/zabbix-3.0.4.tar.gz安装zabbix server创建用户# groupadd zabbix# useradd -gzabbix zabbix编译源代码–enable-server:我们安装的是zabbi

2016-10-12 16:55:26 408

原创 自动化运维概述

运维架构硬件标准化(服务器、内存、系统版本)软件标准化(应用版本)运维自动化(监控、发布、CMDB) 监控报警(系统数据,应用指标的监控和出错时及时报警)发布系统(代码发布,发布后的检查,代码的回滚,灰度发布)服务器标准化(cobbler装机加puppet,做到硬件、软件标准化)CMDB(配置管理数据库,存储了所有运维相关数据,包括服务器硬件信息、域名和服务器关系、IDC容量等)监控系

2016-09-28 11:52:03 1017

原创 innodb 日志

日志两种格式 物理的日志 记录完整的页记录页中被修改的 内容逻辑日志 记录执行的 SQL 语句物理日志相对比较大,比如索引分裂是会影响很多记录,导致日志量很大 逻辑日志日志量会很小,但是会有部分执行 数据一致性问题物理日志 优点:恢复时可直接通过日志覆盖,不依赖原页面上面的内容。并且是幂等的。缺点:日志量很大逻辑日志优点:日志量小缺点: 插入记录时 , 如果表中有多个索引

2016-09-24 12:30:44 479

原创 mysql redo undo

redoredo是数据库实例恢复的重要组成部分。其目的是保证数据库实例或服务器发生故障时,不会导致数据库崩溃,不会丢失已经提交的数据。并且通过RWA机制保证数据库被变更之前,其redo日志必须先写入日志缓冲区,而事务提交之前也必须首先保证将日志缓冲区和这个事务相关的redo信息写入到redo日志文件。 通过这一机制,可以保证数据库宕机后,重新启动实例,数据库中没有被及时写入数据文件中的buffer

2016-09-24 12:18:27 390

原创 mysql innodb checkpoint

https://www.percona.com/blog/2011/02/03/how-innodb-handles-redo-logging/https://blogs.oracle.com/mysqlinnodb/entry/redo_logging_in_innodb

2016-09-24 11:56:26 773

原创 mysql 提交读 可重复读

环境mysql> select version();+------------+| version() |+------------+| 5.6.31-log |+------------+1 row in set (0.00 sec)提交读查看当前数据库隔离级别mysql> select @@global.tx_isolation,@@tx_isolation;+--------

2016-09-23 17:20:11 2315

原创 mysql 字符集

查看可用字符集mysql> show character set;+----------+-----------------------------+---------------------+--------+| Charset | Description | Default collation | Maxlen |+----------+--

2016-09-23 11:39:47 324

转载 How InnoDB performs a checkpoint

原文链接 InnoDB’s checkpoint algorithm is not well documented. It is too complex to explain in even a long blog post, because to understand checkpoints, you need to understand a lot of other things that I

2016-09-22 17:05:02 330

原创 mysql 常用函数

字符串函数 mysql> select concat('a','b','c'),concat('a',null);+---------------------+------------------+| concat('a','b','c') | concat('a',null) |+---------------------+------------------+| abc

2016-09-21 11:59:54 308

原创 mysql 数据类型

查看一下mysql版本mysql> select version();+------------+| version() |+------------+| 5.6.27-log |+------------+1 row in set (0.01 sec)数值类型 整数类型创建测试表t1mysql> create table t1 (id1 int, in2 int(5));Que

2016-09-20 15:18:33 376

原创 mysql relay_log_recovery relay_log_info_repository

relay-log-info记录SQL线程读取Master binlog的位置,用于Slave 宕机后根据文件中记录的pos点恢复Sql线程master-info 记录IO线程读取已经读取到的master binlog位置,用于slave宕机后IO线程根据文件中的POS点重新拉取binlog日志sync_relay_log_info执行多少个事务后将relay-log-info,sync一下文件刷新

2016-09-13 17:05:43 1575

原创 lspci

安装# yum -y install pciutils查看RAID设备# lspci|grep RAID03:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS-3 3108 [Invader] (rev 02)

2016-09-13 15:46:02 681

原创 mysql 半同步 5.6及5.7

5.6mysql半同步复制的原理图 通过图片,我们看到,当master提交事务时,并不等待slave节点确认。所以并不保证slave节点的事务是否也能commit成功(例如duplicate key error)。因此可能出现主库提交的数据,从库看不到的现象。5.7mysql半同步复制的原理图 通过图片,我们可以看到5.7把slave端ACK提前了。但是依然会有问题出现。当slave端ACK超

2016-09-13 14:07:49 1234

原创 mysql 硬件环境优化

BIOS设置 其中#设置服务器在最大性能模式运行(很重要)Power Management → Power Profile Maximum Performance#intel超线程选项 Intel Hyperthreading Options IPMI配置(远程管理)磁盘 机械硬盘 SSD(建议使用MLC)SLC性能最好,价格最高,寿命长MLC折中方案

2016-09-12 15:20:23 536

原创 xtrabackup 增量备份 恢复

step 1: 全备# innobackupex --defaults-file=/data/my.cnf --no-timestamp /data/backup/full_xtra_3333_20160825 --user root --password beijing --socket /data/mysql.sock测试数据mysql> create database miles

2016-08-26 14:49:00 377

原创 Mysql: 利用Xtrabackup搭建从库

STEP 1: 生成备份并prepare主库做一个全备,做好看到 completed OK 表明备份成功# innobackupex --defaults-file=/etc/my.cnf --user root --password XXX --no-timestamp /home/ssd/ali_backup/full_xtra_3306_20160825_1...160825 14:57:

2016-08-25 16:15:18 1247

原创 mysql xtrabackup mysqlbinlog Point-In-Time recovery

恢复到特定的时间点,可以使用innobackupex 和数据库binlog日志首先,我们需要一个数据库快照,使用innobackupex 生成一个全库备份# innobackupex --defaults-file=/etc/my.cnf --user root --password XXXX --no-timestamp /home/ssd/ali_backup/full_xtra_3306_20

2016-08-25 12:02:50 502

原创 mysql GTID主从复制 跳过复制错误

在mysqlGTID下,使用SET GLOBAL SQL_SLAVE_SKIP_COUNTER = n会产生如下错误ERROR 1858 (HY000): sql_slave_skip_counter can not be set when the server is running with @@GLOBAL.GTID_MODE = ON. Instead, for each transactio

2016-08-24 11:01:41 2480

原创 mysqlbinlog

软件版本mysql> select version();+------------+| version() |+------------+| 5.6.27-log |+------------+1 row in set (0.00 sec)官方文档地址ROW模式优点:row level模式下,bin-log中可以不记录执行的sql语句的上下文相关的信息,仅仅只需要记录那一条记录被修改

2016-07-29 17:30:39 453

原创 mysqldump原理及实践

系统环境# cat /etc/redhat-releaseCentOS release 6.5 (Final)# uname -aLinux miles 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux软件版本mysql> select version();+--

2016-07-28 21:45:26 453

原创 show binlog events

SHOW BINLOG EVENTS [IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count]用于在二进制日志中显示事件。如果您不指定’log_name’,则显示第一个二进制日志。 LIMIT子句和SELECT语句具有相同的语法。实验:mysql> create table tbl (test TEXT);Query OK, 0 rows af

2016-07-21 11:29:18 2617

原创 MaxScale 安装

参考文档安装Step 1. 安装MariaDB Enterprise repository configuration package# rpm -i http://downloads.mariadb.com/enterprise/hakg-cyew/generate/10.1/mariadb-enterprise-repository.rpmStep 2. 安装MaxScale # yum ins

2016-07-20 16:54:34 1297

原创 centos6.5 mysql5.6.24 单机多实例安装

单实例安装请参照该文档,本文再次基础上进行安装复制已有的配置文件# pwd/etc/mysql# cp -p mysql3306.cnf mysql3307.cnf # lltotal 8-rw-r--r--. 1 mysql mysql 2368 Jul 19 06:59 mysql3306.cnf-rw-r--r--. 1 mysql mysql 2368 Jul 19 06:59

2016-07-19 11:26:26 1903

原创 centos6.5 mysql5.6.24 单实例二进制包安装

检查系统是否含有mysql相关组件# rpm -qa |grep mysqlmysql-libs-5.1.71-1.el6.x86_64移除相关组件# yum remove mysql-libs*下载mysql二进制包# wget http://120.52.72.24/cdn.mysql.com/c3pr90ntc0td/archives/mysql-5.6/mysql-5.6.24-linux

2016-07-18 23:46:17 1089

转载 nginx as Database Load Balancer for MySQL or MariaDB Galera Cluster

原文链接Nginx is well-known for its ability to act as a reverse-proxy with small memory footprint. It usually sits in the front-end web tier to redirect connections to available backend services, provided

2016-07-18 17:51:35 1022

转载 MySQL树形查询

原文链接 本文实例讲述了MySQL实现树状所有子节点查询的方法。分享给大家供大家参考,具体如下:在Oracle 中我们知道有一个 Hierarchical Queries 通过CONNECT BY 我们可以方便的查了所有当前节点下的所有子节点。但很遗憾,在MySQL的目前版本中还没有对应的功能。在MySQL中如果是有限的层次,比如我们事先如果可以确定这个树的最大深度是4, 那么所有节点为根的树的深

2016-07-08 12:07:25 2359

原创 innodb 关键特性

插入缓冲两次写自适应哈希索引异步IO刷新邻接页插入缓冲innodb存储引擎对于非聚集索引的插入或更新操作,不是每一次直接插入到索引页中,而是先判断插入的非聚集索引页是否在缓冲池,若在,则直接插入;不在,则先放在一个insert buffer对象中。数据库这个非聚集的索引已经插到叶子节点,而实际并没有,知识存放在另一个位置。然后再以一定的频率和情况进行insert buffer和辅助索引页子

2016-06-29 18:00:07 580

原创 innodb checkpoint

checkpoint是为了解决:缩短数据库恢复时间缓冲池不够用时,将脏页刷新到磁盘重做日志不可用时,刷新脏页所以当数据库发生宕机时,数据库不需要重做所有的日志,因为checkpoint之前的页都已经刷新到磁盘了。数据库只需对checkpoint之后的重做日志进行恢复。 当缓冲池不够用时,根据LRU算法将最近最少使用的脏页,强制执行checkpoint,将脏页刷新到磁盘。 重做日志可以被重

2016-06-29 08:58:39 620

原创 innodb重做日志缓冲

innodb内存区域除了缓冲池外,还有重做日志缓冲。innodb存储引擎会先将重做日志信息写入缓冲区,然后按照一定频率刷新到重做日志文件。其可由参数innodb_log_buffer_size进行控制。mysql> show variables like 'innodb_log_buffer_size'\G;*************************** 1. row **********

2016-06-24 16:35:49 933

原创 innodb lru list、free list、flush list

LRU list innodb中新读取到的页,并不直接放在LRU列表首部,而是放在midpoint位置。默认该位置在LRU列表5/8处。midpoint可有参数innodb_old_blocks_pct控制mysql> show variables like 'innodb_old_blocks_pct'\G;*************************** 1. row ********

2016-06-23 17:59:57 1598

原创 innodb缓冲池

innodb存储引擎缓冲池设置为21GBmysql> show variables like 'innodb_buffer_pool_size'\G;*************************** 1. row ***************************Variable_name: innodb_buffer_pool_size Value: 21474836

2016-06-23 15:50:22 613

原创 mysql体系结构

mysql主要由以下几部分组成 连接池组件管理服务和工具组件SQL接口组件查询分析器组件优化器组件缓冲组件插件式存储引擎物理文件

2016-06-22 21:24:55 301

原创 mysql后台线程

master thread 核心的后台线程,主要负责将缓冲池中的数据异步刷新到磁盘,保证数据的一致性,包括脏页的刷新、合并插入缓冲、undo页的回收等。 IO thread 主要负责IO请求的回掉处理。分别为write、read、insert buffer和log IO thread。线程数量可以通过参数进行调整mysql> show variables like 'innodb_versio

2016-06-21 17:59:57 2507

原创 mysql连接方式

TCP/IP当客户端和mysql实例不在同一台服务器上时,两台机器通过TCP/IP网络连接# mysql -h192.168.74.128 -uroot -p需要注意在通过TCP/IP连接时,mysql会先检查一张权限视图,用来判断客户端IP是否允许连接到实例mysql> select host,user,password from mysql.user\G********************

2016-06-21 15:04:55 413

原创 mysql查找配置文件的顺序

通过以下命令可以查看mysql 实例启动时,会在哪些位置查找配置文件# mysql --help|grep my.cnf order of preference, my.cnf, $MYSQL_TCP_PORT,/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf /usr/local/mys

2016-06-20 21:20:43 1963

HBase权威指南

HBase权威指南

2016-02-17

空空如也

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

TA关注的人

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