linux系统同步数据库,【Mysql】Linux系统下的数据库服务器主从复制、读写分离、同步数据...

Linux系统下的数据库服务器主从复制、读写分离、同步数据到新的从机

(1)主从复制

① 主机Master的配置步骤:

a. 编辑etc下的my.cnf文件 ----> vi /etc/my.cnf 命令

注意:修改server-id、开启日志机制、复制或忽略复制的数据库

binlog-do-db=数据库名要复制的数据库

binlog-ignore-db=数据库名要忽略复制的数据库

b. 重启mysql服务:service mysqld restart

c. 登录mysql服务器:mysql –uroot –pmysql123

d. 查看主机的状态:

e. 关闭防火墙

②从机Slave的配置:

a. 编辑配置文件:vi /etc/my.cnf

注意:修改server-id、配置依赖的主机信息

relay-log-index=slave-relay-bin.index

relay-log=slave-relay-bin

b. 重启:service mysqld restart

c. 登录:mysql –uroot –pmysql123

d. 关闭slave:stop slave;

e. 要复制的主机:

change master to master_host='192.168.62.133',master_user='root',

master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=107;

注:参数值为主机ip、用户、密码、标红的为主机的状态信息

f. 启动:start slave;

g. 查看从机的状态:show slave status \G; ’\G’表示以网格形式展示

h. 关闭防火墙

i. 同样的方式配置另外一台slave机器

j. 测试:修改主机数据库表,查看从机是否同步

(2)读写分离

master主机负责写操作;slave从机负责读操作,在实战环境中,一般都是一主多从;写操作比较少,读操作比较多;在主从复制的基础之上配置读写分离,通过mycat来实现读写分离

1) 系统配置:

① 使用虚拟机克隆一台纯净版系统机器

② 安装JDK,并配置环境变量(安装(./;rpm -ivh);

编辑/etc/profile;source /etc/profile)

让配置生效:source /etc/profile

③ 下载mycat,通过文件传输工具,传输到Linux系统下的/usr目录下

④ 通过tar –zxvf 解压文件:tar –zxvf Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz就能使用

2) 配置Mycat环境变量:

① 配置Linux配置文件:vi /etc/profile

在文件底部添加mycat根目录和根目录的命令:

export MYCAT_HOME=/usr/mycat //Mycat安装路径的根目录

export PATH=$PATH:/usr/mycat/bin//将mycat命令添加到path中,可在任意目录下使用

让配置生效:source /etc/profile

② 在安装(解压)路径下配置conf配置文件和logs日志文件,切换到/usr/mycat目录下可查看

③ 修改/usr/mycat/conf目录下的schema.xml、server.xml、wrapper.conf配置文件

a. 修改配置/usr/mycat/conf /schema.xml文件:

属性解释:

balance属性:负载均衡类型,目前的取值有 4 种:

balance="0", 不开启读写分离机制,所有读操作都发送到当前可用的writeHost 上

balance="1",全部的 readHost 与 stand by writeHost 参与 select 语句的负载均衡,

简单的说,当双主双从模式(M1 ->S1 , M2->S2,并且 M1 与 M2 互为主备),正常情况下,

M2,S1,S2 都参与 select 语句的负载均衡

balance="2",所有读操作都随机的在 writeHost、 readhost 上分发

balance="3",所有读请求随机的分发到 wiriterHost 对应的 readhost 执行,writerHost

不负担读压力,注意 balance=3 只在 1.4 及其以后版本有, 1.3 没有

writeType属性:负载均衡类型,目前的取值有 3 种:

writeType="0":所有写操作发送到配置的第一个 writeHost,第一个挂了切到还生存的第二个writeHost:重新启动后以切换后的为准,

切换记录在配置文件中:dnindex.properties . writeType="1",所有写操作都随机发送到配置的writeHost。writeType="2",没实现

switchType:属性,切换(-1表示不自动切换、1默认值,自动切换、2基于MySQL 主从同步的状态决定是否切换

b. 修改配置/usr/mycat/conf /server.xml文件:

c. 修改配置/usr/mycat/conf /wrapper.conf文件:vi wrapper.conf

④ 启动Mycat:mycat start

⑤ 关闭防火墙:service iptables stop

⑥ 测试:通过Navicat实现连接Mycat

ip为mycat所在计算机、端口默认8066、用户名和密码与在server.xml中配置的一致

在其数据库中插入一条语句,执行机制:mycat负责将语句发送到主机master,然后master根据配置好的主从复制,把sql语句发送到从机slave

⑦ 关闭防火墙

(3)新建一台从机,将数据同步到该新机

① 在主机master日志中读取日志信息,将最初的数据库日志放到master_log_file和master_log_pos属性上

② 将最开始主机状态信息,配置到新机:

登录到mysql服务器:mysql –uroot -p

stop slave;

change master to master_host='192.168.62.133',master_user='root',

master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=107;

注:参数值为主机ip、用户、密码、标红的为主机的状态信息

start slave;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值