3. MariaDB设置主从复制
翻译人员: 铁锚
翻译日期: 2013年12月25日
原文链接: Setting
Up Replication
主从复制包含两个步骤: 在 master 主服务器(组)上的设置,以及在 slave 从属服务器(组)上的设置.
配置主服务器 master
- 如果没有启用,则需要 激活二进制日志.
- 给 master 设置唯一的 server_id ,所有的 slave 从属服务器也要设置 server_id; server_id值可以是整数型的数字(1 ~ 2^31-1), 在同一个复制组(replicating group)中的每台服务器的server_id都必须是唯一的.
- slave 从属服务器需要有连接并从master复制的权限. 通常是为每一台slave 创建一个单独的用户(user),并且只授予复制的权限(REPLICATION SLAVE 权限).
示例
GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'slave_host' IDENTIFIED BY 'bigs3cret'; FLUSH PRIVILEGES;
需要注意,有一些系统配置选项可能会影响主从复制,查看下面的变量以避免发生问题:
skip-networking,如果 "skip-networking=1",则服务器将限制只能由localhost连接,阻止其他机器远程连到此服务器上。
bind_address,类似地,如果 服务器只监听 127.0.0.1(localhost)的TCP/IP连接,则远程的 slave也不能连接到此服务器.
配置从属服务器 slave
- 给 slave 指定唯一的 server_id. 所有服务器,不管是主服务器,还是从服务器,都要设置 server_id. server_id值可以是整数型的数字(1 ~ 2^31-1), 在同一个复制组(replicating group)中的每台(/个)服务器的server_id都必须是唯一的.
要让此配置项生效,需要重新启动服务.
获取 master 的二进制日志坐标
当查看当前 二进制日志 的position(位置)时,需要阻止任何数据库的提交.可以通过此坐标点告诉slave服务器从哪一个特定的点开始复制。
- 在 master上执行命令 "FLUSH TABLES WITH READ LOCK",以强制写入日志,并锁定所有的表 —— 在此期间不能关闭会话,一关闭会话就会释放锁.
- 通过运行 "SHOW MASTER STATUS" 来获取二进制日志的当前位置信息.
- 记下 File 以及 Position 信息. 如果刚刚才开启了二进制日志功能,则为空.
- 然后,开始从master 拷贝 data 到 slave,请参考: Backup, Restore and Import
- 将数据从master拷贝到slave以后,可以执行"UNLOCK TABLES;"释放master上的锁。
示例如下: -- SHOW MASTER STATUS; +--------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +--------------------+----------+--------------+------------------+ | mariadb-bin.000096 | 568 | | | +--------------------+----------+--------------+------------------+ --
启动从属服务器 Slave
数据导入以后,就可以启动复制功能了。 通过执行 "CHANGE MASTER TO" 来开始.
确保 "MASTER_LOG_FILE",以及 "MASTER_LOG_POS" 与master早时候记下的信息一致.
示例如下:
CHANGE MASTER TO MASTER_HOST='master.domain.com', MASTER_USER='replication_user', MASTER_PASSWORD='bigs3cret', MASTER_PORT=3306, MASTER_LOG_FILE='mariadb-bin.000096', MASTER_LOG_POS=568, MASTER_CONNECT_RETRY=10;
然后,启动slave
START SLAVE;
查看 slave状态:
SHOW SLAVE STATUS;
如果需要暂停 slave 复制,则可使用SQL :
stop slave;
说明: 假如停止 MYSQL(MariaDB),然后重新启动,则 Slave会随mysqld 自动启动.所以不需要担心日常的重启等操作.
[root@AY13 mysql]# service mysql stop Shutting down MySQL. SUCCESS! [root@AY13 mysql]# service mysql start Starting MySQL.. SUCCESS!
更多问题,欢迎加入QQ群 《脚本娃娃-桃花岛》进行讨论,口令: Ext
3. MariaDB设置主从复制的更多相关文章
- MariaDB设置主从复制[转载]
3. MariaDB设置主从复制 标签: mariadbMySQL主从复制 翻译人员: 铁锚 翻译日期: 2013年12月25日 原文链接: Setting Up Replication 主从复制 ...
- MariaDB设置主从复制
主从复制包含两个步骤: 在 master 主服务器(组)上的设置,以及在 slave 从属服务器(组)上的设置. 配置主服务器 master 如果没有启用,则需要 激活二进制日志. 给 master ...
- mariadb+centos7+主从复制
MYSQL(mariadb) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的 ...
- Linux - centos7 下 MySQL(mariadb) 和 主从复制
目录 Linux - centos7 下 MySQL(mariadb) 和 主从复制 MySQL(mariadb) 安装MySQL(mariadb) 配置数据库的中文支持 在远程用 mysql客户端去 ...
- mariadb设置初始密码
mariadb设置初始密码 CENTOS7 自带MARIADB数据库.安装的时候可以勾选安装. 当然也可以以后在CENTOS7里面添加安装. MARIADB安装后,默认是没有密码的. 我们需要给ROO ...
- centos7 mariadb 设置root密码
centos7 mariadb 设置root密码 修改root密码1.以root身份在终端登陆,必须2.输入 mysqladmin -u root -p password root后面的 root ...
- Mariadb之主从复制的读写分离
首先我们来回顾下代理的概念,所谓代理就是指的是一端面向客户端,另外一端面向服务端,代理客户端访问服务端,我们把这种代理叫正向代理:代理服务端响应客户端我们叫做反向代理,这个我们在之前nginx系列博客 ...
- MariaDB数据库主从复制实现步骤
一.MariaDB简介 MariaDB数据库的主从复制方案,是其自带的功能,并且主从复制并不是复制磁盘上的数据库文件,而是通过binlog日志复制到需要同步的从服务器上. MariaDB数据库支持单向 ...
- Mariadb/Mysql 主从复制(1)
一.原理 mysql的主从数据同步是一个异步复制过程,需要master开启bin-log日志功能,bin-log记录了master库中的增.删.修改.更新操作的sql语句,整个过程需要开启3个线程,分 ...
随机推荐
- Go 语言函数
函数是基本的代码块,用于执行一个任务. Go 语言最少有个 main() 函数. 你可以通过函数来划分不同功能,逻辑上每个函数执行的是指定的任务. 函数声明告诉了编译器函数的名称,返回类型,和参数. ...
- jQuery – AJAX load() 方法
jQuery load() 方法 jQuery load() 方法是简单但强大的 AJAX 方法. load() 方法从服务器加载数据,并把返回的数据放入被选元素中. 语法: $(selector). ...
- MySQL LIKE 子句
MySQL LIKE 子句 我们知道在MySQL中使用 SQL SELECT 命令来读取数据, 同时我们可以在 SELECT 语句中使用 WHERE 子句来获取指定的记录. WHERE 子句中可以使用 ...
- Java内存泄漏分析系列之七:使用MAT的Histogram和Dominator Tree定位溢出源
原文地址:http://www.javatang.com 基础概念 先列出几个基础的概念: Shallow Heap 和 Retained Heap Shallow Heap表示对象本身占用内存的大小 ...
- NavigationView使用过程的问题解决
NavigationView是android support design库提供的侧滑面板控件,通常与support v4库里的DrawerLayout侧滑控件搭配使用.以下是使用过程中遇到的问题及解 ...
- 使用Spring Boot开发Web项目
前面两篇博客中我们简单介绍了Spring Boot项目的创建.并且也带小伙伴们来DIY了一个Spring Boot自动配置功能,那么这些东西说到底最终还是要回归到Web上才能体现出它的更大的价值,so ...
- 项目部署、配置、查错常用到的Linux命令
一.常用命令 ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all) ll 会列出该文件下的所有文件信息,包括隐藏的文件的文件详细信息, ...
- 14 ListFragment 代码案例
MainActivity.java: package com.qf.day14_fragment_demo9_list; import android.os.Bundle; import androi ...
- CentOS一般用户和root用户之间的切换
如果终端提示符显示为"$",表明该用户为普通用户.输入su,回车,然后输入root密码,即可切换到root用户.如果是root用户想切换回普通用户,输入"su 用户名&q ...
- Microsoft Dynamics CRM2011 更换Logo
之前操作过但没做过记录,这里记录下以防以后有需要时记不起来还有迹可循 IE收藏栏的图标,在网站根目录下的的/favicon.ico CRM网页中的Logo,替换/_imgs/crmmastheadlo ...