cobar mysql_cobar mysql 高可用
---------------------------------------------
server2 IP:172.25.38.2
server5 IP:172.25.38.5
---------------------------------------------
1)安装mysql [server2]、[server5]
yum install -y mysql-server
rpm -qa|grep mysql##安装好,可见已安装的包
mysql-libs-5.1.71-1.el6.x86_64
mysql-5.1.71-1.el6.x86_64
mysql-server-5.1.71-1.el6.x86_64
[server2] ##编辑mysql配置文件
vim /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
server-id=2
binlog-do-db=dbtest
binlog-ignore-db=mysql
log-bin=mysql-bin
master-host=172.25.38.5
master-user=ly
master-password=westos
master-port=3306
replicate-ignore-db=mysql
replicate-do-db=dbtest
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
当配置server2为主时,server5为从时,把以#开头的,把#去掉
[server5]
vim /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
symbolic-links=0
server-id=5
log-bin=mysql-bin
binlog-do-db=dbtest
binlog-ignore-db=mysql
#master-host=172.25.38.2
#master-user=ly
#master-password=westos
#master-port=3306
#replicate-ignore-db=mysql
#replicate-do-db=dbtest
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
log-error=/var/log/mysqld.log
/etc/init.d/mysqld start##开启数据库
mysqladmin -u root password westos##设置密码
[root@server5 ~]# mysql -p##进入数据库设置
Enter password:
mysql> create user ly@'172.25.38.5' identified by 'westos';##创建用户并设置密码
mysql> grant all on *.* to ly@'172.25.38.5';##授予权限
mysql> flush privleges;##刷新
mysql> show master status;##主节点状态
+------------------+----------+--------------+------------------+
| File |Position |Binlog_Do_DB | Binlog_Ignore_DB|
+------------------+----------+--------------+------------------+
| mysql-bin.000004| 254 | dbtest | mysql |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
[root@server2 ~]# mysql -p
Enter password:
mysql> change master to master_host='172.25.38.2',master_user='ly',master_password='westos';
mysql> start slave;##开启从节点
mysql> show slave status\G;##查看从的状态
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 172.25.38.5
Master_User: ly
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000004
Read_Master_Log_Pos: 254
Relay_Log_File: mysqld-relay-bin.000005
Relay_Log_Pos: 399
Relay_Master_Log_File: mysql-bin.000004
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB: dbtest
Replicate_Ignore_DB: mysql
##做同样类似操作,最后做出双向主从同步
[root@server2 ~]# mysql -p
Enter password:
mysql> create user ly@'172.25.38.2' identified by 'westos';
mysql> grant all on *.* to ly@'172.25.38.2';
mysql> flush privileges;
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position| Binlog_Do_DB| Binlog_Ignore_DB|
+------------------+----------+--------------+------------------+
| mysql-bin.000012| 106 | dbtest | mysql |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
[root@server5 ~]# mysql -p
Enter password:
mysql> change master to master_host='172.25.38.2',master_user='ly',master_password='westos';
mysql> start slave;
mysql> show slave status\G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 172.25.38.5
Master_User: ly
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.0000012
Read_Master_Log_Pos: 254
Relay_Log_File: mysqld-relay-bin.0000013
Relay_Log_Pos: 106
Relay_Master_Log_File: mysql-bin.0000012
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB: dbtest
Replicate_Ignore_DB: mysql
---------------------------------------------
2)安装heartbeat [server2]、[server5]
得到如下安装包
heartbeat-3.0.4-2.el6.x86_64.rpm
heartbeat-devel-3.0.4-2.el6.x86_64.rpm
heartbeat-libs-3.0.4-2.el6.x86_64.rpm
ldirectord-3.9.5-3.1.x86_64.rpm
yum install openssl perl-Net-SSLeay perl-TimeDate perl-libwww-perl perl-Compress-Zlib perl-HTML-Parser perl-HTML-Tagset ipvsadm -y##解决依赖性
rpm -ivh heartbeat-libs-3.0.4-2.el6.x86_64.rpm ldirectord-3.9.5-3.1.x86_64.rpm heartbeat-3.0.4-2.el6.x86_64.rpm heartbeat-devel-3.0.4-2.el6.x86_64.rpm
vim /etc/ha.d/ha.cf##编辑配置
34 logfacility local0
48 keepalive 2
56 deadtime 30
61 warntime 10
71 initdead 60
76 udpport 694##端口
91 bcast eth0 # Linux
157 auto_failback on
211 node server5.example.com
212 node server2.example.com
222 ping 172.25.38.250##一个同一网段可ping的IP,最好是网关
255 respawn hacluster /usr/lib64/heartbeat/ipfail
261 apiauth ipfail gid=haclient uid=hacluster
vim /etc/ha.d/haresources##资源配置
server5.example.com IPaddr::172.25.38.100/24/eth0 drbddisk::example Filesystem::/dev/drbd1::/var/lib/mysql::ext4 mysqld
vim /etc/ha.d/authkeys
auth 1
1 crc
#2 sha1 HI!
#3 md5 Hello!
两台配置一样,直接scp过去就好。
---------------------------------------------
3)配置drbd
在两台主机上添加硬盘,最好一样大小,方便操作
得到如下包
drbd-8.4.2.tar.gz
或者8个如下安装包
drbd-8.4.2-2.el6.x86_64.rpm
drbd-xen-8.4.2-2.el6.x86_64.rpm
drbd-udev-8.4.2-2.el6.x86_64.rpm
drbd-utils-8.4.2-2.el6.x86_64.rpm
drbd-pacemaker-8.4.2-2.el6.x86_64.rpm
drbd-heartbeat-8.4.2-2.el6.x86_64.rpm
drbd-bash-completion-8.4.2-2.el6.x86_64.rpm
drbd-km-2.6.32_431.el6.x86_64-8.4.2-2.el6.x86_64.rpm
以tar包方式进行安装如下:
rpm -ivh drbd-*
yum install gcc flex rpm-build kernel-devel -y
cp /root/drbd-8.4.0.tar.gz /root/rpmbuild/SOURCES/
tar zxf drbd-8.4.0.tar.gz
cd drbd-8.4.0
./configure --enable-spec
./configure --enable-spec --with-km
在当前目录下得到两个文件
drbd.spec drbd-km.spec
rpmbuild -bb drbd.spec
rpmbuild -bb drbd-km.spec
cd /root/rpmbuild/RPMS/x86_64
rpm -ivh *
scp /root/rpmbuild/RPMS/x86_64/* 172.25.38.5:/root
并且执行 rpm -ivh drbd-*
vim /etc/drbd.d/example.res
1 resource example {
2 meta-disk internal;
3 device /dev/drbd1;
4 syncer {
5 verify-alg sha1;
6 }
7 on server5.example.com {
8 disk /dev/vdb;
9 address 172.25.38.5:7789;
10 }
11 on server2.example.com {
12 disk /dev/vdb;
13 address 172.25.38.2:7789;
14 }
15 }
drbdadm create-md example
/etc/init.d/drbd start
drbdadm primary example
cat /proc/drbd#在两台主机上查看同步状态
mkfs.ext4 /dev/drbd1#数据同步结束后创建文件系统
mount /dev/drbd1 /var/www/html#挂载文件系统
---------------------------------------------
4)安装jdk
得到
jdk-6u32-linux-x64.bin
sh jdk-6u32-linux-x64.bin
mv jdk-6u32-linux-x64 java
mv java /usr/local
vim /etc/profile
export JAVA_HOME=/usr/local/java
export CLASSPATH=.:$JAVA_HOME/bin:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
cd /home/
测试:
vim test.java
class test {
public static void main(String[] args)
{
System.out.println("Hello world!");
}
}
java test
---------------------------------------------
5) 安装cobar
cobar-server-1.2.6.zip
unzip cobar-server-1.2.6.zip
cd /root/cobar-server-1.2.6/conf
vim schema.xml
172.25.38.5:3306/dbtest
172.25.38.5:3306/dbtest
root
westos
STRICT_TRANS_TABLES
vim server.xml
westos
dbtest
id
2
512
cd /root/cobar-server-1.2.6/bin
[root@server2 bin]# ./startup.sh
"/usr/local/java/bin/java" -Dcobar.home="/root/cobar-server-1.2.6" -classpath "/root/cobar-server-1.2.6/conf:/root/cobar-server-1.2.6/lib/classes:/root/cobar-server-1.2.6/lib/cobar-common-1.2.6.jar:/root/cobar-server-1.2.6/lib/cobar-config-1.2.6.jar:/root/cobar-server-1.2.6/lib/cobar-net-1.2.6.jar:/root/cobar-server-1.2.6/lib/cobar-parser-1.2.6.jar:/root/cobar-server-1.2.6/lib/cobar-route-1.2.6.jar:/root/cobar-server-1.2.6/lib/cobar-server-1.2.6.jar:/root/cobar-server-1.2.6/lib/log4j-1.2.16.jar:/root/cobar-server-1.2.6/lib/slf4j-api-1.6.4.jar:/root/cobar-server-1.2.6/lib/slf4j-log4j12-1.6.4.jar" -server -Xms1024m -Xmx1024m -Xmn256m -Xss128k -XX:+AggressiveOpts -XX:+UseBiasedLocking -XX:+UseFastAccessorMethods -XX:+DisableExplicitGC -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 com.alibaba.cobar.CobarStartup >> "/root/cobar-server-1.2.6/logs/console.log" 2>&1 &
[root@server2 bin]# /etc/init.d/drbd start
Starting DRBD resources: [
]
.
[root@server2 bin]# ip addr show
1: lo: mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:f6:11:cd brd ff:ff:ff:ff:ff:ff
inet 172.25.38.2/24 brd 172.25.38.255 scope global eth0
inet 172.25.38.100/24 brd 172.25.38.255 scope global secondary eth0
inet6 fe80::5054:ff:fef6:11cd/64 scope link
valid_lft forever preferred_lft forever
[root@server2 bin]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root 15006084 1723528 12520292 13% /
tmpfs 203008 0 203008 0% /dev/shm
/dev/vda1 495844 33452 436792 8% /boot
/dev/drbd1 4128284 95208 3823372 3% /var/lib/mysql
[root@server2 bin]#./shutdown.sh
[root@server5 conf]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root 17069948 1602508 14600320 10% /
tmpfs 251136 0 251136 0% /dev/shm
/dev/vda1 495844 33467 436777 8% /boot
/dev/drbd1 4128284 95232 3823348 3% /var/lib/mysql
[root@server5 conf]# ip addr show
1: lo: mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:6e:00:88 brd ff:ff:ff:ff:ff:ff
inet 172.25.38.5/24 brd 172.25.38.255 scope global eth0
inet 172.25.38.100/24 brd 172.25.38.255 scope global secondary eth0
inet6 fe80::5054:ff:fe6e:88/64 scope link
valid_lft forever preferred_lft forever
-------------------------------------
cobar mysql_cobar mysql 高可用相关推荐
- 死磕数据库系列(二十六):MySQL 高可用之单主、双主模型组复制配置实践
点关注公众号,回复"1024"获取2TB学习资源! 前面我们学习:MySQL 高可用之组复制(MGR)技术的相关原理知识,今天我将详细的为大家介绍 MySQL 高可用技术组复制的单 ...
- 优酷土豆资深工程师:MySQL高可用之MaxScale与MHA
讲师介绍 侯野优酷土豆资深数据库工程师 擅长Orale.MySQL故障诊断.性能调优,目前专注于MySQL的高可用技术. 曾任职于大连东软.清华紫光.触控科技等公司,服务过华夏银行.中国华能电力集团 ...
- Mysql进阶(4)——基于MHA的MySQL高可用架构
前言 MySQL高可用性大杀器之MHA MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职 ...
- heartbeat+drbd+mysql构建mysql高可用群集
heartbeat+drbd+mysql构建mysql高可用群集 1. 试验环境: 操作系统:Red Hat Enterprise Linux 5.4 所需的软件包: mysql-5.5.22.tar ...
- corosync+pacemaker+drbd构建mysql高可用平台的简单案例
写在前面:如果此文有幸被某位朋友看见并发现有错的地方,希望批评指正.如有不明白的地方,愿可一起探讨. 案例拓扑图 说明: ansible主机主要作用在于配置和安装两台corosync+pacemake ...
- 探索MySQL高可用架构之MHA(6)
探索MySQL高可用架构之MHA(6) -----构建mysql高可用系列(共9篇) 上一篇文章介绍了本次架构的Atlas读写分离! 本篇文章主要介绍本次架构中的keepalive部分! 什么是Kee ...
- mysql高可用_mysql高可用方案
第一节:mysql 高可用方案 1.1 一主一从架构 mysql 配置为主从模式,从库是主库的 backup,同一时间设置其中一台为主服务器,提供读写,另一台服务器作为热备,不提供读写,通过复制与主服 ...
- 从mysql高可用架构看高可用架构设计
高可用HA(High Availability)是分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计减少系统不能提供服务的时间. 假设系统一直能够提供服务,我们说系统的可用性是100%.如果 ...
- MySQL 高可用架构 之 MHA (Centos 7.5 MySQL 5.7.18 MHA 0.58)
目录 简介 环境准备 秘钥互信 安装基础依赖包 安装MHA组件 安装 MHA Node组件 安装 MHA Manager 组件 建立 MySQL 一主三从 初始化 MySQL 启动MySQL 并简单配 ...
- MySQL高可用方案-PXC(Percona XtraDB Cluster)环境部署详解
MySQL高可用方案-PXC(Percona XtraDB Cluster)环境部署详解 Percona XtraDB Cluster简称PXC.Percona Xtradb Cluster的实现是在 ...
最新文章
- 无人驾驶之车道线检测简易版
- gatdata获取曲线_GetData软件使用--获取曲线图中的数据
- Docker(一):Docker核心技术预览
- 背水一战 Windows 10 (10) - 资源: StaticResource, ThemeResource
- 默认登录_常见品牌路由器默认登录密码大全
- android java 调用栈_Android开发中打印方法调用栈
- Kali Linux Network Scanning Cookbook读书笔记之nmap
- ngrok跟小米球的使用
- css学习笔记-黑马程序员前端视频
- uplift model增益模型相关术语概念名词汇总
- 无法将为“Microsoft.Office.Interop.Word.ApplicationClass”的 COM 对象强制转换为接口类型
- Linux应用开发(十一)——I^2C接口
- Kali Linux 2020.1安装教程
- 谷歌重磅:可以优化自己的优化器!手动调参或将成为历史!?
- 计算机的变化作文,我的变化作文
- 认知空间是什么意思_为什么很多女生都是“路痴”| 男女的空间认知有什么差异...
- 国科大--多媒体分析与理解--2020考试试题
- 数据可观察性如何帮助数据目录计划
- [QT]制作软件级屏保
- 安全工具Burp Suite的安装及使用
热门文章
- 计算机网络管理员试题实操,网络管理员试题(实操).doc
- 《博弈论》— 人生何处不博弈
- 如何设计并实施CRM与ERP的整合方案?
- 计算机软硬件的组成及主要技术指标,计算机软硬件系统的组成及主要技术指标...
- Microsoft SQL Server 2008 R2官方下载地址
- 华为s2600t java_华为S2600T------v1版本
- IPC之消息队列(Message Queue)
- 爬虫基础之代理的基本原理
- 运维安全操作建议规范手册
- 苹果怎么用计算机解锁,苹果ios10密码解锁设置图文教程 怎么用密码解锁