linux下mysql主从同步
来源:互联网 发布:wifi定位技术算法 编辑:程序博客网 时间:2024/05/22 02:01
linux下mysql主从同步 的实现原理
1、主服务器凡运行语句,都产生一个二进制日志 binlog
2、从服务器不断读取主服务器的binlog
3、从主服务读取到的binlog,转换为自身可执行的relaylog,
4、执行relaylog
具体实施有虚拟机下有两台linux,IP为1和 2
1、1做为主服务器 2做从服务器
2、 保证主从3306端口互通.
3、 配置主服务器,打开binlog
上面就是实现增量备份的思路。
下面我具体配置一下
一 、配置主服务器二进制日志
1.打开mysql的配置文件在 /etc/my.cnf
添加下面代码
#设置服务器
idserver_id = 1
#指定日志格式 位置、语句 和自动选择(mixed)
log-bin=mysql-bin
log-bin-index=master-bin.index
binlog_format=mixed
#要同步的数据库
binlog-do-db = tycp-dev
#不同步的数据库
binlog-ignore-db = mysql
expire_logs_days = 7 #定时清除的时间
max_binlog_size = 215M 日志大小
[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sockserver_id = 1 log-bin=mysql-binlog-bin-index=master-bin.indexbinlog_format=mixed#要同步的数据库binlog-do-db = tycp-dev #不同步的数据库binlog-ignore-db = mysql # Disabling symbolic-links is recommended to prevent assorted security riskssymbolic-links=0# Recommended in standard MySQL setupsql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES max_connections=100000
2.重启mysql
service mysql restart
3.进入mysql 输入 show master status; 出现下图的说明日志文件配好了。
日了,什么尼玛编辑器,好难用 麻辣隔壁的加不上图片。。。。。。。
也可可去mysql的安装目录去找 mysql-bin日志文件。
如果要同步整个数据库不用写
数据库不用写 同步的哪个数据库
2.给从服务器设置授权账号
主服务器 要给从服务器设置账号,指定某些ip才能访问。
进入mysql 授权给客户端 哪些库和表 用户名为root 密码为root的账号在ip为192.168.1.2 起作用
grant all on *.* to 'root1'@'%' identified by 'root' with grant option;
flush privileges;
二、配置从服务器1.配置从服务器 同样打开从mysql配置的my.cnf
[mysqld]datadir=/use/local/mysqlsocket=/use/local/mysql/mysql.sockserver-id=2 #设置从服务器id,必须于主服务器不同relay_log = mysql-relay-binlog_slave_updates = 1 read_only =1 replicate-do-db=tycp-dev #需要同步的数据库名replicate-ignore-db=mysql #不同步mysql系统数据库# Disabling symbolic-links is recommended to prevent assorted security riskssymbolic-links=0# Recommended in standard MySQL setup
有些人开启了slave的二进制日志,却没有设置log_slave_updates,然后查看slave的数据是否改变,这是一种错误的配置。所以,尽量使用read_only,它防止改变数据(除了特殊的线程)。
但是,read_only并是很实用,特别是那些需要在slave上创建表的应用。
2.从启mysql
service mysql restart
3.开始监听复制
进入mysql 执行 告诉从服务器 从哪个ip 用那个用户名 密码 那个日志文件 从什么位置
在主服务器上找开始复制的位置
开始监听复制
change master to master_host='192.168.1.199',master_user='root',master_password='root',
master_log_file='mysql-bin.000001',master_log_pos=129587784;
4.Start slave; 启动从服务器
执行 show slave status\G
常用命令
show slave status\G 查看从服务器状态
show master status; 查看主的位置
reset slave ; 重置slave状态.
stop slave; 暂停slave状态;
- linux下mysql主从同步
- linux下mysql主从同步配置
- Linux下MySQL数据库主从同步配置
- Linux 下实现Mysql主从同步
- Linux下MySQL主从同步配置
- linux服务器下mysql设置主从同步的过程
- linux服务器下mysql设置主从同步的过程
- linux服务器下mysql设置主从同步的过程
- Linux下MySQL主从同步监控shell脚本
- Linux下MySQL主从同步故障:"Slave_SQL_Running:No"的解决方法
- linux debian系统下配置mysql主从复制(同步):
- Linux下配置主从同步
- CentOS下Mysql实现数据库主从同步
- CentOS下Mysql实现数据库主从同步
- centos下MySQL主从同步配置
- centos下MySQL主从同步配置
- CentOS下MySQL主从同步配置
- windows下mysql主从同步备份步骤
- sigmoid函数matlab绘制曲线
- NYACM_006
- scala学习笔记-高阶函数
- HDU-OJ2041解题心得
- 洛谷3987之我的解法
- linux下mysql主从同步
- nsq简单安装以及测试
- 最短路径—Dijkstra算法和Floyd算法
- 接口优于反射
- java 时间转换错误 月份始终转换成1月
- OpenCV+Python车牌字符分割和识别入门
- hibernate_day04_17_hibernate批量抓取
- python 判断list是否为空
- 第六章:访问权限控制