OpenPNE3 DBマスタースレーブ分割の設定方法
06 / 15 火曜日 2010
OpenPNE3では、”設定だけで”MySQLのmaster-slave構成は利用できないようだ。世間のメジャーはまだOpenPNE2なの?
http://twitter.com/donz80/statuses/16214843210
この質問にお答えします。
OpenPNE3のマスタースレーブ分割を利用するためには、 config/database.yml を以下のように設定します。
all: slave_1: # スレーブは slave_* という名称で、マスタよりも先に定義しなければならない class: sfDoctrineDatabase param: dsn: 'mysql:dbname=slave;host=localhost' username: root encoding: utf8 attributes: { 164: true } priority: 2 # プライオリティ。この例だと、8分の2の確率でスレーブが利用される doctrine: # デフォルト値を master に変更予定だが、 doctrine でも今後動作する class: sfDoctrineDatabase param: dsn: 'mysql:dbname=master;host=localhost' username: root encoding: utf8 attributes: { 164: true } priority: 6 # この例だと、 8 分の 6 の確率でマスタが使用される。