最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Yii2實(shí)現(xiàn)主從數(shù)據(jù)庫設(shè)置

 更新時(shí)間:2016年11月20日 09:16:22   投稿:daisy  
大家應(yīng)該都知道,當(dāng)項(xiàng)目做大了,數(shù)據(jù)庫主從還是不可少的。使用Yii框架開發(fā),如何設(shè)置數(shù)據(jù)庫的主從呢?其實(shí)很簡單。下面這篇文章就給大家詳細(xì)介紹了使用Yii2實(shí)現(xiàn)主從數(shù)據(jù)庫設(shè)置的方法,文中介紹的很詳細(xì),相信對大家的理解和學(xué)習(xí)很有幫助,下面來一起學(xué)習(xí)學(xué)習(xí)吧。

前言

MySQL主從同步是目前使用比較廣泛的數(shù)據(jù)庫架構(gòu),技術(shù)比較成熟,配置也不復(fù)雜,特別是對于負(fù)載比較大的網(wǎng)站,主從同步能夠有效緩解數(shù)據(jù)庫讀寫的壓力。以前在使用yii1的時(shí)候,主從數(shù)據(jù)庫的支持沒有那么方便,只能寫上多個(gè)DB的components,然后在AR的getDB中返回相應(yīng)的db。這樣也可以用來對付主從數(shù)據(jù)庫

實(shí)現(xiàn)方法

Yii2則已經(jīng)解決這個(gè)問題,直接在代碼中進(jìn)行處理即可:

PHP代碼

'db' =>[ 
   'class' => 'yii\db\Connection', 
 
  // 配置主服務(wù)器 
  'dsn' => 'dsn for master server', 
  'username' => 'master', 
  'password' => '', 
  'charset' => 'utf8', 
  'tablePrefix' => 'php_',//默認(rèn)為空 
 
  // 配置從服務(wù)器 
  'slaveConfig' => [ 
    'username' => 'slave', 
    'password' => '', 
    'charset' => 'utf8', 
   'tablePrefix' => 'php_', 
    'attributes' => [ 
      // use a smaller connection timeout 
      PDO::ATTR_TIMEOUT => 10, 
    ], 
   
  ], 
]; 

是不是感覺超級方便,而不止是這樣,你還可以配置從服務(wù)器組:

PHP代碼

'db'=>[ 
  //...上面是一些標(biāo)準(zhǔn)配置 
  'slaves' => [ 
    ['dsn' => 'dsn for slave server 1'], 
    ['dsn' => 'dsn for slave server 2'], 
    ['dsn' => 'dsn for slave server 3'], 
    ['dsn' => 'dsn for slave server 4'], 
  ],  
] 

更值得稱贊的是,主服務(wù)器也是多個(gè)主服務(wù)器的配置就是下面這樣,其中字符編碼集,表前綴等設(shè)置參考上面的。

PHP代碼

'db'=>[ 
  // 配置主服務(wù)器 
  'masterConfig' => [ 
    'username' => 'master', 
    'password' => '', 
    'attributes' => [ 
      // use a smaller connection timeout 
      PDO::ATTR_TIMEOUT => 10, 
    ], 
  ], 
 
  // 配置主服務(wù)器組 
  'masters' => [ 
    ['dsn' => 'dsn for master server 1'], 
    ['dsn' => 'dsn for master server 2'], 
  ], 
  //other ...slaves 
]; 

果然 是輕輕松松啊。

當(dāng)然 如果你想更輕松的使用,這些,其實(shí)就是得用YII2的AR。你就用不著改代碼了。。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

相關(guān)文章

  • Laravel使用原生sql語句并調(diào)用的方法

    Laravel使用原生sql語句并調(diào)用的方法

    今天小編就為大家分享一篇Laravel使用原生sql語句并調(diào)用的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • ThinkPHP提示錯(cuò)誤Fatal error: Allowed memory size的解決方法

    ThinkPHP提示錯(cuò)誤Fatal error: Allowed memory size的解決方法

    這篇文章主要介紹了ThinkPHP提示錯(cuò)誤Fatal error: Allowed memory size的解決方法,分析了該錯(cuò)誤的原因與具體的解決方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-02-02
  • PHP搭建大文件切割分塊上傳功能示例

    PHP搭建大文件切割分塊上傳功能示例

    一般情況下,我們都需要對上傳的文件大小做限制,防止出現(xiàn)意外的情況,本篇文章主要介紹了PHP搭建大文件切割分塊上傳功能示例,有興趣的可以了解一下。
    2017-01-01
  • PHP rsa加密解密算法原理解析

    PHP rsa加密解密算法原理解析

    這篇文章主要介紹了PHP rsa加密解密算法原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-12-12
  • Laravel5.1 框架響應(yīng)基本用法實(shí)例分析

    Laravel5.1 框架響應(yīng)基本用法實(shí)例分析

    這篇文章主要介紹了Laravel5.1 框架響應(yīng)基本用法,結(jié)合實(shí)例形式分析了laravel5.1框架基本響應(yīng)、自定義響應(yīng)頭、返回值、重定向等相關(guān)使用技巧,需要的朋友可以參考下
    2020-01-01
  • Thinkphp 中 distinct 的用法解析

    Thinkphp 中 distinct 的用法解析

    TP中distinct()的用處主要是去除重復(fù)的值,下面我通過實(shí)例代碼給大家介紹下Thinkphp 中 distinct 的用法,一起看看吧
    2016-12-12
  • PHP實(shí)現(xiàn)用戶登錄的案例代碼

    PHP實(shí)現(xiàn)用戶登錄的案例代碼

    這篇文章主要介紹了PHP實(shí)現(xiàn)用戶登錄的案例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-05-05
  • 淺析php原型模式

    淺析php原型模式

    這篇文章主要介紹了淺析php原型模式,需要的朋友可以參考下
    2014-11-11
  • 一文帶你學(xué)會使用PHP接口

    一文帶你學(xué)會使用PHP接口

    PHP中的Interface是一種非常重要的特性,它允許開發(fā)人員定義一組規(guī)范或者約束,以確保類之間的互操作性和兼容性。在本文中,我們將詳細(xì)介紹PHP中的Interface的概念、定義、實(shí)現(xiàn)、使用、使用場景以及其它相關(guān)的一些知識點(diǎn),需要的朋友可以參考下
    2023-04-04
  • PHP生成二維碼的兩個(gè)方法和實(shí)例

    PHP生成二維碼的兩個(gè)方法和實(shí)例

    這篇文章主要介紹了PHP生成二維碼的兩個(gè)方法和實(shí)例,分別使用Google API和PHP二維碼生成類庫PHP QR Code實(shí)現(xiàn),需要的朋友可以參考下
    2014-07-07

最新評論

翁牛特旗| 武陟县| 桑植县| 平遥县| 寿阳县| 岐山县| 崇礼县| 永德县| 都匀市| 法库县| 满城县| 昭平县| 博乐市| 北流市| 三穗县| 南召县| 库尔勒市| 万载县| 元朗区| 涪陵区| 南投市| 静乐县| 长治市| 岳普湖县| 南郑县| 鱼台县| 岱山县| 织金县| 汝城县| 衡阳县| 尉氏县| 搜索| 汉阴县| 保定市| 陇川县| 米林县| 屏山县| 辽源市| 蓝山县| 哈密市| 关岭|