续mysql数据库主从同步过程详述(二)
在此说明下:在最后试验过程中,当查看从库状态的时候,IO_Running显示为no,从error_log中看到如下报错提示:
120523  0:55:31 [Note] Slave I/O thread: connected to master 'rep@192.168.1.5:3306',  replication started in log ' mysql-bin.000004' at position 1273
120523  0:55:31 [ERROR] Error reading packet from server: Could not find first log file name in binary log index file ( server_errno=1236)
120523  0:55:31 [ERROR] Got fatal error 1236: 'Could not find first log file name in binary log index file' from master when reading data from binary log
错误代码为1236
我的解决方法为:重新检查授权,确认无误,重新按前面步骤记录偏移量,二进制文件,停止从数据库,然后重新在从数据库中CHANGE  MASTER TO 开始,指向正确的二进制文件及偏移量.如下图:

下面我将贴出mysql的启动脚本(仅作参考):
#!/bin/bash
mysql_user="root"
mysql_pwd="123123"
CmdPath="/usr/local/mysql/bin"
function_start()
{
        printf "Starting MySQL...\n"
        /bin/sh ${CmdPath}/mysqld_safe --defaults-file=/etc/my.cnf >/dev/null 2>&1 &
}
function_stop()
{
        printf "Stoping MySQL...\n"
        ${CmdPath}/mysqladmin -u${mysql_user} -p${mysql_pwd} -S /tmp/mysql.sock shutdown >/dev/null
}
function_restart()
{
        printf "Restarting MySQL...\n"
        function_stop
        sleep 2
        function_start
}
case $1 in
        start)
                function_start
        ;;
        stop)
                function_stop
        ;;
        restart)
                function_restart
        ;;
        *)
                printf "Usage: $0 {start|stop|restart}\n"
esac
生产环境在工作时间轻松配置从库
在定时任务备份时,每天的夜里服务里压力小时侯的定时备份时做一些措施即可,如
1.锁表备份全备一份;
2.锁表前后取得show  master  status值记录日志里.
这样可以在白天从容的实现主从同步了,如下面脚本:
#!/bin/bash
MYUSER=root
MYPASS="123123"
MYSOCK=/tmp/mysql.sock
 
MAIN_PATH=/server/backup
DATA_PATH=/server/backup
LOG_FILE=${DATA_PATH}/mysqllogs_`date +%F`.log
DATA_FILE=${DATA_PATH}/mysql_backup_`date +%F`.sql.gz
 
MYSQL_PATH=/usr/local/mysql/bin
MYSQL_CMD="$MYSQL_PATH/mysql -u$MYUSER -p$MYPASS -S $MYSOCK"
MYSQL_DUMP="$MYSQL_PATH/mysqldump -u$MYUSER -p$MYPASS -S $MYSOCK -A -B --flush-logs --single-transaction -e"
 
$MYSQL_CMD -e "flush tables with read lock;"
echo "---------show master status result---------" >> $LOG_FILE
$MYSQL_CMD -e "show master status;" >> $LOG_FILE
${MYSQL_DUMP} | gzip > $DATA_FILE
$MYSQL_CMD -e "unlock tables;"
mail -s "mysql slave log" 123456@163.com < $LOG_FILE
5.相关mysql技术技巧概览
5.1配置忽略权限库同步参数
binlog-ignore"db"information_schema
binlog_ignore"db"mysql
5.2主从复制故障解决
show  slave  status报错:Error  xxx  don't  exist
且show  slave  status\G;
Slave_IO_Running: Yes
Slave_SQL_Running : No
Seconds_Behind_Master: NULL
解决方法:
stop  slave;
set  global  sql_slave_skip_counter=1;
start  slave;
这样slave就会和master去同步,主要看点:
secon是否为0   #  0表示已经同步状态
提示:  set  global  sql_slave_skip_counter=n;  # n取值 >0忽略执行N个更新
5.3让mysql  slave记录binlog方法
在从库的my.cnf中加入如下参数
log-slave=updates
log-bin=mysql3306-bin
expize_logs_days = 7
应用场景:级联复制或从库做数据备份
5.4严格设置从库只读
read-only的妙用
5.5生产环境如何确保从库只读?
1)mysql从服务器中加入read-only参数或者在从服务器启动时加该参数;
2)忽略mysql库及information_schema库同步;
3)授权从库用户时仅授权select权限.

转载于:https://blog.51cto.com/wanghaipeng1124/874673

mysql数据库主从同步过程详述(三)相关推荐

  1. Linux下MySQL数据库主从同步配置

    操作系统:CentOS 6.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备篇: 说 ...

  2. mysql数据库主从同步配置教程--数据库同步

    背景: 最近有一个mysql数据库同步的需求,我用了mysql主从同步的方法来实现.下面把步骤记录一下. 环境和拓扑 操作系统:Centos6.6 X64 mysql版本:5.1.73 Master: ...

  3. mysql数据库连接配置路径_[zz]MySQL数据库主从同步安装与配置总结

    注意:本文出自"阿飞"的博客 ,如果要转载本文章,请与作者联系! 并注明来源: http://blog.sina.com.cn/s/blog_49fd52cf0100pog2.ht ...

  4. MySQL数据库主从同步的3种一致性方案实现,及优劣比较

    数据主从同步的由来 互联网的很多业务,特别是在高并发的场景下,基本都是读远远大于写,如果数据库读和写的压力都同在一台主机上,这显然不太合理. 于是,把一台数据库主机分为单独的一台写主库(主要负责写操作 ...

  5. mysql数据库主从同步的原理_mysql数据库主从同步复制原理

    MySQL的Replication(英文为复制)是一个多MySQL数据库做主从同步的方案,特点是异步复制,广泛用在各种对MySQL有更高性能.更高可靠性要求的场合.与之对应的是另一个同步技术是MySQ ...

  6. MYSQL 数据库主从同步(局域网)

    文章目录 一. MYSQL 数据库主从复制,实时同步的再现 1. 1 先下载虚拟机(硬件)与lunxi系统(centos7) 1.2 在lunxi 系统安装rpm 版mysql 5.5.55 1.3 ...

  7. MySQL配置主从同步过程记录

    今天由于工作需要,配置了一下主从同步,这里记录一下配置过程,以备查阅. 事先度娘了一番,主从同步需要保证主从服务器MySQL版本一致(我的略有差别,主服务器版本5.5.31,从服务器版本5.5.19) ...

  8. Centos 6.8 配置mysql数据库主从同步

    Mysql的主从复制至少是需要两个Mysql的服务,当然Mysql的服务是可以分布在不同的服务器上,也可以在一台服务器上启动多个服务,首先确保主从服务器上的Mysql版本相同. 一.安装部署mysql ...

  9. Mysql 数据库主从同步Centos

    概述 什么是主从同步呢,简单的说就是当我们主服务器上的数据库发生了更改后,从服务器也会自动完成相应的更改,以达到数据备份的目的. 实现原理:主从同步是依靠什么来实现的呢,还记得数据库备份的时候有mys ...

最新文章

  1. python绘制双Y轴折线图以及单Y轴双变量柱状图
  2. python 学习 [day6]
  3. js中字符替换函数String.replace()使用技巧
  4. react- native 入门
  5. 设置WordPress文章关键词自动获取,文章所属分类名称,描述自动获取文章内容,给文章的图片自动加上AlT标签...
  6. 多线程死锁及解决办法
  7. python垃圾回收 采用方式_python-面向对象-10-__del__析构方法/垃圾回收机制
  8. rtsp协议的视频服务器,RTSP拉流协议视频平台EasyNVR能够接入多少路视频直播流?...
  9. 【AI面试题】分类问题常用的性能度量指标(评价指标)
  10. 利用python编写祝福_手把手|教你用Python换个姿势,送狗年祝福语
  11. mongodbVUE基本操作(转)
  12. .net core WebAPI 初探及连接MySQL
  13. Web前端开发工程师到底是干什么的?
  14. fiddler ctrl+r 打开scripteditor提示报错提示fse2.exe不存在
  15. java中两种异常类型_Java中的三种异常类型
  16. power query连接mysql
  17. 没有基础可以学java吗?零基础学java
  18. linux DSA 开发(一)
  19. 计算机系统字体变大,手把手教你如何调整电脑字体大小
  20. QT入门基础认知(三个常用类、三种对话框类型、信号和槽)

热门文章

  1. Java学习总结:4
  2. Java项目:精品酒店管理系统(java+SSM+mysql+maven+tomcat)
  3. c语言动态迁移mysql,flask-migrate动态迁移数据库
  4. java快排算法解读,java 快排的思路与算法
  5. 儿童吹泡泡水简单配方_自制泡泡水最简单配方的做法教程
  6. 查看linux虚拟机信息,虚拟机:Linux查看线程信息的步骤
  7. 微信小程序 封装网络请求并调用
  8. Linux上重启服务的正确命令
  9. 让资源管理器不显示最近常用文件夹
  10. 《OpenStack实战》——第1章 介绍OpenStack 1.1OpenStack是什么