php mysql集群 PHP如何訪問資料庫集群

2021-10-17 15:28:52 字數 843 閱讀 2536

一般常見的有三種做法,

1,自動判斷sql是否為讀,來選擇資料庫的連線:

例項化php db類的時候,需要一次連線兩台伺服器,然後根據slq選擇不同的連線,舉個例子:

$link_w = mysql_connect($w_host,$user,$pwd);

$link_r = mysql_connect($r_host,$user,$pwd);

//執行sql

if(preg_match("/^select/i", trim($sql))) else {

mysql_query($sql,$link_w);

這個方法的優點就是開發者執行sql不用區分讀或者寫,在db類的底層自己判斷,缺點是,往往只需要讀或者寫時也需要開啟兩個連線。

2,呼叫的時候自己選擇:

當執行sql前一般是能確定是寫還是讀,所以開發者需要手動的呼叫不同的連線,舉個例子:

$w_db = new db('w');

$w_db -> query('insert into .....');

當sql為讀:

$r_db = new db('r');

$r_db -> query('select .....');

主要通過,傳的引數來區別sql是讀還是寫,每次呼叫sql前需要呼叫開發者自己判斷。

3,使用mysql

proxy做中間層**,會自動將判斷sql是讀或者寫,將請求**給伺服器。優點是程式不用更改任何**,只要啟動mysql proxy

時分別指定讀或寫的伺服器:

--proxy-backend-addresses

--proxy-read-only-backend-addresses

php mysql 鍊錶 php如何實現鍊錶?

php實現鍊錶的方法 首先定義乙個節點類,為 function construct val null 然後實現鍊錶的實現類,為 function construct this dummyhead new nod php實現鍊錶的方法 首先定義乙個節點類class node public val pu...

PHP學習筆記 PHP MySQL

參考資料 一 php mysql 1.安裝mysql 2.連線mysql 嘗試一下pdo php data objects 的用法 3.建立 刪除資料庫 4.建立資料表 5.插入一資料 6.插入多行資料 7.php mysql 預處理語句 預處理語句對於防止 mysql 注入是非常有用的。預處理語句...

php mysql 課件 php課件

ppt內容 第一講 php環境搭配和 除錯 第一講 php環境搭配和工具的使用 第一講 php環境搭配和 除錯 第一講 php環境搭配和 除錯 第一講 php環境搭配和 除錯 第一講 php環境搭配和 除錯 第二講 php的資料型別 原始碼除錯 第二講 php的資料型別 原始碼除錯 第二講 php的...