自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

南山行者

君子之交淡如水,学海无涯苦作舟。

  • 博客(26)
  • 资源 (12)
  • 收藏
  • 关注

原创 Redis 主从复制 原理与用法

Redis 复制功能的几个重要方面:1. 一个Master可以有多个Slave;2. Redis使用异步复制。从2.8开始,Slave会周期性(每秒一次)发起一个Ack确认复制流(replication stream)被处理进度;3. 不仅主服务器可以有从服务器, 从服务器也可以有自己的从服务器, 多个从服务器之间可以构成一个图状结构;4. 复制在Master端是非阻塞模式的,这意

2015-12-31 17:31:32 12952 5

转载 Redis Sentinel 机制与用法

概述 Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案,当用Redis做Master-slave的高可用方案时,假如master宕机了,Redis本身(包括它的很多客户端)都没有实现自动进行主备切换,而Redis-sentinel本身也是一个独立运行的进程,它能监控多个master-slave集群,发现master宕机后能进行自懂切换, 被集成在redis2.4+

2015-12-31 16:43:58 878 1

转载 Percona XtraDB Cluster 简介

错误的MySQL配置只要定义了wsrep_cluster_address,即使没有定义wsrep_provider参数,MySQL也可以正常启动,但某些希望执行的功能却无法正常工作,而且很难找到问题所在。MySQL错误日志会有如下输出结果:$ bin/mysqld_safe --defaults-file=etc/my.cnf --wsrep_cluster_address=gcomm

2015-12-29 16:01:06 2069 1

原创 Percona XtraDB Cluster 安装

pxc和普通mysql的安装方式相同,这里只说介绍rpm安装和源码安装两种方法。一,yum安装1,pxc安装按先后顺序需要grlera,shared,client, xtrabackup,server。其中socat被server依赖,也可以yum安装。同时有版本兼容问题,参考如下rpm包。  安装xtrabackup需要先安装源  yum -y install per

2015-12-29 12:21:55 1013 1

原创 Centos 7 - 静态IP设置

1,进入路径# /etc/sysconfig/network-scripts2,找到类似ifcfg-eth*的文件夹,打开并修改如下内容BOOTPROTO="static" #dhcp改为static   ONBOOT="yes" #开机启用本配置  IPADDR=192.168.7.106 #静态IP  GATEWAY=192.168.7.1 #默认网关  NETMA

2015-12-28 17:58:23 559 1

原创 RabbitMQ的安装

RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统。它可以用于大型软件系统各个模块之间的高效通信,支持高并发,支持可扩展。环境:CentOS 6.51,安装JDK7     解压后,配置JDK环境变量      vim /ect/profile,      在最后增加      # set jdk     export JAVA_HOME=/usr/

2015-12-23 17:31:05 750 1

原创 利用Canal完成Mysql数据同步Redis

流程Canal的原理是模拟Slave向Master发送请求,Canal解析binlog,但不将解析结果持久化,而是保存在内存中,每次有客户端读取一次消息,就删除该消息。这里所说的客户端,就需要我们写一个连接Canal的程序,持续从Canal获取数据。步骤一、配置Canal参考https://github.com/alibaba/canal【mysql配置】1,配

2015-12-21 13:18:04 35223 7

转载 NoSQL-思维导图

2015-12-21 13:15:04 2236 1

原创 关于GAP死锁的场景

场景是表中id从5到9的数据被删除,当事务A锁定id=6,事务B也锁定id=6,事务A插入会等待,事务B插入提示死锁, 事务B回滚,事务A提交。数据如下:REPEATABLE-READ隔离(默认):事务A执行插入:显示锁类型是行锁,模式是排他、GAP锁。事务B执行插入:事务B回滚,事务A执行。范围for update时,同样会有死锁的

2015-12-18 17:50:29 2226

转载 MySQL-Checkpoint

checkpoint干的事情:将缓冲池中的脏页刷新回磁盘,不同之处在于每次从哪里取多少脏页刷新到磁盘,以及什么时候触发checkpoint。checkpoint解决的问题:1.缩短数据库的恢复时间(数据库宕机时,不需要重做所有的日志,因checkpoint之前的页都已经刷新回磁盘,根据每页的LSN作比较)2.缓冲池不够用时,将脏页刷新到磁盘(缓冲池不够用时,根据LRU算会溢出最

2015-12-17 12:16:02 1263

转载 MySQL-Redo Log

redo日志由两部分构成:redo log buffer、redo log file。innodb是支持事务的存储引擎,在事务提交时,必须先将该事务的所有日志写入到redo日志文件中,待事务的commit操作完成才算整个事务操作完成。在每次将redo log buffer写入redo log file后,都需要调用一次fsync操作,因为重做日志缓冲只是把内容先写入操作系统的缓冲系统中,并没有确保

2015-12-17 11:07:33 846

转载 MySQL-Double Write

没有Double Write特性的时候更新数据后,会将dirty page放到innodb buffer cache中。此时页的checksum值会发生变化。页的头部fileheader部分有checksum项,名为file_page_space_or_checksum。页的尾部filetailer部分也有用来比较checksum的项,名为file_page_end_lsn。它们使

2015-12-17 10:55:07 721

转载 微服务架构的设计模式

前不久,Java Code Geeks发表了一篇 文章 ,分析 单体应用与微服务的优缺点 。近日,该网站又发表了一篇 文章 ,提供了六种微服务架构的设计模式。 聚合器微服务设计模式 这是一种最常用也最简单的设计模式,如下图所示: 聚合器调用多个服务实现应用程序所需的功能。它可以是一个简单的Web页面,将检索到的数据进行处理展示。它也可以是一个更高层次的组合微服务,

2015-12-13 22:43:54 747

转载 linux 同步IO: sync、fsync与fdatasync

传统的UNIX实现在内核中设有缓冲区高速缓存或页面高速缓存,大多数磁盘I/O都通过缓冲进行。当将数据写入文件时,内核通常先将该数据复制到其中一个缓冲区中,如果该缓冲区尚未写满,则并不将其排入输出队列,而是等待其写满或者当内核需要重用该缓冲区以便存放其他磁盘块数据时,再将该缓冲排入输出队列,然后待其到达队首时,才进行实际的I/O操作。这种输出方式被称为延迟写(delayed write)(Bach

2015-12-13 01:26:47 432

原创 mysql回滚后数据文件增大的原因

执行的语句是下图依次是:插入前,回滚前,回滚后的文件大小造成这种情况的原因是:在事务中执行插入时,innodb存储引擎会先初始化一段空间,为插入的数据做准备,当回滚后,数据没有插入,但空间不会收缩, 造成数据文件增大。这里也是mysql表空间的常见现象,可扩大, 但无法自动收缩,就如果表的碎片过多,也没有自动整理。

2015-12-10 17:36:16 605

转载 数据库高可用架构(MySQL、Oracle、MongoDB、Redis)

一、MySQLMySQL小型高可用架构方案:MySQL双主、主从 + Keepalived主从自动切换服务器资源:两台PC Server优点:架构简单,节省资源缺点:无法线性扩展,主从失败之后需要手动恢复主从架构MySQL中型高可用架构方案:MMM + MySQL双主 + 多从高可用方案服务器资源:1、至少五台PC Server,2台MySQL主库,2台

2015-12-10 15:16:52 920

转载 Greenplum数据仓库简介

Greenplum做为新一代的数据库引擎,有着良好的发展与应用前景。强大的工作效率,低成本的硬件平台对数据仓库与商业智能建设有很大的吸引力。要清楚的了解其特点最好从架构着手。架构分析 Greenplum的高性能得益于其良好的体系结构。Greenplum的架构采用了MPP(大规模并行处理)。在 MPP 系统中,每个 SMP 节点也可以运行自己的操作系统、数据库等。换言之,每个节点内的 CPU

2015-12-10 12:03:23 4147

转载 I/O多路复用技术(multiplexing)

首先,要从你常用的IO操作谈起,比如read和write,通常IO操作都是阻塞I/O的,也就是说当你调用read时,如果没有数据收到,那么线程或者进程就会被挂起,直到收到数据。(图片来源:http://www.masterraghu.com/subjects/np/introduction/unix_network_programming_v1.3/ch06lev1sec2.htmll

2015-12-10 11:21:48 2847

转载 MySQL线程池(THREAD POOL)的原理

线程池是MySQL5.6企业版的一个核心功能,对于服务器应用而言,无论是web应用服务还是DB服务,高并发请求始终是一个绕不开的话题。当有大量请求并发访问时,一定伴随着资源的不断创建和释放,导致资源利用率低,降低了服务质量。线程池是一种通用的技术,通过预先创建一定数量的线程,当有请求达到时,线程池分配一个线程提供服务,请求结束后,该线程又去服务其他请求。 通过这种方式,避免了线程和内存对象的频繁创

2015-12-10 10:19:24 6376

转载 MySQL线程池(THREAD POOL)的处理

在默认的MySQL的连接模型中,一个连接对应一个MySQL服务器的线程来处理连接请求(很类似于oracle的专用服务器连接),在某些情况这种配置可能会导致一些问题,比如以下情形:1,服务器同时太多活动连接线程,而cpu个数有限,会导致CONTEXT SWITCH十分严重,同时太多的进程在可运行队列中等待,主机负载超高.对系统是一个很大压力;2,当太多的活动线程执行innod

2015-12-09 17:38:43 8008

转载 Linux RPM 命令参数使用详解

RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序”rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种。二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译、安装。源代码包经常以src.rpm作为后缀名。常用命令组合:-ivh:安装显示安装进度--install--verbos

2015-12-09 11:14:35 468

原创 PostgreSQL安装

一、简介PostgreSQL 是一种非常复杂的对象-关系型数据库管理系统(ORDBMS),也是目前功能最强大,特性最丰富和最复杂的自由软件数据库系统,它提供了多版本并行控制,支持几乎所有 SQL 构件(包括子查询,事务和用户定 义类型和函数), 并且可以获得非常广阔范围的(开发)语言绑定 (包括 C,C++,Java,perl,tcl,和 python),有些特性甚至连商业数据库都不具备。这个

2015-12-08 14:26:59 634

转载 SMP和MPP的优缺点

SMP的全称是"对称多处理"(Symmetrical Multi-Processing)技术,是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。它是相对非对称多处理技术而言的、应用十分广泛的并行技术。在这种架构中,一台电脑不再由单个CPU组成,而同时由多个处理器运行操作系统的单一复本,并共享内存和一台计算机的其他资源。虽然同时使用多个CPU,但是从管理的角度来

2015-12-07 14:54:44 11174 1

原创 percona tpcc的安装和使用

tpcc-mysql是开源的TPC-C测试工具,其完全遵循TPC-C标准.TPC-C是TPC协会制定的,用来测试典型的复杂OLTP(在线事务处理)系统的性能。它是percona基于tpc-c衍生出来的产品,专用于mysql基准测试,其源码放在bazaar。一、安装1,安装bzr版本控制工具yum install bzr 2,下载tpcc源码bzr branch lp:~perc

2015-12-03 10:27:35 709

原创 mysql的权限控制

一,创建用户CREATE USER user1@'%' IDENTIFIED BY '123456';二,删除用户DROP USER ‘username’@'host’;二,创建权限GRANT all privileges ON databasename.tablename TO 'username'@'host'三,取消权限REVOKE p

2015-12-02 11:20:07 568

转载 mysql交互式连接&非交互式连接

交互式操作:通俗的说,就是你在你的本机上打开mysql的客户端,就是那个黑窗口,在黑窗口下进行各种sql操作,当然走的肯定是tcp协议。非交互式操作:就是你在你的项目中进行程序调用。比如一边是tomcat web服务器,一边是数据库服务器,两者怎么通信?在java web里,我们通常会选择hibernate或者是jdbc来连接。那么这时候就是非交互式操作。在之前,我基本上不关系这两个属

2015-12-01 10:05:23 1735

SVN客户端32位

svn官方下载资源,windows32位,实测可用

2017-08-25

Redis 3.0 window版

redis3.0windows版,解压后可直接使用

2017-08-25

maven-3.2.5

官方资源,下载后可直接使用

2017-08-09

powerdesigner导出word模板

2016-05-06

mha高可用0.56版本

mha0.56压缩包包含rpm和二进制包,任意选择安装,其他文件是依赖包,在mysql5.6运行正常,放心使用。

2015-11-11

jedis-2.4.2.jar

jedis-2.4.2.jar jedis包下载

2015-09-19

redis-3.0.3.tar.gz

redis-3.0.3.tar.gz redis包下载

2015-09-19

MySQL 5.1 Reference Manual 中文版

MySQL5.1官方参考文档中文版,记录了最详尽的MySQL资料。

2015-09-19

SQL数据库常用语句

SQL数据库常用语句,包含了SQL命令、性能调试、优化以及常用的语句。

2013-07-30

厨房分单打印机配置步骤PPT及视频

厨房分单打印机配置步骤PPT及视频,包含详细餐饮行业中打印机的设置

2013-06-27

空空如也

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

TA关注的人

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