1.准备工作,2台服务器都安装最好一个版本的mysql

  主:192.168.100.1

  从:192.168.100.2

  a.修改主数据库/etc/my.cnf,mysqld下添加。修改之后重启。

    [mysqld]

    server-id=1

    log-bin=mysqlmaster-bin.log

  b.修改从数据库/etc/my.cnf,mysqld下添加。修改之后重启

    [mysqld]

    server-id=2

    log-bin=mysqlmaster-bin.log

2.主库操作

    ①主库创建用于主从复制的账户

    mysql>create user sync@'192.168.100.2' identified by 'sync';

    mysql>grant replication slave on *.* to sync@'192.168.100.2';

    #注意 192.168.100.2为从库的ip地址,需要换成实际的。我设置的主从账户和密码都为sync,可以更换。

   ②.主库锁表,禁止再插入数据以获取主数据库二进制日志坐标。

    mysql>flush tables with read lock;

   ③新开一个会话窗口,进入mysql库,执行

  mysql> show master status;
   mysql> SHOW MASTER STATUS; 
   +------------------------+----------+--------------+------------------+-------------------+ 
   | File                   | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | 
   +------------------------+----------+--------------+------------------+-------------------+ 
   | mysqlmaster-bin.000001 |      500 |              |                  |                   | 
   +------------------------+----------+--------------+------------------+-------------------+ 
   1 row in set (0.00 sec) 
  #记录file和position,稍后需要在从库配置

   ④主服务器使用mysqldump命令创建数据快照

  mysqldump -uroot -p -h127.0.0.1 -P3306 --all-databases  --triggers --routines --events >/data/all.sql

    ⑤主库解锁

  mysql> unlock tables;

3.从库服务器操作

mysql -uroot -p -h127.0.0.1 -P3306 < all.sql 
# mysql -uroot -p 
mysql> CHANGE MASTER TO MASTER_HOST='192.168.100.1',MASTER_USER='sync',MASTER_PASSWORD='sync',MASTER_LOG_FILE='mysqlmaster-bin.000001',MASTER_LOG_POS=500; 
# 然后启动从数据库的复制线程: 
mysql> start slave; 
# 查询数据库的slave状态: 
mysql>  show slave status \G 
# 下面两个参数都是Yes,说明主从配置成功! 
Slave_IO_Running: Yes 
Slave_SQL_Running: Yes

4.测试,从主库创建数据库和增删改查,然后到从库去查看。

------------------------------------------end------------------------------------------------

#如果要清除主从配置,需要进入从库执行2条命令;

stop slave;
reset slave all;

linux配置mysql主从复制的更多相关文章

  1. mysql学习(3)-linux下mysql主从复制

    前言:为什么MySQL要做主从复制(读写分离)?通俗来讲,如果对数据库的读和写都在同一个数据库服务器中操作,业务系统性能会降低.为了提升业务系统性能,优化用户体验,可以通过做主从复制(读写分离)来减轻 ...

  2. Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

    ♣安装的几种方法和比较 ♣配置yum源 ♣安装mysql ♣启动mysql ♣修改密码 ♣导入.sql文件 ♣缓存设置 ♣允许远程登录(navicat) ♣配置编码为utf8  1.关于Linux系统 ...

  3. 配置MySQL主从复制报错Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server ids; these ids must be different for replication to work

    配置MySQL主从复制报错 ``` Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave ha ...

  4. Linux 配置mysql 免安装版。

    二.Linux配置 mysql ? 1.linux配置mysql(要求全部使用免安装版) 5.1.从官网下载mysql5.tar.gz 5.2.使用xftp把mysql的压缩包上传到服务器上 5.3. ...

  5. Linux下Mysql主从复制(Master-Slave)与读写分离(Amoeba)实践

    一.为什么要做Mysql的主从复制(读写分离)?通俗来讲,如果对数据库的读和写都在同一个数据库服务器中操作,业务系统性能会降低.为了提升业务系统性能,优化用户体验,可以通过做主从复制(读写分离)来减轻 ...

  6. centos 配置mysql主从复制

    mysql+centos7+主从复制   MYSQL(mariadb) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:甲骨文公 ...

  7. Linux下MySQL主从复制(Binlog)的部署过程

    什么是 MySQL 的主从复制 Mysql内建的复制功能是构建大型高性能应用程序的基础, 将Mysql数据分布到多个系统上,这种分布机制是通过将Mysql某一台主机数据复制到其它主机(slaves)上 ...

  8. Linux下MySQL主从复制(GTID)+读写分离(ProxySQL)-实施笔记

    GTID概念: GTID( Global Transaction Identifier)全局事务标识.GTID 是 5.6 版本引入的一个有关于主从复制的重大改进,相对于之前版本基于 Binlog 文 ...

  9. 配置MySQL主从复制和读写分离

    实验环境 序号 主机名 IP地址 备注 1 mysql-master 192.168.204.201 MySQL主库 2 mysql-slave 192.168.204.202 MySQL从库 3 a ...

随机推荐

  1. 13.Selenium不再支持PhantomJS

    在网上查看Selenium教程,发现很多都是使用PhantomJS进行爬虫,故想学习下,下载好了PhantomJS,配好了环境变量,编写代码后发现以下错误 from selenium import w ...

  2. 阿里巴巴开源项目: canal 基于mysql数据库binlog的增量订阅&消费

    背景 早期,阿里巴巴B2B公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求.不过早期的数据库同步业务,主要是基于trigger的方式获取增 量变更,不过从2010年开始,阿里系公司开始逐步的 ...

  3. Dubbo实现RPC调用使用入门

    使用Dubbo进行远程调用实现服务交互,它支持多种协议,如Hessian.HTTP.RMI.Memcached.Redis.Thrift等等.由于Dubbo将这些协议的实现进行了封装了,无论是服务端( ...

  4. 生产者与消费者---demo2---boke

    假设有这样一种情况,有一个桌子,桌子上面有一个盘子,盘子里只能放一颗鸡蛋,A专门往盘子里放鸡蛋,如果盘子里有鸡蛋,则一直等到盘子里没鸡蛋,B专门从盘子里拿鸡蛋,如果盘子里没鸡蛋,则等待直到盘子里有鸡蛋 ...

  5. Apache Geronimo Remote Code Execute Vulnerability

    简介: Apache Geronimo 是 Apache 软件基金会的开放源码J2EE服务器,它集成了众多先进技术和设计理念. 这些技术和理念大多源自独立的项目,配置和部署模型也各不相同. Geron ...

  6. shell脚本 回顾 小练习

    1.把/OPT目录下(包含子目录)下所有后缀为“.sh”的文件后缀变更为“.shell” 2.将A.B.C目录下的文件A1.A2.A3文件改名为A4.A5.A63.如何在vi模式下将文件中的aa字符串 ...

  7. SpringMVC + AJAX 实现多文件异步上传

    转自:https://www.jianshu.com/p/f3987f0f471f 今天,我就这个问题来写一篇如何用 SpringMVC + AJAX 实现的多文件异步上传功能.基本的代码还是沿用上篇 ...

  8. LAMP 2.7 Apache通过rewrite限制某个目录

    我们可以 allow 和 deny 去现在网站根目录下的某个子目录,当然这个 rewrite 也可以实现,配置如下: 创建一个目录和文件随便写些东西 mkdir /data/www/data/tmp ...

  9. linux命令-su切换用户

    查看当前用户 #id uid=0(root) gid=0(root) 组=0(root) #whoami root ////////////////////////////////////////// ...

  10. 正确的停止java中的线程

    stop()方法不是一个正确的停止线程方法. 正确的停止方法:设置退出旗标