资讯专栏INFORMATION COLUMN

Yii2 数据库复制和读写分离

William_Sang / 2679人阅读

摘要:前言许多数据库支持数据库复制来获得更好的数据库可用性,以及更快的服务器响应时间,减少数据库的压力。通过数据库复制功能,数据从所谓的主服务器被复制到从服务器。

前言

许多数据库支持数据库复制来获得更好的数据库可用性,以及更快的服务器响应时间,减少数据库的压力。通过数据库复制功能,数据从所谓的主服务器被复制到从服务器。主服务器做增删改,而从服务器做查询。

读写分离前提条件:linux数据库主从同步配置

两个服务器的数据同步是读写分离的前提条件,但这不在yii2读写分离教程内,yii2的数据库读写分离配置,仅仅实现了在主库读写,在从库查询,那么我们首先要配置主从服务器的数据同步。详情查看linux数据库主从同步配置

附:配置同步成功,后因误操作或者其他原因导致的同步失效,如何排查问题? 查看:mysql数据主从同步失败解决方案

读写分离配置

linux主从服务器数据库同步完成之后,我们就可以开始yii2的读写分离配置,官方也有这方面的文档,但说的并不清楚,也没有实际的例子,我在这里加以完善。

1、打开我们的数据库配置文件commonconfigmain-local.php在db属性中做如下配置:

"db" => [
    "class" => "yiidbConnection",
     
    // 配置主服务器
    "dsn" => "mysql:host=192.168.0.1;dbname=hyii2",
    "username" => "root",
    "password" => "root",
    "charset" => "utf8",
     
    // 配置从服务器
    "slaveConfig" => [
        "username" => "root",
        "password" => "root",
        "attributes" => [
            // use a smaller connection timeout
            PDO::ATTR_TIMEOUT => 10,
        ],
        "charset" => "utf8",
    ],
     
    // 配置从服务器组
    "slaves" => [
            ["dsn" => "mysql:host=192.168.0.2;dbname=hyii2"],
        ],
],

如上配置就能实现yii2数据库读写分离的操作,很简单,只要一个配置就ok了,读写分离的功能由后台代码自动完成,调用者无须关心。

上面只是一个一主一从的配置,如果要一主多从,或者多主多从,参考此例以及官方文档即可完成。 官方文档

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/22477.html

相关文章

  • Yii2 据库复制读写分离

    摘要:前言许多数据库支持数据库复制来获得更好的数据库可用性,以及更快的服务器响应时间,减少数据库的压力。通过数据库复制功能,数据从所谓的主服务器被复制到从服务器。 前言 许多数据库支持数据库复制来获得更好的数据库可用性,以及更快的服务器响应时间,减少数据库的压力。通过数据库复制功能,数据从所谓的主服务器被复制到从服务器。主服务器做增删改,而从服务器做查询。 读写分离前提条件:linux数据库...

    NickZhou 评论0 收藏0
  • 基于Yii2的应用开发引擎RageFrame

    摘要:多入口模式,多入口分为后台前端,微信,其他或接口对接,不同的业务不同的设备进入不同的入口。对接微信公众号,使用了一款优秀的微信非官方,系统内已集成了该,调用方式会在文档说明,也可直接看其文档进入深入开发。 RageFrame 为二次开发而生,让开发变得更简单。 前言 RageFrame项目创建于2016年4月16日,基于Yii2框架开发的应用开发引擎,目前正在成长中,目的是为了集成更多...

    enda 评论0 收藏0
  • UCloud MySQL云据库读写分离

    摘要:读写分离中间件具有独立的。变量语句将被广播考虑到节点间数据一致性问题,只会分发到主节点。节点健康检查,提升数据库系统可用性。UCloud MySQL云数据库读写分离 背景 数据显示,关系型数据库在OLTP业务下96.87%都在等待读I/O,而处理器计算仅仅占了5.3%,这说明要提高数据库的QPS性能,关键的一点是提高系统的IO能力。 另一个数据表明, 大多数业务对数据库的访...

    joywek 评论0 收藏0
  • MySQL 主从复制+读写分离

    摘要:主要包括的安装,主从复制,读写分离等等,其余的找时间再写。安装主要作为数据库集群的前端,实现读写分离,分表分库等。总结文档大概记录了的主从复制与读写分离。 showImg(https://segmentfault.com/img/remote/1460000016432702?w=640&h=128); 今天记录一点链上线的数据库方面的骚操作。主要包括MySQL的安装,主从复制,读写分...

    baishancloud 评论0 收藏0
  • MySQL主从复制读写分离及奇怪的问题

    摘要:当时是使用阿里云镜像,安装了两台,结果配置的时候出现了重复问题。以上操作过程,主从服务器配置完成。监控据说可以编写一脚本,用监控的两个及进程,如发现只有一个或零个,就表明主从有问题了。 联系邮箱:hi@jackcool.net 一直都没有写blog的习惯,以前总觉得自己的脑子就是最好的记忆容器,现在觉得我好像有个假脑子。 当时是使用阿里云镜像,安装了两台ECS,结果配置MySQL的时候...

    galois 评论0 收藏0

发表评论

0条评论

William_Sang

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<