- 博客(89)
- 资源 (2)
- 收藏
- 关注
原创 zabbix3.2 告警
1. 创建用户组注意用户组权限 2. 添加用户 3. 设置报警媒介4. 设置Action 注意:添加新主机后,要确认权限分配
2017-02-04 16:09:48
1763
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
3664
原创 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
3128
转载 mysql隔离级别
原文链接 MySQL InnoDB事务的隔离级别有四级,默认是“可重复读”(REPEATABLE READ)。未提交读(READ UNCOMMITTED)。另一个事务修改了数据,但尚未提交,而本事务中的SELECT会读到这些未被提交的数据(脏读)。提交读(READ COMMITTED)。本事务读取到的是最新的数据(其他事务提交后的)。问题是,在同一个事务里,前后两次相同的SELECT会读
2016-10-21 10:21:02
370
原创 python OrderedDict
python的Dictionary类型是无序的,所以当我们想要字典安装插入的顺序输出时,我们可以使用collections的OrderedDict来实现 示例:from collections import OrderedDictfavorite_languages = OrderedDict()favorite_languages['jen'] = 'python'favorite_langu
2016-10-12 17:01:30
1041
原创 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
423
原创 自动化运维概述
运维架构硬件标准化(服务器、内存、系统版本)软件标准化(应用版本)运维自动化(监控、发布、CMDB) 监控报警(系统数据,应用指标的监控和出错时及时报警)发布系统(代码发布,发布后的检查,代码的回滚,灰度发布)服务器标准化(cobbler装机加puppet,做到硬件、软件标准化)CMDB(配置管理数据库,存储了所有运维相关数据,包括服务器硬件信息、域名和服务器关系、IDC容量等)监控系
2016-09-28 11:52:03
1041
原创 innodb 日志
日志两种格式 物理的日志 记录完整的页记录页中被修改的 内容逻辑日志 记录执行的 SQL 语句物理日志相对比较大,比如索引分裂是会影响很多记录,导致日志量很大 逻辑日志日志量会很小,但是会有部分执行 数据一致性问题物理日志 优点:恢复时可直接通过日志覆盖,不依赖原页面上面的内容。并且是幂等的。缺点:日志量很大逻辑日志优点:日志量小缺点: 插入记录时 , 如果表中有多个索引
2016-09-24 12:30:44
500
原创 mysql redo undo
redoredo是数据库实例恢复的重要组成部分。其目的是保证数据库实例或服务器发生故障时,不会导致数据库崩溃,不会丢失已经提交的数据。并且通过RWA机制保证数据库被变更之前,其redo日志必须先写入日志缓冲区,而事务提交之前也必须首先保证将日志缓冲区和这个事务相关的redo信息写入到redo日志文件。 通过这一机制,可以保证数据库宕机后,重新启动实例,数据库中没有被及时写入数据文件中的buffer
2016-09-24 12:18:27
403
原创 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
795
原创 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
2349
原创 mysql 字符集
查看可用字符集mysql> show character set;+----------+-----------------------------+---------------------+--------+| Charset | Description | Default collation | Maxlen |+----------+--
2016-09-23 11:39:47
339
转载 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
359
原创 mysql 常用函数
字符串函数 mysql> select concat('a','b','c'),concat('a',null);+---------------------+------------------+| concat('a','b','c') | concat('a',null) |+---------------------+------------------+| abc
2016-09-21 11:59:54
325
原创 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
396
原创 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
1602
原创 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
702
原创 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
1265
原创 mysql 硬件环境优化
BIOS设置 其中#设置服务器在最大性能模式运行(很重要)Power Management → Power Profile Maximum Performance#intel超线程选项 Intel Hyperthreading Options IPMI配置(远程管理)磁盘 机械硬盘 SSD(建议使用MLC)SLC性能最好,价格最高,寿命长MLC折中方案
2016-09-12 15:20:23
551
原创 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
391
原创 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
1279
原创 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
523
原创 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
2594
原创 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
471
原创 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
469
原创 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
2652
原创 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
1320
原创 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
1930
原创 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
1117
转载 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
1060
转载 MySQL树形查询
原文链接 本文实例讲述了MySQL实现树状所有子节点查询的方法。分享给大家供大家参考,具体如下:在Oracle 中我们知道有一个 Hierarchical Queries 通过CONNECT BY 我们可以方便的查了所有当前节点下的所有子节点。但很遗憾,在MySQL的目前版本中还没有对应的功能。在MySQL中如果是有限的层次,比如我们事先如果可以确定这个树的最大深度是4, 那么所有节点为根的树的深
2016-07-08 12:07:25
2500
原创 innodb 关键特性
插入缓冲两次写自适应哈希索引异步IO刷新邻接页插入缓冲innodb存储引擎对于非聚集索引的插入或更新操作,不是每一次直接插入到索引页中,而是先判断插入的非聚集索引页是否在缓冲池,若在,则直接插入;不在,则先放在一个insert buffer对象中。数据库这个非聚集的索引已经插到叶子节点,而实际并没有,知识存放在另一个位置。然后再以一定的频率和情况进行insert buffer和辅助索引页子
2016-06-29 18:00:07
608
原创 innodb checkpoint
checkpoint是为了解决:缩短数据库恢复时间缓冲池不够用时,将脏页刷新到磁盘重做日志不可用时,刷新脏页所以当数据库发生宕机时,数据库不需要重做所有的日志,因为checkpoint之前的页都已经刷新到磁盘了。数据库只需对checkpoint之后的重做日志进行恢复。 当缓冲池不够用时,根据LRU算法将最近最少使用的脏页,强制执行checkpoint,将脏页刷新到磁盘。 重做日志可以被重
2016-06-29 08:58:39
646
原创 innodb重做日志缓冲
innodb内存区域除了缓冲池外,还有重做日志缓冲。innodb存储引擎会先将重做日志信息写入缓冲区,然后按照一定频率刷新到重做日志文件。其可由参数innodb_log_buffer_size进行控制。mysql> show variables like 'innodb_log_buffer_size'\G;*************************** 1. row **********
2016-06-24 16:35:49
947
原创 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
1622
原创 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
634
原创 mysql体系结构
mysql主要由以下几部分组成 连接池组件管理服务和工具组件SQL接口组件查询分析器组件优化器组件缓冲组件插件式存储引擎物理文件
2016-06-22 21:24:55
318
原创 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
2524
原创 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
434
原创 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
1980
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人