l15mysql多机负载设置

一、主从数据库配置 可实现读写分离

1、MySQL任何一台数据库服务器都可以作为主数据库服务器,打开MySQL的配置文件(对于windows就是MySQL安装目录下的my.ini文件,对于linux通常就是/etc/my.cnf文件)

[mysqld]

server-id=1

datadir=/var/lib/mysql

log-bin=/var/lib/mysql/mysql-bin

socket=/var/lib/mysql/mysql.sock

MySQL进行主从复制是通过二进制的日志文件来进行,所以我们必须开启MySQL的日志功能,同时每一台数据库服务器都需要指定一个唯一的server-id,通常主数据库服务器我们指定为1。

重启服务

主数据库服务器上创建一个可以进行复制的用户账号

GRANT replication slave ON *.* TO ‘repuser‘@‘%‘ IDENTIFIED BY ‘123456‘;

flush privileges;

%可以直接指定复制的IP地址!

replication slave是MySQL数据库中表示复制的权限名称,repuser则是表示从数据库服务器登陆到主数据库服务器时用到的用户名称

查询主机日志和position

show master STATUS;

2、配置从机器

[mysqld]

server-id=2 #区别于主机

log-bin=/var/lib/mysql/mysql-bin

配置同步SQL 需要主IP 复制的用户名密码  logfile和Position

mysql>change master to

master_host=‘192.168.1.12‘,

master_user=‘repuser‘,

master_password=‘123456‘,

master_log_file=‘mysql-bin.000001‘,

master_log_pos=1006;

启动Slave同步进程

mysql> start slave;

主从同步检查
mysql> show slave status\G
==================================
Slave_IO_State:
Master_Host: 192.168.1.12
Master_User: repuser
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000005
Read_Master_Log_Pos: 415
Relay_Log_File: localhost-relay-bin.000008
Relay_Log_Pos: 561
Relay_Master_Log_File: mysql-bin.000005
Slave_IO_Running: YES
Slave_SQL_Running: YES
Replicate_Do_DB:
……………省略若干……………
Master_Server_Id: 1

1 row in set (0.01 sec)

其中Slave_IO_Running 与 Slave_SQL_Running 的值都必须为YES,才表明状态正常。

二、双主热备,双主+HAProxy!

1、在做数据库的主主同步时需要设置自增长的两个相关配置:auto_increment_offset和auto_increment_increment。

在主主同步配置时,需要将两台服务器的auto_increment_increment增长量都配置为2,

而要把auto_increment_offset分别配置为1和2.

这样才可以避免两台服务器同时做更新时自增长字段的值之间发生冲突。

log-bin-index[=file]  设置此参数是指定二进制索引文件的路径与名称。

log-bin [=file_name]  设置此参数表示启用binlog功能,并制定路径名称。

binlog_format:  STATEMENT模式(SBR) ROW模式(RBR) MIXED模式(MBR)

sync_binlog =1

sync_master_info = 1

sync_replay_log = 1

sync_relay_long_info =1 #以上4个参数最好加上!

2、详细设置A

server-id=1

datadir=/var/lib/mysql

log-bin=/var/lib/mysql/mysql-bin

binlog_format = MIXED

relay_log = /var/lib/mysql/relay-log

auto-increment-increment = 2

auto-increment-offset = 1

sync_binlog = 1

sync_master_info = 1

sync_relay_log = 1

sync_relay_log_info = 1

详细设置B

server-id=2

basedir=C:\mysql-5.6.30-winx64

datadir=C:\mysql-5.6.30-winx64\data

log-bin=C:\mysql-5.6.30-winx64\data\mysql-bin

binlog_format = MIXED

relay_log = C:\mysql-5.6.30-winx64\data/relay-log  #注意如果在Sql下 \r 不对 应该写/r

auto-increment-increment = 2

auto-increment-offset =2

sync_binlog = 1

sync_master_info = 1

sync_relay_log = 1

sync_relay_log_info = 1

3、在两台机器上同时新建同步用户

GRANT replication slave ON *.* TO ‘repuser‘@‘%‘ IDENTIFIED BY ‘123456‘;

flush privileges;

配置同步

change master to

master_host=‘192.168.1.13‘,

master_user=‘repuser‘,

master_password=‘123456‘,

master_log_file=‘mysql-bin.000007‘,

master_log_pos=402;

开启同步

start slave;

4、Haproxy配置

相关资源

利用keepalived和haproxy配置mysql的高可用负载均衡

http://www.cnblogs.com/tae44/p/4717334.html

Azure SLB + httpd + ILB + HAProxy + Atlas + MySQL

http://www.cnblogs.com/hengwei/p/4754420.html

来自为知笔记(Wiz)

时间: 2024-11-04 18:36:29

l15mysql多机负载设置的相关文章

Android的真机开发设置(转)

Android的AVD无比的慢,无语啊,程序编的再好,都无法体验到流畅的感觉,索性,真机测试其............. 方法如下: (1)开机一部Android手机(当让Pad也行) (2)在手机中:设置-->应用程序-->开发-->USB调试 (3)插上USB,装USB 驱动(要自己下载的...) (4)OK 后,在CMD中测试一下,连接是否正常,CMD中命令如下:            adb devices   回车           若显示你的设备名,则证明连接正常. (4)

jmeter 多机负载压测与服务器性能监测

一. 多机负载压测: 1.修改jmeter.properties配置文件 remote_hosts=127.0.0.1 remote_hosts=192.168.1.133:1099 2.启动 控制端启动:jmeter.bat:负载生成器启动sever-jmeter.bat 出现问题: 负载生成器由于装有虚拟机,导致无法连接:解决:禁用虚拟网卡 二.服务器性能监测 1. 原文地址:https://www.cnblogs.com/ohmydenzi/p/8331684.html

ADK真机调试设置

学习 Android开发,涉及到多媒体处理时,模拟机不能满足要求,就要尝试真机调试了,我用的是华为Mate8,设置步骤如下: (1) 连接手机到电脑(USB),打开手机"设置"--"关于手机",可以看到有一栏"版本号",点击四下,会有Toast提示打开开发者模式,返回,即可看到出现"开发者选项"一栏,进入开发者选项,启用"USB调试":                            (2) 此时,电

Microsoft Azure系列之九 实现基于Iaas云服务的虚机负载平衡

如果需要对一个云服务下的不同虚拟机实现负载均衡,可以将Public Port的消息通过负载均衡转发到每个VM,从而实现请求的自动负载均衡. 具体拓扑如下: 我们可以对之前创建的这两台虚拟机,设置80端口的负载均衡. 注意:Azure的负载均衡目前只支持四层,不能保留Session. 负载均衡的算法是Azure设置好的,不能修改.算法主要依赖于五元组(source IP, source port, destination IP, destination port, protocol type).

Hyper-V虑拟机网卡设置方法

相信很多人都在用Hyper-V的虑拟机,比如多系统,软路由等,通常搞不定网卡怎么区分和设定,这里有个最简单的方法: 假设有A.B两个物理网口,装好虚拟机后,会多出一个虚拟网卡假设是C网口,.在本地连接是可以看到三个网卡的. 假设用A物理口上网,我们要设置虚拟网口C与物理网口A共用IP上网: 1.在Hyper-V的管理器中,打开虚拟网络管理器,选择外部网络,然后在连接类型里指定物理网卡A,并勾选"允许管理操作系统共享此网络适配器" 2.然后把物理网卡A的所有项目取消,如下图,只勾选虚拟网

XCode8.3真机调试设置

本文使用XCode8.3.3 首先XCode->Preferncs,进入下面的界面 点击左下角"+"号,并输入账号,然后点击Manage Certificates,左下角添加IOS development. 成功设置 因为苹果在XCode7.0之后,普通的Apple id也可以当做开发者账号使用,在进行真机测试时可以直接使用,不用再缴费688进行开发者认证了. 我登录了 https://developer.apple.com 然后点击最右边的Account,进入 选择最下方的Jo

ZMIN XII条码机怎么设置流水号

最近有很多朋友过来咨询的时候,说他们有标签机或者条码机,问怎么设置流水号,这里跟大家说下,条码机或者标签机只是一个打印机,是打印东西的工具,不是设计内容的工具.如果需要设置流水号,需要在网上下载一个条码软件,在条码软件中用序列生成或者数据库导入,来实现流水号的递增,然后再连接ZMIN XII条码机进行打印.我现在用的条码软件对于可以在windows系统上安装的条码机都是可以连接打印的,条码软件设置流水号的具体步骤如下:1.打开条码软件,设置一下纸张和标签尺寸(这里以1排2列的标签,间距为2,左右

在Vmware workstation上启用客户机虚拟化设置

除了需要在虚拟机的设置处启用VT-X等虚拟化设置外,还需编辑该虚拟机的配置文件,添加以下设置到文件末尾: hypervisor.cpuid.v0= "FALSE" mce.enable= "TRUE"

redhat 刚装完机,设置默认启动方式为命令行

vim /etc/inittab,出现下面的文字 如果你英文好的话应该能看懂,其他就不多解释了 multi-user.target:analogous to runlevel 3 命令行界面 graphical.target:analogous to runlevel 5 图形化界面 操作: 只要在命令行模式下敲入: ln -sf /lib/systemd/system/<target name>.target /etc/systemd/system/default.target 把<t