- 浏览: 286316 次
文章分类
- 全部博客 (148)
- Shell (2)
- Python (4)
- Java (31)
- Javascript (4)
- Android (7)
- SQL优化 (0)
- Linux (5)
- webOS (4)
- MySQL (18)
- memcach redis (1)
- memcach (0)
- redis (3)
- memcache (2)
- svn (1)
- UED (1)
- 网络 (1)
- virtual box (1)
- git (1)
- Gitosis (1)
- 云计算 (2)
- 12306 (1)
- google (1)
- spdy (1)
- nginx (1)
- tomcat (2)
- SSL (2)
- lucene (2)
- 空间搜索 (1)
- lzo (1)
- 数据压缩 (1)
- ios (1)
- maven (1)
- elasticsearch (1)
- scribe (1)
- flume (1)
- jni (1)
- jna (1)
- hadoop (2)
- 大数据 (1)
最新评论
-
aa80303857:
不错,学习了。互相关注一下。
Sitemesh学习笔记 -
xiaozang:
...
关于nginx的rewrite重写规则 -
coderuncle:
楼主有没有研究过cloudera flume和apache f ...
scribe,flume -
奔跑的犀牛:
...
linux下自动启动mysql -
lsn_1212:
网上装svn的资源太多了,这个挺好的,说的挺全的。
SVN Server安装部署攻略(Linux+SubVersion+Apache)
使用了两种技术来实现数据库之间的复制和高可用性(HA)
DRBD (http://www.drbd.org)和Heartbeat (http://www.linux-ha.org/),两个软件具体安装和配置网上有很多范例。我使用的debian系统,安装和配置起来非常方便。
1、由于一开始测试Mysql Cluster功能,我采用的Mysql是 Cluster集成版本
(http://www.mysql.com/products/database/cluster/),但是,我没有启用Cluster功能
(Cluster测试稍后推出)。你完全可以用apt-get install mysql-server来安装5.0标准版本。
2、DRBD的源码安装非常复杂,有兴趣的朋友可以自己测试。我采用debian的安装方法,英文比较好请看官方文档(http://www.drbd.org/users-guide/s-build-deb.html):
1. 安装module-assistant ,apt-get install module-assistant ;
2. 使用module-assistant 来配置DRBD,非常方便, module-assistant auto-install drbd8 (简写方式 m-a a-i drbd8);
3. 安装完成后,只要不出错就可以了,然后检查是否安装成功:
#lsmod |grep drbd
drbd 178540 3
cn 5344 1 drbd
4. 配置/etc/drbd.conf 文件类似如下,并且复制此文件到另外一台服务器上同样的地方( scp /etc/drbd.conf 10.0.10.2:/etc/drbd.conf ):
global {
usage-count yes;
}
common {
protocol C;
}
resource r0 {
syncer {
rate 100M;
al-extents 25;
}
on db1 {
device /dev/drbd1;
disk /dev/hdd1; #你要实现镜像的磁盘
address 10.0.10.1:7789; #你的数据库1
meta-disk internal;
}
on db2 {
device /dev/drbd1;
disk /dev/hdd1;
address 10.0.10.2:7789; #你的数据库2
meta-disk internal;
}
}
5. 两个服务器上分别执行 drbdadm create-md r0 ,创建,并格式化 系统 mkfs.ext3 /dev/hdd1 ,如果出错,执行 dd if=/dev/zero of=/dev/hdd1 bs=1M count=1 。
6. 两个服务器分别启动DRBD #/etc/init.d/drbd restart
#cat /proc/drbd
1: cs:Connected st:Secondary/Primary ds:UpToDate/UpToDate C r---
这样就是启动成功了。自己mount文件系统,并且验证数据写入。(这里其实不需要太多的步骤,后面由 heartbeat来实现自动主备切换和数据库文件系统切换)
3、Heartbeat安装和配置,请参考其他文档: apt-get install heartbeat 。保持两个服务器 /etc/ha.d下 authkeys, ha.cf, haresource三个文件一致性。
more authkeys |grep -v ^#
auth 1
1 crc
more ha.cf |grep -v ^#
debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility local0
keepalive 2
deadtime 5
warntime 10
initdead 10
udpport 694
mcast eth1 225.0.10.1 694 1 0
auto_failback on
node db1
node db2
more haresources |grep -v ^#
db1 drbddisk Filesystem::/dev/drbd1::/usr/local/mysql/data::ext3 mysql 192.168.10.158
以上内容如果不理解,请看官方文档(http://downloads.mysql.com/docs/mysql-ha-scalability-en.pdf),注意你的mysql 数据文件的目录,我的是
/usr/local/mysql/data
。 ext3 后面有个mysql,其实是一个脚本文件,需要放在 /etc/ha.d/resource.d/ 下面,注意红色部分是你mysql的启动脚本:
more resource.d/mysql
#!/bin/bash
##This script is inteded to be used as resource script by heartbeat
## 2010.09.20 by jiekechoo
#
###
. /etc/ha.d/shellfuncs
case "$1" in
start)
res=`/etc/init.d/mysql.server start`
ret=$?
ha_log $res
exit $ret
;;
stop)
res=`/etc/init.d/mysql.server stop`
ret=$?
ha_log $res
exit $ret
;;
status)
if [[ `ps -ef | grep '[m]ysqld'` > 1 ]] ; then
echo "running"
else
echo "stopped"
fi
;;
*)
echo "Usage: mysql.server {start|stop|status}"
exit 1
;;
esac
exit 0
启动Heartbeat ,/etc/init.d/heartbeat restart
确认heartbeat 启动成功,远程访问 虚拟ip 192.168.10.158
的3306,看看是否成功。接着,在heartbeat主机上(ifconfig 看看虚拟IP在哪个机器上)执行
/usr/lib/heartbeat/hb_standby ,再去试试远程访问虚拟IP
mysql服务。我的环境下,切换时间在5秒左右,对于前台web服务器,就是感觉卡了一下。
发表评论
-
mysql binlog分析工具
2013-01-26 22:45 1492https://github.com/tangfl/jbinl ... -
MySQL 百万级分页优化(Mysql千万级快速分页)
2012-12-07 22:30 0以下分享一点我的经验 一般刚开始学SQL的时候,会这样写 ... -
mysql共享表空间和独立表空间
2012-12-07 22:12 0innodb表的数据结构 innodb这种引擎 ... -
InnoDB之表空间
2012-12-07 22:12 0innoDB是MySQL的重要存储引擎,为数据提供了很好 ... -
MySQL 系统架构 说明
2012-12-07 22:07 848说明:本文转自 简朝阳(MySQL ACE)的 《MyS ... -
基于InnoDB存储引擎的mysql数据库表结构详解
2012-12-07 22:05 3543前言 前一篇文章基于InnoDB存储引擎的mysql数 ... -
MySQL技术内幕:InnoDB存储引擎读书笔记(下)
2012-12-07 21:58 1300第六章、锁 锁是区别文件系统和数据库系统的一个关键 ... -
MySQL技术内幕:InnoDB存储引擎读书笔记(中)
2012-12-07 21:54 1482第四章、表 4.1 ... -
MySQL技术内幕:InnoDB存储引擎读书笔记(上)
2012-12-07 21:53 1614第一章、mysql体系结构和存储引擎 1.1、数据 ... -
由12306.cn谈谈网站性能技术
2012-10-17 16:35 91812306.cn网站挂了,被 ... -
mysql水平切分
2012-10-17 13:22 1237在大中型项目中,在 ... -
mysql主从复制(半同步方式)
2012-08-15 12:22 2970一、半同步复制原理介 ... -
淘宝开源 mysql 插件,让mysql像nosql一样使用
2012-06-29 17:28 1166http://rdc.taobao.com/team/jm/a ... -
mysql的几个主要分支
2012-06-29 17:11 1323http://www.percona.com/software ... -
mysql 添加用户,并对数据库授权
2011-12-07 11:46 982use mysql; insert into user ... -
MySQL server has gone away 问题的解决方法
2011-04-11 11:27 9741、应用程序(比如PHP)长时间的执行批量的MYSQL语句。 ... -
DRBD 提升了 MySQL 的集群能力
2011-03-02 23:00 986前几天 MySQL 站点上 ... -
快速/简单实现mysql数据库集群(mysql cluster)
2011-03-02 22:58 1822最近一直在研究mysql的高可用性和负载均衡技术,对于数据库/ ... -
MySQL复制实现互为主从双机热备
2011-03-02 22:55 1830A B 为两台MySQL服务器,均开启二进制日志,数据库版本 ... -
Drbd + heartbeat + mysql replication来构建mysql的高可用性
2011-03-02 22:50 1362A(M)[192.168.33.11\192.168.43.1 ...
相关推荐
Heartbeat+MySQL+DRBD构建高可用MySQL方案
Mysql+drbd+heartbeat+amoeba集群配置详解
Heartbeat MySQL DRBD构建高可用MySQL方案 完整版
DRBD+Mysql实现Mysql高可用
MySQL高可用扩展集群应用之配置mysql+heartbeat+drbd实现Mysql写操作高可用.pdf 学习资料 复习资料 教学资源
MySQL+Heartbeat+DRBD+构建高可用MySQL
以上软件包均为Heartbeat双机软件的功能模块包,主要支持双机Ha的应用及管理功能drbd-8.3.8.1.tar.gz DRBD软件包,DRBD实际是一种块设备的实现,主要被用于Linux平台下的高可用方案之中,它是和内核模块和相关程序而...
生产环境mysql主从+heartbeat+drbd 集群架构规划部署详细方案
基于heartbeat和drbd的高可靠系统的研究,李红伟,詹舒波,随着互联网的发展,越来越多的服务应用及数据存储需要稳定可靠的服务器提供,而商用的双机互备系统或数据库同步系统过于昂贵,小
利用drbd+heartbeat+oracle10g实现高可用HA方案成功配置案例文档整理
heartbeat+drbd+mysql安装部署
DRBD+Heartbeat+NFS nfs文件服务器集群搭建 测试可以正常使用 操作详细
所含软件有: Heartbeat-STABLE-2-1-STABLE-2.1.4.tar.bz2 drbd-8.3.0.tar.tar libnet.tar.gz
Centos5.6 x86_64下部署安装DRBD+Heartbeat+MySQL
本文详细描述 Heartbeat+DRBD+MySQL 组合的高可用方案搭建,每一步都有详细描述+截图,保证一部到位
heartbeat+drbd实现边际双机热备
DRBD+HEARTBEAT+MYSQL(mysql一主多从)安装配置及测试_V_0.2.doc
NULL 博文链接:https://qingwei201314.iteye.com/blog/1970849
NFS+Heartbeat+DRBD构建高可用存储系统,可容纳1-2T小文件
DRBD是一个用软件实现的、无共享的、服务器之间镜像块设备内容的存储复制解决方案。 DRBD Logo数据镜像:实时、透明、同步(所有服务器都成功后返回)、异步(本地服务器成功后返回)。DBRD的核心功能通过Linux的...