mysql主从调优_部署和调优 2.7 mysql主从配置-1

本文介绍了MySQL主从复制的配置步骤和工作原理,包括如何在同一台机器上安装两个MySQL服务,以及主从之间的数据同步机制。主从复制用于实现数据库的实时备份和读写分离,但存在瞬间数据不一致的风险。网络断开后,从库会在网络恢复时批量同步。同时提到了双主和多主配置的可能性,以及在操作从库数据时的注意事项。
摘要由CSDN通过智能技术生成

MySQL 主从(MySQL Replication),主要用于 MySQL 的时时备份或者读写分离。在配置之前先做一下准备工作,配置两台 mysql 服务器,如果你的机器不能同时跑两台 Linux虚拟机,那可以考虑在同一个机器上跑两个 mysql 服务。

MySQL 主从原理非常简单,总结一下:

每个从仅可以设置一个主。

主在执行 sql 之后,记录二进制 log 文件(bin-log)。

从连接主,并从主获取 binlog,存于本地 relay-log,并从上次记住的位置起执行 sql,一旦遇到错误则停止同步。

从这几条 Replication 原理来看,可以有这些推论:

主从间的数据库不是实时同步,就算网络连接正常,也存在瞬间,主从数据不一致。

如果主从的网络断开,从会在网络正常后,批量同步。

如果对从进行修改数据,那么很可能从在执行主的 bin-log 时出现错误而停止同步,这个是很危险的操作。所以一般情况下,非常小心的修改从上的数据。

一个衍生的配置是双主,互为主从配置,只要双方的修改不冲突,可以工作良好。

如果需要多主的话, 可以用环形配置, 这样任意一个节点的修改都可以同步到所有节点。

可以应用在读写分离的场景中,用以降低单台 MySQL 服务器的 I/O

可以实现 MySQL 服务的 HA 集群

可以是 1 主多从,也可以是相互主从(主主)

在一台机器安装两个mysql。实现主从

删除原来的mysql

rm -rf /usr/local/mysql/

安装mysql

切换到下载目录下

cd /usr/local/src/

解压

tar zxvf mysql-5.1.73-linux-x86_64-glibc23.tar.gz

移动

mv mysql-5.1.73-linux-x86_64-glibc23 /usr/local/mysql

检查有没有 mysql 用户

grep 'mysql' /etc/passwd

没有的话需要创建

useradd -s /sbin/nologin mysql

拷贝配置文件,覆盖掉原来的

cd /usr/local/mysql

cp support-files/my-small.cnf /etc/my.cnf

cp support-files/mysql.server /etc/init.d/mysqld

编辑配置文件,指定mysql的安装路径和数据路径

vim /etc/init.d/mysqld

basedir=datadir=修改为

basedir=/usr/local/mysql

datadir=/data/mysql

删除原来的mysql

rm -rf /data/mysql/

从新生成mysql,有两个OK正常

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

查看/data/mysql下是否有两个目录 mysql和test

ls /data/mysql/

启动mysql

/etc/init.d/mysqld start

装第二个mysql

切换到安装目录,拷贝文件重命名第二个mysql名字

cd /usr/local

cp -r mysql mysql_slave

切换到第二个mysql目录下,拷贝配置文件

cd mysql_slave/

cp /etc/my.cnf .

修改配置文件

vim my.cnf

port = 3306socket= /tmp/mysql.sock

改为

port= 3307socket= /tmp/mysql_slave.sock

datadir=/data/mysql_slave

生成mysql_slave

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql_slave

修改启动脚本

vim /etc/init.d/mysqlslave

basedir=/usr/local/mysql

datadir=/data/mysql

改为

basedir=/usr/local/mysql_slave

datadir=/data/mysql_slave

conf=$dasedir/my.conf

启动

/etc/init.d/mysqldslave start

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值