设置MySQL主从同步
1. 配置主服务器
1.1 编辑my.cnf文件,配置主服务器ID。
[mysqld]
log-bin=mysql-bin
server-id=1
relay-log = relay-bin
relay-log-index = relay-bin.index
1.2 重启主服务器。
2. 配置从服务器
2.1 编辑my.cnf文件,配置从服务器ID。
[mysqld]
server-id=2
2.2 重启从服务器。
3. 创建同步帐号
3.1 创建复制用户。用户名和密码将会明文存储在同步信息文件master.info中。
mysql> CREATE USER 'repl'@'%.mydomain.com' IDENTIFIED BY 'slavepass';
3.2 授权复制用户
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%.mydomain.com';
4. 获取binlog同步点信息
4.1 暂停主服务器的写入。在对主服务器加锁后,当前会话不能退出,否则会自动释放锁。
mysql> FLUSH TABLES WITH READ LOCK;
4.2 获取binlog文件名和偏移量。
mysql >SHOW MASTER STATUS;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000003 | 73 | test | manual,mysql |
+------------------+----------+--------------+------------------+
5. 创建主服务器快照
5.1 快照需要排除的文件列表。
- mysql库相关的文件
- master.info信息文件
- 主服务器产生的binlog文件
- 其他中转日志文件
5.2 确保获取了同步点信息。
5.3 关闭主服务器。
shell> mysqladmin shutdown
5.4 同步主服务器数据
shell> rsync -av mysql/ work@lab08:/home/work/local/mysql/ --exclude=var/mysql-bin.* --exclude=var/slow.log
5.5 启动主服务器。
6. 在从服务器设置同步信息
6.1 命令行设置
mysql>CHANGE MASTER TO
->MASTER_HOST='master_host_name',
-> MASTER_PORT=1127,
->MASTER_USER='replication_user_name',
->MASTER_PASSWORD='replication_password',
->MASTER_LOG_FILE='recorded_log_file_name',
->MASTER_LOG_POS=recorded_log_position;
6.2 启动slave同步
mysql> SLAVE START\G;
6.3 查看slave同步状态
mysql> SHOW SLAVE STAUTS\G;
如果观察到以下都为Yes,表明开始正常同步了。
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
7 设置从库只读
有两种方式设置从库只读,修改配置或设置全局变量。
7.1 修改my.cnf文件
#从库是否只读,0表示可读写,1表示只读
read-only=1
7.2 动态设置参数
set global read_only=true;
参考手册
http://dev.mysql.com/doc/refman/5.0/en/replication-howto.html
设置MySQL主从同步的更多相关文章
- 利用phpmyadmin设置mysql主从同步(或者备份)
一.实现同步的原理: 在主数据库与 从数据库 之间的实现整个复制过程主要由三个线程来完成,其中两个线程(Sql线程和IO线程)在 从数据库 端,另外一个线程(IO线程)在 主数据库 端. 注意: 1. ...
- Linux下MySQL主从同步配置
Centos6.5 MySQL主从同步 MySQL版本5.6.25 主服务器:centos6.5 IP:192.168.1.101 从服务器:centos6.5 IP:192.168.1.102 一. ...
- Mysql主从同步(复制)
目录: mysql主从同步定义 主从同步机制 配置主从同步 配置主服务器 配置从服务器 使用主从同步来备份 使用mysqldump来备份 备份原始文件 ...
- nagios 实现Mysql 主从同步状态的监控
一.系统环境 主机名 IP nagios 192.168.15.111 mysql_s 192.168.15.21 二.操作步骤 2.1 mysql_s端的配置 2.1.1 编写check_mysql ...
- mysql主从同步配置(windows环境)
mysql主从同步配置(mysql5.5,windows环境) A主机(作为主服务器)环境:windows8.mysql5.5 ip:192.168.1.100(自己填) B主机(作为从服务器,由 ...
- mysql主从同步+mycat读写分离+.NET程序连接mycat代理
背景 最近新项目需要用到mysql数据库,并且由于数据量大的原因,故打算采用1主1从(主数据库负责增.删.改操作:从数据库负责查操作)的数据库架构,在实现主从之后还要实现读写分离的代理,在网上搜寻了很 ...
- mysql主从同步(4)-Slave延迟状态监控
mysql主从同步(4)-Slave延迟状态监控 转自:http://www.cnblogs.com/kevingrace/p/5685511.html 之前部署了mysql主从同步环境(Mysql ...
- mysql主从同步(3)-percona-toolkit工具(数据一致性监测、延迟监控)使用梳理
转自:http://www.cnblogs.com/kevingrace/p/6261091.html 在mysql工作中接触最多的就是mysql replication mysql在复制方面还是会有 ...
- Docker Mysql主从同步配置搭建
Docker Mysql主从同步配置搭建 建立目录 在虚拟机中建立目录,例如路径/home/mysql/master/data,目录结构如下: Linux中 新建文件夹命令:mkdir 文件夹名 返回 ...
随机推荐
- std::function赋值的几种方法
定义: #include <functional> std::function<void(const QString&)> myPrintFunction; 函数指针 ...
- NPOI读取Excel数据应用
NPOI 是 POI 项目的 .NET 版本.使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写.NPOI是构建在POI 3.x版本之上的,它 ...
- Basic Concepts of International Trade
The international trade structure is a reflection of worldwide economic development, industrial stru ...
- 文本编辑器 markdown
http://www.cnblogs.com/youxia/p/linux014.html markdown对数学公式的支持http://www.linuxidc.com/Linux/2014-08/ ...
- MAC 13信道
房东的路由器一直连不上,手机却能连上,前天设置了13信道,后来又忘了,最后找到个连接WIFI的方法,在网络偏好设置里选择向导,诊断中可以连上wifi.
- javaScript基础之闭包
不管是Jquery还是EXTJS,现代的js框架中大量应用了js的一些特性,比如:匿名函数,闭包等等,导致源代码非常难以阅读. 不过要想真正的使用好前台的UI技术,还是需要去深入的理解这些概念. ...
- 使用highcharts 绘制Web图表
问题描述: 使用highcharts 绘制Web图表 Highcharts说明: 问题解决: (1)安装Highcharts 在这些图表中,数据源是一个典型的JavaScrip ...
- 国产神通数据库操作备忘(Linux)
最近接触到国产神通数据库的一个项目,发现这个数据库还是挺有技术含量的,看起来做的还不错. 1.启动停止 在终端窗口中输入以下命令启动数据库: # /etc/init.d/oscardb_<数据库 ...
- 转贴: A Simple c# Wrapper for ffMpeg
原帖地址:http://jasonjano.wordpress.com/2010/02/09/a-simple-c-wrapper-for-ffmpeg/ A Simple c# Wrapper fo ...
- eclipse中clean操作中如何将validating除去
eclipse中去掉js validating方法:1. 删除.project文件中的 <buildSpec></buildSpec>中的:<buildCommand&g ...