mysql版本:mysql-5.6.24-solaris10-sparc-64bit.tar

操作系统:solaris 11g u10

操作用户:使用非root进行操作安装,a路服务器ip地址为192.168.1.1 b路ip地址为192.168.1.2(应改为实际ip地址)

1,安装mysql数据库

  

1)        在预定义目录下创建mysql数据库目录(我是用的目录为/usr/db/)

$mkdir mysql

2)        在mysql目录下创建data目录

$mkdir –p mysql_3306/data

3)        在mysql目录下解压mysql文件

$tar –xvf mysql-5.6.24-solaris10-sparc-64bit.tar

$mv mysql-5.6.24-solaris10-sparc-64bit mysql

4)        初始化data目录

$./mysql/scripts/mysql_install_db --basedir=/usr/sjes/mysql/mysql --datadir=/usr/sjes/mysql/mysql_3306/data/ --user=mor

5)        配置数据库启动文件

$vi /mysql/my.cnf

A路mysql配置内容下:(user 改为对应实际运行用户)

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

socket=/tmp/mysql.sock

pid-file=/usr/db/mysql_3306/mysql.pid

datadir=/usr/db/mysql_3306/data

basedir=/usr/db/mysql/

user=test

character-set-server=utf8

wait_timeout=31536000

interactive_timeout=31536000

server_id=1

B路mysql配置内容如下:

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

socket=/tmp/mysql.sock

pid-file=/usr/db/mysql_3306/mysql.pid

datadir=/usr/db/mysql_3306/data

basedir=/usr/db/mysql/

user=test

character-set-server=utf8

wait_timeout=31536000

interactive_timeout=31536000

server_id=2

6)        启动mysql数据库,并更改root默认密码

$ ./bin/mysqld_safe --defaults-file=/usr/db/mysql/my.cnf --user=test 2>&1 &

$mysql –u root –p(回车进入,不用输入密码)

mysql>use mysql;

mysql> update user set password=password('123456') where user='root';

mysql>flush privileges;

7)        在两路个数据库中创建数据库实例(分别在两个数据库中创建要进行同步的数据库)

mysql> create database test1 default character set 'utf8';

mysql> create database test2 default character set 'utf8';

mysql> create database test3 default character set 'utf8';

以上步骤为创建 a/b两路数据库的具体过程,下面具体配置主主复制步骤:

2 配置主主主主复制

1)        停止mysql数据库

$./bin/mysqladmin shutdown –p 3306 –S /tmp/mysql.sock

2)        分别编辑a,b两路的mysql的配置文件

$vi my.cnf

A路my.cnf配置文件新增内容如下:(auto-increment-increment = 2 auto-increment-offset = 1 为防止在两路数据库添加数据造成自增字段的冲突,一般情况下只在一路进行添加、更新操作,另一路仅做作为读)

##################replication config#######################

log-bin = mysql-bin

auto-increment-increment = 2

auto-increment-offset = 1

replicate-do-db = test1

replicate-do-db = test2

replicate-do-db = test3

binlog-ignore-db = mysql

binlog-ignore-db = information_schema

slave-skip-errors=all

log-slave-updates

symbolic-links=0

skip-name-resolve

B路my.cnf配置文件新增内容如下:

##################replication config#######################

log-bin = mysql-bin

auto-increment-increment = 2

auto-increment-offset = 2

replicate-do-db = test1

replicate-do-db = test2

replicate-do-db = test3

binlog-ignore-db = mysql

binlog-ignore-db = information_schema

slave-skip-errors=all

log-slave-updates

symbolic-links=0

skip-name-resolve

3)        启动mysql数据库

$./bin/mysqld_safe --defaults-file=/usr/db/mysql/my.cnf --user=test 2>&1 &

4)        进入数据库并相互授权

A路执行如下命令

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.2' IDENTIFIED BY ‘123456’;

mysql>flush privileges;

B路执行如下命令

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.1' IDENTIFIED BY ‘123456’;

mysql>flush privileges;

5)        查看授权是否成功

mysql> show grants for root@'192.168.1.1';

6)        互告bin-log信息

A路执行如下命令:

mysql> show master status;

B路执行如下命令:

mysql> show master status;

A路执行如下命令

mysql> change master to master_host='192.168.1.2',master_user='root',master_password='123456',master_log_file='mysql-bin.000002',master_log_pos=2626;

B路执行如下命令

mysql> change master to master_host='192.168.1.1',master_user='root',master_password='123456',master_log_file='mysql-bin.000002',master_log_pos=3625;

7)        在a,b两路上启动复制

mysql>start slave;

8)        在a,b两路上查看复制状态

A路复制状态:

mysql> show slave status\G

B路复制状态

Slave_IO_Running: Yes

Slave_SQL_Running: Yes两个值均为yes则表示复制链接正常。

9)       
测试复制

在a路数据库中执行如下命令:

mysql>use
test;

mysql>
CREATE TABLE `admin_info` (

`username`
varchar(32) NOT NULL,

`password`
varchar(32) DEFAULT NULL,

PRIMARY
KEY (`username`)

)
ENGINE=InnoDB DEFAULT CHARSET=utf8;

mysql>show
tables;

在b路数据库中查看表结构是否同步;

在b路数据库中执行如下命令:

mysql>INSERT
INTO `admin_info` VALUES
('admin','system','25d55ad283aa400af464c76d713c07ad');

在a路数据库中查看记录是否同步。

以上为进行mysql配置主主复制的全过程,当两边复制出现问题时,许重新执行2-(6)中的步骤。

配置mysql为主主复制步骤的更多相关文章

  1. linux环境下配置mysql双主复制

    简单来说,双主复制就是让两台mysql服务器中的数据保持同步,可以用来实现灾备和负载均衡 主机1 IP:192.168.200.128 主机2 IP:192.168.200.131 两台主机系统均为c ...

  2. 分布式数据存储 - MySQL双主复制

    上篇文章<分布式数据存储 - MySQL主从复制>,我们说到MySQL主从复制很好的保障了从库,读的高可用性.so,问题来了: 1.针对主库,写的高可用性又是如何做到高可用性? 2.如果需 ...

  3. keepalived+mysql双主复制高可用方案

    MySQL双主复制,即互为Master-Slave(只有一个Master提供写操作),可以实现数据库服务器的热备,但是一个Master宕机后不能实现动态切换.而Keepalived通过虚拟IP,实现了 ...

  4. MySQL双主复制

    原文发表于cu:2017-06-12 本文简单介绍MySQL双主复制原理及1个简单是双主复制验证. 一.MySQL双主复制原理 1. 双主复制原理 master-master复制的两台服务器,既是ma ...

  5. 如何配置MYSQL的MASTER---SLAVE复制备份?

    如何配置MYSQL的MASTER---SLAVE复制备份? 一.配置一个mysql服务器做master:     在配置文件my.ini中添加如下内容: log-bin=matster-binlog- ...

  6. 怎么设置 mysql 多主复制

    更新 其实本文主要来自www.digitalocean.com ,但是我没有买他们家的 VPS 用来 demo 了.只是用vagrant 来模拟了. 介绍 说说关于通过两台 vps 来扩展 mysql ...

  7. 利用LVS+Keepalived搭建Mysql双主复制高可用负载均衡环境

    应用背景: MySQL复制(主主,主从...)能在保证数据的备份的同时也能够做读写分离分摊系统压力,但是发生单点故障时,需要手动 切换到另外一台主机.LVS和Keppalived可以设定一个VIP来实 ...

  8. mysql 双主复制 centos7

    mysql 安装请看:http://www.cnblogs.com/leohe/p/6839705.html 双主复制设置 1. 两台虚拟机,都是 centos7 主: 10.1.1.115 从: 1 ...

  9. CentOS6.5配置MYSQL一主多从详解

    一.环境 操作系统 :CentOS 6.5 数据库版本:MySQL 主机A:192.168.1.1 (Master) 从机B:192.168.1.2 (Slave) 从机B:192.168.1.3 ( ...

随机推荐

  1. hdu 4468 spy 极其精彩的一道kmp灵活运用题

    出的超级好的一道题.至于好在哪里,请思考题目: 题意抽象出来为给定一个字符串r,找出它的一个最短后缀s,使得这个r可以被 s的某前缀+s的某前缀+......+s的某前缀+s本身构造出来. 具体题目描 ...

  2. bzoj2330(差分约束)

    题解:这道题是练差分约束的一道好题目吧,我具体在代码中注释,这样更加好理解, 为什么求最长路呢?因为这样保证了满足条件,如果存在正权环,就表示无解,就是 正权环之间不断要更多的糖果才行. #inclu ...

  3. 使用python实现后台系统的JWT认证(转)

    今天的文章介绍一种适用于restful+json的API认证方法,这个方法是基于jwt,并且加入了一些从oauth2.0借鉴的改良. 1. 常见的几种实现认证的方法 首先要明白,认证和鉴权是不同的.认 ...

  4. python之路第四篇(基础篇)

    一.冒泡算法实现: 方法一: li = [13,33,12,80,66,1] print li for m in range(4): num1 = li[m] num2 = li[m+1] if nu ...

  5. js生成json数据

    <script src="~/static/js/jquery.min.js"></script><script type="text/ja ...

  6. Emgu.CV(二)

    小实例 class Program { static void Main(string[] args) { #region Emgu.Cv string imgPath = @"D:\tim ...

  7. windows server 2003安装 SQL server 2008r2 版本的步骤

    大家好,这里介绍的是在系统 windows server 2003安装 SQL server 20008r2版本,如有雷同,敬请谅解,如果错误,欢迎大家多提意见 1.下载好安装包解压以后,就会出现如下 ...

  8. 数据抓取分析(python + mongodb)

    分享点干货!!! Python数据抓取分析 编程模块:requests,lxml,pymongo,time,BeautifulSoup 首先获取所有产品的分类网址: def step(): try: ...

  9. 关于celery django django-celery版的搭配的报错问题及解决方法

    G:\python3_django\DFpro\mypro (win)(py3_django) λ python manage.py celery worker --loglevel=infoTrac ...

  10. java设计模式-工厂模式(springweb为例子)

    一般而言,工厂模式分为3种,简单工厂模式,工厂方法模式,抽象工厂模式.这三种工厂模式逐层深入吧. 一,从springWeb.jar包使用抽象工厂模式的一个例子聊起 之前对spring各种痴迷,所以在需 ...