mysql主从配置:

硬件:
两台服务器
1、Ubuntu 12.04.4 LTS (GNU/Linux 3.2.0-60-generic-pae i686) 
2、Ubuntu 12.04.4 LTS (GNU/Linux 3.2.0-60-generic-pae i686)
分别安装mysq
mysql Ver 14.14 Distrib 5.5.35, for debian-linux-gnu (i686) using readline 6.2
 
主服务器(192.168.1.101,root,root)
从服务器(192.168.1.102,root,root)
 
主服务器配置:
打开主服务器的配置文件/etc/mysql/my.cnf找到[mysqld]的配置块更改一下配置项:
server-id = 1                                                            #主机标示,整数
log_bin                 =    /var/log/mysql/mysql-bin.log    #确保此文件可写
binlog-do-db         =    zhu_db                                  #需要备份数据库,多个写多行
#binlog-ignore-db  =    mysql                                    #不需要备份的数据库,多个写多行
 
skip-external-locking 和 bind-address 选项要注释掉,不然不能远程连接数据库。
ws
保存重启mysql.
在主服务器上为从服务器创建一个用户:
grant replication slave on *.* to 'slave01'@' 192.168.1.102 ' identified by 'slave01';
#grant replication slave on *.* to '用户名'@'从服务器地址' identified by '密码';
第一个*号:表示所有数据库
第二个*号:表示所有表
#从服务的地址也可以写地址段如 ...'slave01'@'192.%'...
建立完账号以后通过命令刷新一下权限关联表:flush privileges;
你也可以查看mysql数据库的user表里面会有一条关于slave01用户的权限信息
 
查看master的状态,后面会用的着File 和Position 两个参数
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000013 | 3680 | zhu_db | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
 
mysql>
 
从服务器配置:
打从主服务器的配置文件/etc/mysql/my.cnf找到[mysqld]的配置块更改一下配置项:
server-id               =   2                                            #主机标示,整数
log_bin                 =    /var/log/mysql/mysql-bin.log    #确保此文件可写
binlog-do-db         =    zhu_db                                  #需要备份数据库,多个写多行
#binlog-ignore-db  =    mysql                                    #不需要备份的数据库,多个写多行
注意:MySQL 5.1.7版本之后,已经不支持把master以下配置属性写入my.cnf配置文件中了,只需要把同步的数据库和要忽略的数据库写入即可。
master_host = 192.168.196.68
master_port = 3306
master_user = slave
master_password = 111321
master_connect_retry = 10 #如果从服务器发现主服务器断掉,重新连接的时间差(秒)
 
与Master一样,取消远程连接限制(不取消应该也没问题,没试过)。
 
mysql -u root -p #进入MySQL控制台
slave stop; #停止slave同步进程
在从服务器上创建一个用户
change master to master_host='10.2.6.11',master_user='slave01',master_password='slave01',master_log_file='mysql-bin.000013' ,master_log_pos=3680; #执行同步语句
#change master to master_host='主服务器地址',master_user='主服务器的创建的用户名',master_password='相应的密码',master_log_file='主服务器的binlog文件' ,master_log_pos=开始同步的位置;
slave start; #开启slave同步进程
查看从服务器的状态
mysql> show slave status\G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 10.2.6.11
                  Master_User: slave01
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000013
          Read_Master_Log_Pos: 3680
               Relay_Log_File: mysqld-relay-bin.000004
                Relay_Log_Pos: 748
        Relay_Master_Log_File: mysql-bin.000013
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
              Replicate_Do_DB:
          Replicate_Ignore_DB:
           Replicate_Do_Table:
       Replicate_Ignore_Table:
      Replicate_Wild_Do_Table:
  Replicate_Wild_Ignore_Table:
                   Last_Errno: 0
                   Last_Error:
                 Skip_Counter: 0
          Exec_Master_Log_Pos: 3680
              Relay_Log_Space: 905
              Until_Condition: None
               Until_Log_File:
                Until_Log_Pos: 0
           Master_SSL_Allowed: No
           Master_SSL_CA_File:
           Master_SSL_CA_Path:
              Master_SSL_Cert:
            Master_SSL_Cipher:
               Master_SSL_Key:
        Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
                Last_IO_Errno: 0
                Last_IO_Error:
               Last_SQL_Errno: 0
               Last_SQL_Error:
  Replicate_Ignore_Server_Ids:
             Master_Server_Id: 1
1 row in set (0.00 sec)
 
mysql>
 
注意查看:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
以上这两个参数的值为Yes,即说明配置成功!
 
测试
这时你可以在主服务器上创建数据库、数据表、插入数据,查看从服务器是否能同步更新下来。
 

Mysql笔记之 -- 小试MYSQL主从配置的更多相关文章

  1. 深入浅出mysql笔记---1、mysql下载安装

    深入浅出mysql笔记---1.mysql下载安装 一.总结 一句话总结: linux下rpm安装即可 1.linux的wget命令作用? 下载文件的工具:比如wget http://cn.wordp ...

  2. Mysql性能优化三:主从配置,读写分离

    大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够.到了数据业务层.数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢 ...

  3. mysql 5.7 双主+主从配置

    mysql5.7安装及赋权 wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm rpm -ivh mysql57 ...

  4. 【MYSQL笔记1】mysql的基础知识

    首先进去mysql.打开电脑命令提示符(cmd):输入mysql -uroot -p   代表的意思是使用ruser使用者root的方式,打开mysql,-p代表password,如果有的话,回车之后 ...

  5. Mysql笔记之 -- 开启Mysql慢查询

    Mysql慢查询日志_1--如何开启慢查询日志 Windows下开启MySQL慢查询 MySQL在Windows系统中的配置文件一般是是my.ini找到[mysqld]下面加上 log-slow-qu ...

  6. 【MYSQL笔记3】MYSQL过程式数据库对象之存储过程的调用、删除和修改

    mysql从5.0版本开始支持存储过程.存储函数.触发器和事件功能的实现. 我们以一本书中的例题为例:创建xscj数据库的存储过程,判断两个输入的参数哪个更大.并调用该存储过程. (1)调用 首先,创 ...

  7. MySql笔记之修改MySQL提示符

    首先,了解下MYSQL提示符是神马东东 就是每次登陆mysql后出现的提示符 如果我们不喜欢这个提示符呢,那我们就改成我们喜欢的样子. 系统参数提示符 举个栗子 就改成相应的提示符了,那么可否随意改名 ...

  8. 高性能mysql笔记 第一章 mysql架构

    1.1  mysql逻辑结构 第一层: 负责连接处理,授权认证,安全等事情 第二层:负责mysql的大部分核心功能 ,查询解析,分析,优化,缓存和所有的内置函数,所有跨存储引擎的功能都在这一层实现,, ...

  9. Docker安装mysql镜像并进行主从配置

    Docker安装mysql镜像并进行主从配置 1.下载需要的mysql版本镜像 docker pull mysql:5.6 2.启动mysql服务实例(基本启动) #启动主mysql docker r ...

随机推荐

  1. ie8不兼容input的placeholder属性但是要实现其效果的方法

    通过学习前辈的思想,个人想法整理如下: 通过两个元素标签,仿造出placeholder的内容 使用position定位好两个元素标签 第一要隐藏两个元素标签display:none,在<!--[ ...

  2. WindowsService服务的C#实现

    WindowsService(简称服务,下同)是目前做客户端软件后台运行功能的非常好的选择,本文基本解决了服务的创建和编写,代码控制服务的安装.卸载.启动.停止等,为服务传递参数,其他注意事项等 1. ...

  3. SqlServer之触发器

    1.触发器之理论: 触发器(Trigger)是一种特殊类型的存储过程,是在用户对某一种表的数据进行UPDATE.INSERT 和 DELETE 操作时被触发执行的一段程序.触发器有助于强制引用完整性, ...

  4. C# 通过Devart连接Oracle(不需要客户端)

    16年一月底回了四川,接下来两年就准备在四川工作了.哈哈,虽然收入比沿海城市少了很多,但离老家近些感觉还是很不错的哈,好了,废话不多说,直接上干货. 最近的项目需要用到C#连接Oracle,以前要么是 ...

  5. 安卓Xpost框架

    http://pcedu.pconline.com.cn/484/4841077_all.html

  6. Linux学习之(())操作符

    在刚开始学习inux shell脚本编程时候,对于它的 四则运算以及逻辑运算.估计很多朋友都感觉比较难以接受.特变逻辑运算符”[]”使用时候,必须保证运算符与算数 之间有空格. 四则运算也只能借助:l ...

  7. STL源码剖析 迭代器(iterator)概念与编程技法(三)

    1 STL迭代器原理 1.1  迭代器(iterator)是一中检查容器内元素并遍历元素的数据类型,STL设计的精髓在于,把容器(Containers)和算法(Algorithms)分开,而迭代器(i ...

  8. 提示constructor无法location的原因

    1.缺少对应属性的set方法 2.缺少确实没有对应的方法 3.对应的构造方法中参数类型不匹配 4.java对象不会在寻找构造函数时执行数据类型的强制类型转换,没有对应的类型就返回异常,不会自动强制转换 ...

  9. Blast使用详解

    Blast,全称Basic Local Alignment Search Tool,即"基于局部比对算法的搜索工具",由Altschul等人于1990年发布.Blast能够实现比较 ...

  10. VB 字符串函数总结

    '###################################################### 1. ASC(X),Chr(X):转换字符字符码 [格式]: P=Asc(X) 返回字符 ...