两台服务器 192.168.187.131 192.168.187.132

1.主从配置 131为主 132为从

在131下

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
server-id = 131 服务器id
#binary log
log-bin = mysql-bin
#statement row mixed 日志格式
binlog-format = mixed
binlog-dp-db=test #指定数据库
binlog-ignore-db=mysql #防止同步mysql
######################
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid service mysqld restart

在132下

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=132
#relay log
relay-log=mysql-relay master-port=3306
master-connect-retry=60
replicate-ignore-db=mysql
replicate-do-db=test
####################
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid service mysqld restart

开放131mysql权限

grant replication client,replication slave on *.* to 'repl'@'%' identified by 'repl';

show master status;  //查看主服务器信息

132下

change master to
master_host = '192.168.187.131',
master_log_file = 'mysql-bin.000006', //根据主服务器来改
master_log_pos=263,
master_user='repl',
master_password='repl'; slave start;
show slave status; //若显示waiting表示成功

接下来在131下进行sql操作,132就会有相应显示

2.主主复制 即两台都为主服务器

实现也很简单,就是各自视对方为主服务器,自己为从服务器即可

在131(原来主服务器)配置加上

relay-log=mysql-relay

在132(原来从服务器)配置加上

log-bin=mysql-bin

binlog-format=mixed

然后像上面描述一样将两边主从同步即可

然后测试 =_=

关于主主复制的主键冲突的解决方法:

在两边的mysql中输入

set session auto_increment_increment=2;
set session auto_increment_offset=1;
set global auto_increment_increment=2;
set global auto_increment_offset=1; set session auto_increment_increment=2;
set session auto_increment_offset=2;
set global auto_increment_increment=2;
set global auto_increment_offset=2;

此方法只适合两个服务器=_=

3.被动主主复制(一读一写)

在只读服务器的mysql配置上加上

read-only=1

show variables like '%read%';//查看是否为只读

4.mysql-proxy实现负载均衡和读写分离

下载mysql-proxy并使用

wget http://dev.mysql.com/get/Downloads/MySQL-Proxy/mysql-proxy-0.8.5-linux-glibc2.3-x86-32bit.tar.gz
tar zxvf mysql-proxy-0.8.5-linux-glibc2.3-x86-32bit.tar.gz
cd mysql-proxy-0.8.5-linux-glibc2.3-x86-32bit
./bin/mysql-proxy -P 4040 --proxy-backend-addresses=192.168.187.131:3306 --proxy-backend-addresses=192.168.187.132:3306 负载均衡 ./bin/mysql-proxy -b 192.168.187.131:3306 -r 192.168.187.132 -s /usr/local/src/mysql-proxy-0.8.5-linux-glibc2.3-x86-32bit/share/doc/mysql-proxy/rw-splitting.lua 读写分离

可在windows下连接虚拟机进行测试

5.partition分区

create table topic(
-> tid int primary key auto_increment,
-> title char(20) not null default ''
-> )engine myisam charset utf8
-> partition by range(tid) (
-> partition t0 values less than(10),
-> partition t1 values less than(20),
-> partition t2 values less than(MAXVALUE)
-> ); create table user(
-> uid int,
-> uname char(6),
-> aid int
-> )engine myisam charset utf8
->
-> partition by list(aid) (
-> partition bj values in (1),
-> partition hb values in (2),
-> partition xs values in (3),
-> partition gx values in (4)
-> );

建表以后可以测试并观察

ll /var/lib/mysql/test 变化

mysql优化(3) 集群配置的更多相关文章

  1. MySQL优化之——集群搭建步骤具体解释

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46833179 1 概述 MySQL Cluster 是MySQL 适合于分布式计算 ...

  2. MySQL Cluster 7.3.5 集群配置参数优化(优化篇)

    按照前面的教程:MySQL Cluster 7.3.5 集群配置实例(入门篇),可快速搭建起基础版的MySQL Cluster集群,但是在生成环境中,还是有很多问题的,即配置参数需要优化下, 当前生产 ...

  3. MySQL Cluster 7.3.5 集群配置实例(入门篇)

    一.环境说明: CentOS6.3(32位) + MySQL Cluster 7.3.5,规划5台机器,资料如下: 节点分布情况: MGM:192.168.137. NDBD1:192.168.137 ...

  4. Openstack的HA解决方案【mysql集群配置】

    使用mysql的galera做多主集群配置,galera的集群优势网络上面有对比,这里不在叙述. 1. 新建3台虚拟机(centos6.5) node1:172.17.44.163 node2:172 ...

  5. MySQL之PXC集群搭建

    一.PXC 介绍 1.1 PXC 简介 PXC 是一套 MySQL 高可用集群解决方案,与传统的基于主从复制模式的集群架构相比 PXC 最突出特点就是解决了诟病已久的数据复制延迟问题,基本上可以达到实 ...

  6. Mysql高可用集群环境介绍

    MySQL高可用集群环境搭建 01.MySQL高可用环境方案 02.MySQL主从复制原理 03.MySQL主从复制作用 04.在Linux环境上安装MySQL 05.在MySQL集群环境上配置主从复 ...

  7. Mysql Innodb cluster集群搭建

    之前搭建过一个Mysql Ndb cluster集群,但是mysql版本是5.7的,看到官网上mysql8的还是开发者版本,所以尝试搭建下mysql Innodb cluster集群. MySQL的高 ...

  8. MySQL数据库企业集群项目实战(阶段三)

                              MySQL数据库企业集群项目实战(阶段三) 作者 刘畅 时间 2020-10-25 目录 1 架构拓扑图 1 1.1 方案一 1 1.2 方案二 2 ...

  9. Ubuntu 14.04中Elasticsearch集群配置

    Ubuntu 14.04中Elasticsearch集群配置 前言:本文可用于elasticsearch集群搭建参考.细分为elasticsearch.yml配置和系统配置 达到的目的:各台机器配置成 ...

随机推荐

  1. WebApi 文件上传

    1. 注意给form表单加上enctype = "multipart/form-data" 属性,否则会导致Action的参数HttpPostedFileBase 对象接收不到文件 ...

  2. Android 部分机型GridView四周默认间距

    在测试兼容性时候,部分机型,比如联想和一加等手机,在使用Gridview的时候,会默认四周有默认边距,10dp左右. 这时候需要设置 android:listSelector="@andro ...

  3. shell全备份脚本(借鉴别人的,在其基础上修复完善了bug)

    #!/bin/bash # Shell script to backup MySql database # Last updated: Aug - MyUSER="root" # ...

  4. Python爬虫实战(3):安居客房产经纪人信息采集

    1, 引言 Python开源网络爬虫项目启动之初,我们就把网络爬虫分成两类:即时爬虫和收割式网络爬虫.为了使用各种应用场景,该项目的整个网络爬虫产品线包含了四类产品,如下图所示: 本实战是上图中的“独 ...

  5. Python学习笔记(五)Python的切片和迭代

    切片 Python提供了切片操作符,可以对list.tuple.字符串进行截取操作. list中的切片应用 语法如下: >>> L = ['Michael', 'Sarah', 'T ...

  6. Leetcode算法刷题:第14题 Longest Common Prefix

    Longest Common Prefix 题目 给予一个列表,元素为字符串,写一个程序找出最长公共前缀 解题思路 先比较两个字符串,如果第一个字符不一样,则返回空值,比较完成后,用这个公共字符串和下 ...

  7. android 遇到的细节 FAQ

    1.ListView 设置addHead 在3.0与之前版本若在:setAdapter之后添加,运行报错.4.0以后不报错 2.ListView  Adapter    getView函数忘记返回vi ...

  8. 从一个Bug说开去--解决问题的思路,Linked Server, Bulk Insert, DataTable 作为参数传递

    声名— 部分内容为杜撰,如有雷同,不胜荣幸! 版权所有,如要引用,请标明出处! 如果打赏,请自便! 1       背景介绍 最近一周在忙一个SQL Server 的Bug,一个简单的Bug,更新两张 ...

  9. Ajax日记

    简要讲Ajax 的内容归纳为博客. AJAX能且仅能从服务器上读取文件,我们使用ajax的时候分为以下几个步骤: 1.  创建ajax对象 2.  链接服务器 3.  发送请求 4.  接收返回值 下 ...

  10. Web常用函数介绍(LoadRunner相关)

    介绍大纲:1. web_url2. web_image3. web_link4. web_submmit_form 详细介绍: 一. web_url web_url 语法: Int Web_url(c ...