Chinaunix首页 | 论坛 | 博客
  • 博客访问: 264055
  • 博文数量: 30
  • 博客积分: 608
  • 博客等级: 中士
  • 技术积分: 370
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-14 23:01
个人简介

++++++++++++++++++

文章分类

全部博文(30)

文章存档

2013年(2)

2012年(2)

2011年(26)

分类: Mysql/postgreSQL

2011-04-18 21:33:42

现在生产环境中的mysql,大多数会采用innodb存储引擎,引用官方的一句话:在数据完整性为核心前提下,还是采用mysql innodb,innodb支持事务(transition),在突发情况下能够最大程度的回复数据的完整性,innodb存储引擎对内存的依赖性比较大,innodb会在内存维护一个自己的pool缓存池,缓存池主要包括index缓存,数据页缓存,还有就是redo日志缓存,innodb在存储数据的时候不会马上将客户端的请求刷新到磁盘的文件中,而是首先将数据库的改变写在内存中的日志中,会结合内存中允许的dirty pages数目,定时刷新到文件中
innodb生产中有两种架构master-slave ,master-master架构,这里就不相信介绍配置过程官方文档说的很清楚,还有一种不属于这两种,但是也应归属于同一类,就是非集群的innodb高可用,mysql+heartbeat(keepalived)+drbd高可用mysql,远离是在网络的远端写一个master mysql的备份,通常说道这种结构的远离,会说以后句话,就是在网络中于mysql做了raid镜像,不过这种架构属于同步写的,master-slave,master-master架构属于异步写入
平时不是很大的环境都会采用上述的架构。在平时也有听说过mysql的集群,那么mysql的集群也叫mysql簇,是一种三层架构的一种存储结构,但mysql集群必须采用ndb cluster存储引擎,mysql集群分为mysql借节点层,数据层,管理层,所有借点分据层的数据,有后端的管理层管理,告诉mysql节点去哪里读取配置文件,去哪里共享数据,这里的共享有个限制,就是数据层之间不支持主动发现数据库,ndb存储引擎是基于内存的存储引擎,所以备份麻烦的事情,还有就是ndb cluster存储引擎是通过自身的API连接客户端,而不是通过mysql服务器层,这也就是说党有大量连接时这个机制会成为一个瓶颈,不过ndb cluster实现了高可用,高响应的目的
转入正题,说说mysql innodb引擎的监控,mysqlinnodb引擎的监控有很多种方式,比如cacti,cacti开发了专门针对innodb监控的plugin,能够监控innodb的insert,update等状态,今天要说的是一个特殊的innodb监控,非常适合监控mysql innodb性能,能够发现mysql innodb的状态,分析其瓶颈,进行调优,这个工具就是innotop
innotop是个prel写成的工具,它是个基于字符的监控工具,innotop工作几只是首先内部执行mysql的管理命令如show innodb status,然后抓去有用的数据,以友好的界面呈现出来,下面来看看innotop
 
下载innotop
[root@localhost ~]# curl -O
[root@localhost ~]# tar zxvf innotop-1.8.0.tar.gz
[root@localhost ~]# cd  zxvf innotop-1.8.0
[root@localhost ~]# ls -l
[root@localhost ~]# cat INSTALL 
[root@localhost ~]# perl Makefile.PL
 这时候出现了错误,如下:
Warning: prerequisite Term::ReadKey 2.1 not found.
Writing Makefile for innotop
错误原因这是缺少了一个perl的模块,需要安装
perl -MCPAN -e shell
安裝Term::ReadKey
cpan> install Term::ReadKey
當畫面最後出現
Running make install
就表示安裝已經完成。
[root@localhost ~]# perl Makefile.PL
[root@localhost ~]# make  install
此时innotop已经安装成功
[root@localhost ~]# /usr/bin/innotop
 
目前innotop的资料还是比较少的,要了解这个工具,目前也只能通过man手册页,本人也在整理希望与大家分享
[root@localhost ~]#
 
 
 
 
 
阅读(3606) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

fancy19212011-04-24 23:43:25

yifangyou: 有没有web方面监控mysql的软件啊.....
那要看你现在的基础监控环境了,现在的监控都一般会采用web页面形式这样直观,监控mysql及实现报警的监控有nagios,zabbix,zenoos这些是分布式的监控软件,是现在企业中的基础监控平台,实现监控及报警,以mysql为例,这些可以实现mysql服务,流量等监控,更精细的的监控可以采用基于rrdtool的监控,像cacti,mrtg等,cacti装某些插件之后可以实现存储引擎级别的监控,像innodb,insert,update的监控,这些都是web页面的,innotop是个字符交互式监控工具,功能异常强大,建议试下

yifangyou2011-04-22 22:58:56

有没有web方面监控mysql的软件啊