澳门在线威尼斯官方 > 电脑操作 > 安插读写分离,mysql计划mysql读写分离

原标题:安插读写分离,mysql计划mysql读写分离

浏览次数:128 时间:2019-09-15

近来基本mysql的数据库同步,多个库的数目一致, 为了便利测量试验写多少在主mysql,读书在 从mysql,我们先停从贰只

mysql>

进去后,能够在Atlas举办布置,360写的国语注释都很详细,依据注释来布置新闻,当中相比较首要,供给注脚的配备如下:

Rows matched: 1  Changed: 1  Warnings: 0

可以查看到顾客端增加的数据。

mysql>

1.atlas 简介

log-error=/var/log/mysqld.log

此地 客户名叫buck, 密码123456,主机ip为atlas 服务器ip,端口 1234,

假如专门的工作接口能够步入了,就足以在Windows平台下,使用Navicat来接二连三数据库,填写对应的host,Port,客商名,密码就足以

Welcome to the MySQL monitor. Commands end with ; or g.

innodb_flush_log_at_trx_commit=1

那是安装工作接口与管理接口的,如若ip设置的”0.0.0.0”便是说率性IP都足以访谈那几个接口,当然也能够钦点IP和端口,方便测验自身那边未有一点点名,职业接口的客商名密码与MySQL的账户对应的,管理员的客商密码与地点配置的指挥者的顾客密码对应。 

主服务器的IP

在测量试验机上登陆atlas 服务器,mysql  -ubuck  -p123456  -h  172.16.1.1   -P 1234

也能够运用职业接口来做客,使用命令“mysql -h127.0.0.1 -P1234 -ubuck -phello”

#Atlas监听的田间管理接口IP和端口
admin-address = 0.0.0.0:2345 

binlog-do-db=test

安插Atlas,使用vim进行编辑

Atlas下载链接:https://github.com/Qihoo360/Atlas/releases

[root@localhost bin]# mysql -h127.0.0.1 -P2345 -uuser -ppwd

翻开数据库,开采已经插入了6W多条数据了。

 “mysql-proxy”是MySQL自身的读写分离代理

|      | localhost            |

启动Atlas

+----------------------------+---------------------------------------------------------+

至此,读写测验成功,也便是写多少到主mysql,读数据是在从mysql上读取。

锁定数据库

查看 select  * from  yst;

[mysqld_safe]

./encrypt 123456 

  1. 主题数据库连接

2)配置

proxy-backend-addresses = 192.168.1.50:3306

2.mysql主从配置

[root@localhost ~]# cd /demo/atlas[root@localhost home]# wgethttps://github.com/Qihoo360/Atlas/releases/download/2.2.1/Atlas-2.2.1.el6.x86_64.rpm

 “mysql-proxyd”,前边有个“d”,服务的运维、重启、甘休。都以用他来进行的

mysql> flush tables with read lock;

bin目录下放的都是可施行文件

user=mysql

insert into  yst  values(‘‘,‘’,‘’,‘’);#此处简要

| root | localhost.localdomain |

select   * from  yst;

那是设置工作接口与管理接口的,假诺ip设置的”0.0.0.0”便是说任性IP都得以访谈那几个接口,当然也足以内定IP和端口,方便测验自个儿那边未有一点名,专门的学问接口的客户名密码与MySQL的账户对应的,管理员的客商密码与地点配置的管理人的顾客密码对应。

用如下命令,步向Atlas的管理格局“mysql -h127.0.0.1 -P2345 -uuser -ppwd ”,能跻身表明Atlas平常运行着吗,因为它会把团结真是二个MySQL数据库,所以在无需数据库景况的情景下,也足以进去到MySQL数据库形式。

mysql> show slave status G;*************************** 1. row ***************************              Slave_IO_State: Waiting for master to send event                  Master_Host: 192.168.246.134                  Master_User: buck                  Master_Port: 3306                Connect_Retry: 10              Master_Log_File: mysql-bin.000001          Read_Master_Log_Pos: 589              Relay_Log_File: mysqld-relay-bin.000001                Relay_Log_Pos: 251        Relay_Master_Log_File: mysql-bin.000001Slave_IO_Running: YesSlave_SQL_Running: YesReplicate_Do_DB:          Replicate_Ignore_DB:            Replicate_Do_Table:        Replicate_Ignore_Table:      Replicate_Wild_Do_Table:  Replicate_Wild_Ignore_Table:                    Last_Errno: 0                  Last_Error:                  Skip_Counter: 0          Exec_Master_Log_Pos: 17620976              Relay_Log_Space: 407              Until_Condition: None              Until_Log_File:                Until_Log_Pos: 0          Master_SSL_Allowed: No          Master_SSL_CA_File:            Master_SSL_CA_Path:              Master_SSL_Cert:            Master_SSL_Cipher:                Master_SSL_Key:        Seconds_Behind_Master: 0Master_SSL_Verify_Server_Cert: No                Last_IO_Errno: 0                Last_IO_Error:                Last_SQL_Errno: 0              Last_SQL_Error: 1 row in set (0.00 sec)ERROR: No query specified

#Atlas监听的干活接口IP和端口
proxy-address = 0.0.0.0:1234

| SELECT VERSION            | display the version of Atlas                            |

#治本接口的密码
admin-password = pwd

#Atlas后端连连的MySQL主库的IP和端口,可安装多项,用逗号分隔

“test.cnf”唯有一个文本,用来配置代理的,能够利用vim来编排

lib目录下放的是一些包,以及Atlas的重视性

vim test.cnf 

CentOS 7.0

3.测试

Preparing...                ########################################### [100%]

use  test;

1 row in set (0.00 sec)

 insert into  yst  values(‘‘,‘’,‘’,‘’);#这里简要

Your MySQL connection id is 1

flush  privileges;

pid-file=/var/run/mysqld/mysqld.pid

在从MySQL服务器上写入数据,此处写入数据纯粹是为了测验大家读数据时,是查看到从mysql服务器查看数据;

| ADD MASTER $backend        | example: "add master 127.0.0.1:3306", ...              |

wget https://github.com/Qihoo360/Atlas/releases/download/2.2.1/Atlas-2.2.1.el6.x86_64.rpm

| SELECT * FROM backends    | lists the backends and their state                      |

lib目录下放的是局地包,以及Atlas的注重性

[root@localhost bin]# mysql -h127.0.0.1 -P1234 -ubuck -phello

Atlas是由 Qihoo 360铺面Web平台部基础架构团队开拓尊崇的一个基于MySQL合同的多少中间层项目。它在MySQL官方推出的MySQL-Proxy 0.8.2版本的底蕴上,修改了多量bug,加多了累累意义特色。最近该类型在360市肆里面获得了普遍应用。

| mysql-bin.000001 | 589      | test        | mysql            |

其一是用来布局MySQL的账户与密码的,小编的MySQL的客户是buck,密码是123456,刚刚使用Atlas提供的工具生成了相应的加密密码

+----------------+

 能够看来,表达写多少是写在主msql服务器

| SAVE CONFIG                | save the backends to config file                        |

安装好了,它会暗许在”/usr/local/mysql-proxy”下给您转移4个文本夹,以及必要配备的文书,如下:

查阅一下user表,看看修改成功了从未。能够观望,buck的顾客,host已经修改成都百货分号了。

 “encrypt”是用来生成MySQL密码加密的,在布局的时候会用到

mysql> use test;

到主mysql上查看

3. “mysql-proxyd”是360弄出来的,后边有个“d”,服务的起步、重启、甘休。都以用她来施行的

stop  slave;

图片 1

conf目录下放的是布局文件

192.168.1.41

#管住接口的客商名
admin-username = user

翻看主数据库音信,记住上边包车型地铁“File”与“Position”的音信,它们是用来布局从数据库的基本点音讯。能够观望下边一同的数据库的“test”数据库,主从数据库假若数额不同,首先须求手动去联合一下数码,小编在Windows蒙受下只用Navicat复制的数额,这里就不演示了。

进去bin目录,使用encrypt来对数据库的密码实行加密,作者的MySQL数据的客户名是buck,密码是123456,笔者须求对密码进行加密

承认系统中自带的MySQL进不去了,使用如下命令,踏入Atlas的管理形式“mysql -h127.0.0.1 -P2345 -uuser -ppwd ”,能跻身表明Atlas寻常运作着啊,因为它会把团结当成三个MySQL数据库,所以在无需数据库遭受的情况下,也得以进来到MySQL数据库方式。

drwxr-xr-x. 2 root root 4096 Dec 28 10:47 bin drwxr-xr-x. 2 root root 4096 Dec 28 10:47 conf
drwxr-xr-x. 3 root root 4096 Dec 28 10:47 lib
drwxr-xr-x. 2 root root 4096 Dec 17  2014 log

从服务器 ( 192.168.1.41 ),也须要使用vim实行安排,只须求在[mysqld]下边步入server-id=2就足以,全部配备如下:

./mysql-proxyd test start

admin-username = user

#客户名与其对应的加密过的MySQL密码,密码使用PREFIX

-> master_user='buck',

log目录下放的是日记,如报错等错误新闻的记录

owners.

All rights reserved. Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

  1. 数据库的布置

 

mysql> show master status;

#Atlas后端延续的MySQL从库的IP和端口,@后边的数字代表权重,用来作负载均衡,若省略则默感到1,可设置多项,用逗号分隔
proxy-read-only-backend-addresses = 172.16.1.12:3306@1

log目录下放的是日记,如报错等错误新闻的笔录

cd /usr/local/mysql-proxy/conf/

binlog-ignore-db=mysql

mysql>

#Atlas监听的干活接口IP和端口

那是用来报到到Atlas的协会者的账号与密码,与之相应的是“#Atlas监听的军管接口IP和端口”,也便是说须要设置助理馆员登陆的端口,才干跻身管理员分界面,暗许端口是2345,也能够钦点IP登录,钦赐IP后,其余的IP不能够访问管理员的指令分界面。方便测量试验,笔者那边未有一点名IP和端口登入。

进入bin目录,使用encrypt来对数据库的密码举办加密,小编的MySQL数据的顾客名是buck,密码是hello,我急需对密码举行加密

quit

配置主服务器的客户名

不过需求在着力授权三个客户

布置Atlas,使用vim进行编写制定

3.atlas配置

| SELECT * FROM pwds        | lists the pwds                                          |

签到成功,做写数据测量试验

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

#Atlas后端三番三回的MySQL主库的IP和端口,可安装多项,用逗号分隔
proxy-backend-addresses = 172.16.1.2:3306

# 步入数据库

Atlas官方链接:

6 rows in set (0.00 sec)

1)安装

+------------------+----------+--------------+------------------+

在测验机上登陆atlas 服务器,mysql  -ubuck  -p123456  -h  172.16.1.1   -P 1234

[mysqld]

主从复制,此处但是多讲,详细请看

先来测量试验写,方今数据Curry面一条新闻都未曾,开启配置好了的Jmeter,实行写入数据测量试验

grant all on  *.*  to  'buck'@'%'   identified  by  '123456';

#Atlas后端总是的MySQL从库的IP和端口,@前边的数字代表权重,用来作负载均衡,若省略则默以为1,可安装多项,用逗号分隔

/bin目录下的加密程序encrypt加密,下行的user1和user2为示范,将其替换为您的MySQL的客商名和加密密码!

图片 2

Copyright (c) 2000, 2013, Oracle and/or its affiliates.

设置好了,它会默许在”/usr/local/mysql-proxy”下给你转移4个文件夹,以及须求配备的公文,如下:

rpm  -ivh  Atlas-2.2.1.el6.x86_64.rpm

[root@localhost home]# rpm -ivh Atlas-2.2.1.el6.x86_64.rpm

那是用来配置主数据的地点与从数据库的地点,这里配置的主数据库是1.2,从数据库是1.12

master_password='hello'

pwds = buck:RePBqJ+5gI4=                  #为encrypt 生成的密文

master_user='buck'

OK: MySQL-Proxy of test is started

那是用来报到到Atlas的管理员的账号与密码,与之对应的是“#Atlas监听的田间管理接口IP和端口”,也正是说需求安装管理员登入的端口,能力跻身助理馆员分界面,暗中同意端口是2345,也能够钦定IP登入,钦点IP后,其余的IP不能访问管理员的命令界面。方便测量试验,作者那边未有一点名IP和端口登陆。

| ADD CLIENT $client        | example: "add client 192.168.1.2", ...                  |

图片 3

Welcome to the MySQL monitor.  Commands end with ; or g.

反省主从复制状态,要拜望下列标红的音讯中,多少个都以Yes,才证实为主连接正确,假诺有三个是No,须求再次明显刚才记录的日志信息,停掉“stop slave”重新张开安插基本连接。

Atlas代理服务

| Tables_in_test |

序章

pwds = buck:/iZxz+0GRoA=

Query OK, 0 rows affected (0.01 sec)

下载下来后,分别都解压开来,展开Jmeter ( 在bin路面下的jmeter.bat ) ,在测验布置中,导致JDBC的jar包

192.168.1.50

系统

配置基本服务器需求编写制定MySQL的配置文件,实际情况配置步骤如下:

mysql>

+------------------+----------+--------------+------------------+

可以看看测验插入数据的操作时,主数据库的网卡流量比较大,从数据库的流量异常的小,是应为主数据是重大承担写入的,而从数据库器重是背负同步的。

Atlas是360集团弄出来的一套基于MySQL-Proxy基础之上的代办,修改了MySQL-Proxy的有的BUG,况兼优化了多数东西。何况安装方便。

+----------------+

+------+-----------------------+

  1. “test.cnf”唯有二个文件,用来配置代理的,能够利用vim来编排

16 rows in set (0.00 sec)

bin目录下放的都以可施行文件

#无需备份的数据库

能够见到135(50)数据库的流量万分大,134(41)未有怎么流量,那下就能够规定了数额是从数据库读取的。已经落到实处了读写分离。

从数据库 ( 192.168.1.41 )

Query OK, 0 rows affected (0.00 sec)

[root@localhost conf]# vim test.cnf

pid-file=/var/run/mysqld/mysqld.pid

192.168.1.40

| command                    | description                                            |

-> master_port=3306,

配置

主服务器的mysql端口

mysql> create table wl(id int(4),sex varchar(255),birthday date);

master_connect_retry=20

+----------------------------+---------------------------------------------------------+

其一是用来布局MySQL的账户与密码的,小编的MySQL的客户是buck,密码是hello,刚刚使用Atlas提供的工具生成了对应的加密密码

datadir=/data/mysql

-> master_log_pos=589,

Oracle is a registered trademark of Oracle Corporation and/or its

owners.

# 修改host权限为"%"

mysql>  flush privileges;

1 row in set (0.00 sec)

master_port=3306

#亟需备份的数据库

affiliates. Other names may be trademarks of their respective

Atlas (分表) :Atlas-sharding_1.0.1-el6.x86_64.rpm

+----------------------------+---------------------------------------------------------+

| REMOVE BACKEND $backend_id | example: "remove backend 1", ...                        |

各自做询问与插入语句

affiliates. Other names may be trademarks of their respective

Your MySQL connection id is 1

进入数据库,配置主从复制的权限

  1. 读写分离测量试验

mysql> change master to master_host='192.168.1.50',

conf目录下放的是安排文件

admin-password = pwd

您能够让数据库某一台down掉,来测量检验监察和控制的可用性。从此间能够见到大家的督察是好使的,啦啦啦啦!!

log-bin=mysql-bin

mysql> use mysql

mysql> create database test;

-> master_password='hello',

#管制接口的客商名

#主从复制配置

-> master_log_file='mysql-bin.000001',

本文由澳门在线威尼斯官方发布于电脑操作,转载请注明出处:安插读写分离,mysql计划mysql读写分离

关键词:

上一篇:没有了

下一篇:没有了