mariadb主从备份

master主库配置

  1. 停止mariadb

    systemctl stop mariadb

  2. 修改配置文件my.conf

    vim /etc/my.cnf
    [mysqld]
    server-id=1
    log-bin=mysql-bin
    server-id服务的唯一标识(主从之间都必须不同);log-bin启动二进制日志名称为mysql-bin

  3. 重启mariadb

    systemctl start mariadb

master主库添加从库账号

  1. 新建用于主从同步的用户ccc,允许登录的从库是'192.168.11.175'

    create user 'ccc'@'192.168.11.175' identified by '123456';

  2. 给该用户授权,只能查看的权限

    grant select on . to 'ccc'@'%';

  3. 授予普通用户,slave的身份

    grant replication slave on . to 'ccc'@'192.168.11.175';
    检查授权账号的权限
    show grants for ccc@'192.168.11.175';

  4. 实现对主数据库锁表只读,防止数据写入,数据复制失败

    flush table with read lock;

  5. 记录下主库的状态,记录下,日志文件的名字,和位置

    show master status;
    File | Position |
    | mysql-bin.000003 | 1574

  6. 锁表后,一定要单独再打开一个SSH窗口,导出数据库的所有数据,

    mysqldump -uroot -p --all-databases > /opt/all.sql

  7. 确保数据导出后,没有数据插入,完毕再查看主库状态

    show master status;

  8. 状态没有变化,,解锁主库,恢复可写

    unlock tables;

从库配置

  1. 从主库中奖数据下载过来

    scp root@47.110.52.76:/opt/all.sql /tmp

  2. 修改Slave的/etc/my.cnf,并重启数据库

    vim /etc/my.conf
    [mysqld]
    server-id=3
    read-only=true
    systemctl restart mariadb

  3. 恢复主库Master的数据导入到Slave库

    MariaDB [raindb]> source /tmp/all.sql;

  4. 配置复制的参数,Slave从库连接Master主库的配置

    change master to master_host='47.110.52.76',master_user='ccc',master_password='123456',master_log_file='mysql-bin.000003',master_log_pos=1574;

  5. 启动从库的同步开关,测试主从复制的情况

    start slave;

取消主从同步

在主库中
mysql>change master to master_host=''
mysql>stop slave;reset slave;

mariadb主从备份的更多相关文章

  1. django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现

    首先画图一张,用来展示今天要做的事情,读写分离,个人理解就是使用mysql主从备份的原理,让两个数据库同时为自己提供服务.其中主库负责数据保存,从库负责数据展示,可以一主一从,也可以一主多从.从而降低 ...

  2. Mariadb 主从

    一 mariadb主从多用于网站架构,因为该主从的同步机制是异步的,数据的同步有一定延迟,也就是说有可能会造成数据的丢失,但是性能比较好,因此网站大多数用的是主从架构的数据库,读写分离必须基于主从架构 ...

  3. 单机部署redis主从备份

    redis为了避免单点故障,也支持主从备份.个人在做主从备份的实验时,因为机器数量有限,一般非常少有多台机器做支撑. 本文就将叙述怎样在一台电脑上实现redis的主从备份. 同一台机器上部署多个red ...

  4. mysql主从备份及常见问题处理

    1.mysql主从备份基本原理 mysql支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.mysql复制基于主服务器在二进制日志中跟踪所有对数据库的更改(更新 ...

  5. mysql主从备份+keepalived自动切换

    数据库这一层需要做到避免单点故障可以是主从备份和主主备份,主主备份可能有性能损耗和数据同步的问题.这里记录下主从备份, mysql进行备份之前确保mysql的版本是一样的,我这里用的都是mysql5. ...

  6. MariaDB/MySQL备份和恢复(一):mysqldump工具用法详述

    本文目录:1.备份分类2.备份内容和备份工具3.mysqldump用法详述 3.1 语法选项 3.1.1 连接选项 3.1.2 筛选选项 3.1.3 DDL选项 3.1.4 字符集选项 3.1.5 复 ...

  7. MariaDB/MySQL备份和恢复(三):xtrabackup用法和原理详述

    本文目录: 1.安装xtrabackup 2.备份锁 3.xtrabackup备份原理说明 3.1 备份过程(backup阶段) 3.2 准备过程(preparing阶段) 3.3 恢复过程(copy ...

  8. mysql实现主从备份

    mysql 主从备份的原理: 主服务器在做数据库操作的时候将所有的操作通过日志记录在binlog里面,有专门的文件存放.如localhost-bin.000003,这种,从服务器 和主服务配置好关系后 ...

  9. Docker部署Zabbix监控MariaDB主从同步(Percona Monitoring Plugins for Zabbix)

    一.安装Docker并部署Zabbix 建议先配置清华大学的docker-ce yum源,速度有保障:清华大学repo源 1.Zabbix Server节点配置 部署环境: [root@server0 ...

随机推荐

  1. 汇编_指令_LEA和MOV的区别

    就是目标地址传送指令: 将一个近地址指针写入到指定的寄存器.格式: LEA reg16,mem16 其中reg16必须是一个16位通用寄存器,mem16必须是一个存储器,执行这个指令后,就将mem16 ...

  2. 为什么我tracert经过H3C设备的时候,老是*号,不回包

    两条命令搞定  ip unreachables  en   ip ttl-expires enable  

  3. (转)CentOS 7安装Zabbix 3.4

    (转)Zabbix 3.4 支持Centos 7.貌似不支持6.9. 更多详细内容请参考官方说明文档,详细的安装要求不贴出来了. https://www.zabbix.com/documentatio ...

  4. Jquery获取用户控件页面中控件的值

    $('#<%= txt_P_name.ClientID%>').val()

  5. 手机页面开发的meta

    <meta name="viewport" content="width=device-width, initial-scale=1"> 手机环境. ...

  6. 反向生成hibernate实体类和映射文件

    工欲善其事,必先利其器.我们可以使用IDE来根据数据库中的表反向生成实体类和映射文件,虽然这些东西手写也并不是难度很大,但是如果存在大量的简单工作需要我们做,也会显得很麻烦. 写在前面 我们反向生成的 ...

  7. 【洛谷】P3908 异或之和(异或)

    题目描述 求1 \bigoplus 2 \bigoplus\cdots\bigoplus N1⨁2⨁⋯⨁N 的值. A \bigoplus BA⨁B 即AA , BB 按位异或. 输入输出格式 输入格 ...

  8. ODPS基础

    遇到一个项目需求是统计128张分库分表的数据表记录的最大id,通过单表查询计算非常费时,也无法应对分表数更多的情况,因此考虑到通过odps进行任务发布和运算 在云端 http://d2.alibaba ...

  9. Ubuntu Server如何配置SFTP(建立用户监狱)

    Ubuntu Server如何配置SFTP(建立用户监狱)   SSH File Transfer Protocol是一个比普通FTP更为安全的文件传输协议.(参考资料:http://en.wikip ...

  10. CentOS7.6安装JDK(Openjdk) - mvn package报错汇总

    错误一: No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK ...