国产女主播作爱在线观看,bl全肉np高h男男,高清视频,亚洲国产AV无码精品无广告,免费人成网站在线观看,精品国产亚洲人成在线观看韩国,国产无码电影网,日韩福利在线视频,老司机av午夜精品两性色,全免费免A级毛片费观看

分布式數據庫

ThinkPHP內置了分布式(shi)數據庫的支持,包括主從式(shi)數據庫的讀(du)寫分離,但(dan)是分布式(shi)數據庫必須是相同的數據庫類型(xing)。

配置database.deploy 為(wei)1 可(ke)以采用分布(bu)式數(shu)據(ju)庫(ku)支持。如果采用分布(bu)式數(shu)據(ju)庫(ku),定義數(shu)據(ju)庫(ku)配置信息的方式如下:

//分布式數據庫配置定義return [// 啟用分布式數據庫'deploy'    =>  1,// 數據庫類型'type'        => 'mysql',// 服務器地址'hostname'    => '192.168.1.1,192.168.1.2',// 數據庫名'database'    => 'demo',// 數據庫用戶名'username'    => 'root',// 數據庫密碼'password'    => '',// 數據庫連接端口'hostport'    => '',
]

連接的數據庫個數取決于hostname定義(yi)的數量,所以(yi)(yi)即(ji)使是兩(liang)個相同(tong)(tong)的IP也需(xu)要重(zhong)復(fu)(fu)定義(yi),但是其他的參數如果存在(zai)相同(tong)(tong)的可以(yi)(yi)不用重(zhong)復(fu)(fu)定義(yi),例(li)如:

'hostport'=>'3306,3306'

'hostport'=>'3306'

等效。

'username'=>'user1', 
'password'=>'pwd1',

'username'=>'user1,user1', 
'password'=>'pwd1,pwd1',

等效。

還(huan)可(ke)以(yi)設置分布式數據庫(ku)的讀寫是否分離(li),默認(ren)的情(qing)況(kuang)下(xia)讀寫不分離(li),也就是每臺(tai)服務(wu)器都可(ke)以(yi)進(jin)行讀寫操作(zuo),對于主從式數據庫(ku)而言,需要設置讀寫分離(li),通(tong)過下(xia)面的設置就可(ke)以(yi):

    'rw_separate' => true,

在讀寫分離的情況下,默認第一個數據庫配置是主服務器的配置信息,負責寫入數據,如果設置了master_num參數,則(ze)可以支(zhi)持多個主服務(wu)(wu)器寫入。其(qi)它的(de)都是從數據庫的(de)配(pei)置信息,負(fu)責(ze)讀取數據,數量不限(xian)制。每(mei)次連接從服務(wu)(wu)器并且進行(xing)讀取操作(zuo)的(de)時候,系統(tong)會(hui)隨機進行(xing)在從服務(wu)(wu)器中選擇。

還可以設置slave_no 指定某個(ge)服務器進(jin)行讀操作。

如果從數(shu)據庫連接錯(cuo)誤(wu),會自動切換到主數(shu)據庫連接。

調用模型的CURD操作的話,系統會自動判斷當前執行的方法的讀操作還是寫操作,如果你用的是原生SQL,那么需要注意系統的默認規則: 寫操(cao)作必須(xu)用模(mo)型(xing)(xing)的(de)execute方(fang)法(fa),讀(du)操(cao)作必須(xu)用模(mo)型(xing)(xing)的(de)query方(fang)法(fa),否(fou)則會發(fa)生主(zhu)從讀寫錯亂(luan)的情(qing)況。

注意:主從數據庫的數據同(tong)步(bu)工作不在框架實(shi)現(xian),需要數據庫考慮自身的同(tong)步(bu)或者復制機制。

文檔最后更新時間:2022-05-31 09:22:06

文檔
目錄

深色
 模(mo)式(shi)

切換
寬度(du)