数据库的读写分离能很大程度上减轻数据库的压力,读写分离的前提就是主从数据同步,然后在主库做增删改,从库做查询。

例如:

主库:192.168.0.1

从库:192.168.0.2

两个数据库都安装了Mysql数据库,保证允许远程连接

主数据库配置

1.修改mysql配置文件 /etc/my.cnf,这部分一定要配置在[mysqld]后面

[mysqld]
log-bin=mysql-bin
server-id=1 //设置数据库服务器唯一ID,这里我们指定为1。
binlog-do-db=hyii2 //设置需要同步的数据库,如果需要设置多个,则加入多条这行语句。

2.重启数据库

systemctl mysql restart

3.登录主库

mysql -u root -p //然后输入密码登录

4.进入数据库之后给主数据库授权一个可以进行复制的用户,执行如下命令:

mysql> grant replication slave on *.* to 'slave'@'%' identified by '123456';

注意:用户名slave和密码123456可以自定义

5.查看是否创建成功,命令如下

mysql> use mysql;
mysql> select user,host from user;

6、查看主库信息

mysql> show master status;

注意:记录下这些值,在从库配置的时候要用到

7.迁移数据,将主库的hyii2数据复制到从库,保证主从库拥有两个一样的数据库hyii2

从数据库配置

1.连接从库,修改mysql配置文件 /etc/my.cnf,这部分一定要配置在[mysqld]后面

[mysqld]
log-bin=mysql-bin
server-id=2
replicate-do-db=hyii2
master-host=192.168.0.2
master-user=slave
master-password=123456

2.登录到从库的数据库,做同步设置(此处要用到上面6中记录的数据)

mysql> slave stop; //先关闭库服务

mysql> change master to
master_host='192.168.0.2',
master_user='slave',
master_password='123456',
master_log_file='mysql-bin.000001',
master_log_pos=392; mysql> slave start; //启动库服务

注意:语句中的逗号不要有空格,可以连在一起写,(为了方便阅读做了换行),语句中的slave不是用户名

3.测试同步结果

在主库hyii2中新建一个表test,然后看下从库是否相应生成对应的test表,如果生成了那么恭喜你,主从同步配置就成功了。

來源:http://www.yii-china.com/post/detail/283.html

mysql数据主从同步失败解决方案

linux配置 数据库主从同步的更多相关文章

  1. mysql 配置数据库主从同步

    参考:https://www.cnblogs.com/kevingrace/p/6256603.html http://www.51testing.com/html/00/130600-243651. ...

  2. Linux下MySQL数据库主从同步配置

    说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...

  3. Centos 6.8 配置mysql数据库主从同步

    Mysql的主从复制至少是需要两个Mysql的服务,当然Mysql的服务是可以分布在不同的服务器上,也可以在一台服务器上启动多个服务,首先确保主从服务器上的Mysql版本相同. 一.安装部署mysql ...

  4. MySQL数据库主从同步实战过程

       Linux系统MySQL数据库主从同步实战过程 安装环境说明 系统环境: [root@~]# cat /etc/redhat-release CentOS release 6.5 (Final) ...

  5. mysql数据库主从同步

    环境: Mater:   CentOS7.1  5.5.52-MariaDB  192.168.108.133 Slave:   CentOS7.1  5.5.52-MariaDB  192.168. ...

  6. MySQL-5.7数据库主从同步实战教程

    主从形式 MySQ主从复制原理(主库写入数据,从库读取数据) MySql常用命令: MySQL5.7设置密码 ') where user='root': MySQL5.6设置密码 ') WHERE U ...

  7. mysql数据库主从同步读写分离(一)主从同步

    1.mysql数据库主从同步读写分离 1.1.主要解决的生产问题 1.2.原理 a.为什么需要读写分离? 一台服务器满足不了访问需要.数据的访问基本都是2-8原则. b.怎么做?  不往从服务器去写了 ...

  8. MySQL数据库主从同步延迟分析及解决方案

    一.MySQL的数据库主从复制原理 MySQL主从复制实际上基于二进制日志,原理可以用一张图来表示: 分为四步走: 1. 主库对所有DDL和DML产生的日志写进binlog: 2. 主库生成一个 lo ...

  9. MySQL数据库主从同步安装与配置总结

    MySQL的主从同步是一个很成熟的架构,优点为: ①在从服务器可以执行查询工作(即我们常说的读功能),降低主服务器压力: ②在从主服务器进行备份,避免备份期间影响主服务器服务: ③当主服务器出现问题时 ...

随机推荐

  1. sweetalert的使用

    1.swal()方法中的参数: 2.引入css与js,通过cdn加速服务 <link href="https://cdnjs.cloudflare.com/ajax/libs/swee ...

  2. HTTP协议2

    一.响应协议 格式: (1)响应首行:HTTP协议版本,不可默认 (2)响应头信息:可以默认 响应内容是由服务器发送给浏览器的内容,浏览器会根据响应内容来显示 (3)空行: (4)响应体: 响应内容是 ...

  3. 细说python类2——类动态添加方法和slots(转)

    先说一下类添加属性方法和实例添加属性和方法的区别, 类添加属性属于加了一个以类为全局的属性(据说叫静态属性),那么以后类的每一个实例化,都具有这个属性.给类加一个方法也如此,以后类的每一个实例化都具备 ...

  4. poj3190 Stall Reservations(贪心+STL)

    https://vjudge.net/problem/POJ-3190 cin和scanf差这么多么..tle和300ms 思路:先对结构体x升序y升序,再对优先队列重载<,按y升序. 然后依次 ...

  5. Java入门学习笔记

    Hello.java public class Hello { public static void main(String[] args) { System.out.println("He ...

  6. nltk 的分词器punkt: ssl问题无法下载

     报错: LookupError: ********************************************************************** Resource pu ...

  7. Centos7 设置、查看、添加、删除服务的开机启动项

    查看开机启动项 systemctl list-unit-files |   grep enable 为服务添加开机启动项 systemctl enable zabbix-server.service ...

  8. 如何做好Puppet Modules管理

    如何做好Puppet Modules管理 不同于其他的Openstack项目,puppet modules是一个数量庞大的存在.以我们当前在使用中的puppet modules为例,就已经多达96个( ...

  9. 2-08. 用扑克牌计算24点(25) (ZJU_PAT 数学 枚举)

    题目链接:http://pat.zju.edu.cn/contests/ds/2-08 一副扑克牌的每张牌表示一个数(J.Q.K分别表示11.12.13,两个司令都表示6).任取4张牌.即得到4个1~ ...

  10. C# 程序打包成安装项目

    Xaml设置图标https://blog.csdn.net/u014234260/article/details/73648649 winform程序控制面板中卸载显示图标https://blog.c ...