mysql主从与读写分离安装详解_第1页
mysql主从与读写分离安装详解_第2页
mysql主从与读写分离安装详解_第3页
mysql主从与读写分离安装详解_第4页
mysql主从与读写分离安装详解_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Mysql主从与读写分离主从模式Master:Slave:一、配置主服务器1.1修改mysql配置文件 # vi /etc/my.cof在配置文件中添加log-bin=mysql-bin(开启二进制日志) server-id = 11.2启动mysql service mysqld start1.3登陆mysql mysql -uroot ppasswd1.4授权给从服务器 mysql> GRANT REPLICATION SLAVE ON *.* to 'user''' identifie

2、d by password;1.5查看主数据库状态mysql> show master status;+-+-+-+-+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+-+-+-+-+| mysql-bin.000005 | 261 | | |+-+-+-+-+记录下 File 及 Position 的值,在后面进行从服务器操作的时候需要用到二、配置从服务器2.1修改从服务器的配置文件/etc/f添加 server-id = 2,并确保这个ID没有被别的MySQL服务所使用。2.2启动mysql服务service mysqld

3、start2.3通过命令行登录管理MySQL服务器#mysql -uroot -p'password'2.4执行同步SQL语句mysql> change master tomaster_host=,master_user=user,master_password=password,master_log_file=mysql-bin.000005,master_log_pos=261;正确执行后启动Slave同步进程mysql> start slave;2.5主从同步检查mysql> show slave statusG=* 1. row

4、*Slave_IO_State:Master_Host: Master_User: userMaster_Port: 3306Connect_Retry: 60Master_Log_File: mysql-bin.000005Read_Master_Log_Pos: 415Relay_Log_File: localhost-relay-bin.000008Relay_Log_Pos: 561Relay_Master_Log_File: mysql-bin.000005Slave_IO_Running: YESSlave_SQL_Running: YESReplicate_

5、Do_DB:省略若干Master_Server_Id: 11 row in set (0.01 sec)=其中Slave_IO_Running 与 Slave_SQL_Running 的值都必须为YES,才表明状态正常。如果不是yes 请认真检查配置文件中的Server_Id是否正确,或者执行同步输入是否正确。看下防火墙是否打开了3306端口!2.6如果主服务器已经存在应用数据,则在进行主从复制时,需要做以下处理:(1)主数据库进行锁表操作,不让数据再进行写入动作mysql> FLUSH TABLES WITH READ LOCK;(2)查看主数据库状态mysql> show ma

6、ster status;(3)记录下 FILE 及 Position 的值。将主服务器的数据文件(整个/opt/mysql/data目录)复制到从服务器,建议通过tar归档压缩后再传到从服务器解压。(4)取消主数据库锁定mysql> UNLOCK TABLES;2.7验证主从复制效果(1)主服务器上的操作在主服务器上创建数据库first_dbmysql> create database first_db;Query Ok, 1 row affected (0.01 sec)在主服务器上创建表first_tbmysql> create table first_tb(id int

7、(3),name char(10);Query Ok, 1 row affected (0.00 sec)在主服务器上的表first_tb中插入记录mysql> insert into first_tb values (001,myself);Query Ok, 1 row affected (0.00 sec)(2)在从服务器上查看mysql> show databases;=+-+| Database |+-+| information_schema | first_db | mysql | performance_schema | test |+-+5 rows in set

8、 (0.01 sec)=数据库first_db已经自动生成mysql> use first_dbDatabase chagedmysql> show tables;=+-+| Tables_in_first_db |+-+| first_tb |+-+1 row in set (0.02 sec)=数据库表first_tb也已经自动创建mysql> select * from first_tb;=+-+-+| id | name |+-+-+| 1 | myself |+-+-+1 rows in set (0.00 sec)=记录也已经存在由此,整个MySQL主从复制的过程

9、就完成了,接下来,我们进行MySQL读写分离的安装与配置。读写分离配置安装我只有两台服务器,所以下面的配置我都会在master上面进行MySQL-Proxy可通过以下网址获得:.tw/Downloads/MySQL-Proxy/现在的最新版本为mysql-proxy 0.8.3 已经将所需要的lua脚本集成到安装包里,所以不需要再另行安装lua我的环境为两台虚拟机所以我下载的是mysql-proxy-0.8.3-linux-rhel5-x86-32bit.tar.gz1.1将安装包下载之后,通过tar命令解压即可#tar zxf mysql-

10、proxy-0.8.3-linux-rhel5-x86-32bit.tar.gz#mv mysql-proxy-0.8.3.-linux-rhel5-x86-32bit ./mysql-proxy#cd mysql-proxy到这里mysql-proxy包已经安装完成。1.2现在开始编写启动脚本并启动#!/bin/bash/mysql-porxy/proxy/bin/mysql-proxy -proxy-backend-addresses=:3306 -proxy-read-only-backend-addresses=:3306 -proxy-lua-

11、script=/mysql-porxy/proxy/share/doc/mysql-proxy/rw-splitting.lua &注:如果正常情况下启动后终端不会有任何提示信息,mysql-proxy启动后会启动两个端口4040和4041,4040用于SQL转发,4041用于管理mysql-proxy。如有多个mysql-slave可以依次在后面添加全部的安装配置已经完成。我们来进行验证1、连接测试 因为默认情况下mysql数据库不允许用户在远程连接 mysql>grant allprivileges on *.* to 'root''%' id

12、entified by 'password' mysql>flushprivileges; 客户端连接 #mysql -uroot-ppassword -h -P40402、读写分离测试首先停止slave服务器的复制mysql>stop slave;连接MySQL-Proxy#mysql -uroot-ppassword -h -P4040登陆成功后,在first_db数据的first_tb表中插入两条记录mysql> use first_db;Database changedmysql> insert int

13、o first_tb values (007,first);Query Ok, 1 row affected (0.00 sec)mysql> insert into first_tb values (110,second);Query Ok, 1 row affected (0.00 sec)下面,分别登陆到主从数据库服务器,对比记录信息首先,检查主数据库服务器mysql> select * from first_tb;=+-+-+| id | name |+-+-+| 1 | myself |+-+-+| 007 | first |+-+-+| 110 | second |+-+-+3 rows in set (0.00 sec)=两条新记录都已经存在然后,检查从数据库服务器mysql> sel

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论