91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么使用nginx充當mysql的負載均衡器

發布時間:2022-05-21 11:41:59 來源:億速云 閱讀:419 作者:iii 欄目:大數據

這篇文章主要介紹“怎么使用nginx充當mysql負載均衡器”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“怎么使用nginx充當mysql的負載均衡器”文章能幫助大家解決問題。

說明:nginx版本要求是1.9以上 ,編譯nginx的時候需要加上 --with-stream

如:

./configure --prefix=/data/apps/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module --with-http_image_filter_module --with-stream

注意

1.因為mysql默認使用了3306端口所以配置nginx tcp反向代理mysql的時候注意端口不要與mysql監聽的端口一樣比如我使用的是3307

2.確保能root用戶能遠程連接mysql

如數據庫mysql 表user

怎么使用nginx充當mysql的負載均衡器

nginx.conf

此段代碼追加在nginx.conf文件末尾,注意不能加在http{}內

stream{
include /data/apps/nginx/conf/stream/*.conf;
}

stream/db.conf

server {
listen 3307; #注意端口不能跟mysql監聽的一樣
proxy_pass db;
}
upstream db {
server 127.0.0.1:3306;
server 192.168.233.1:3306;
}

重啟nginx, 查看nginx是否監聽了3307端口

怎么使用nginx充當mysql的負載均衡器

然后php代碼是這樣子

#其實就是new mysqli的時候只需改端口號與nginx反向代理設置的端口號一樣就可以了
$mysqli = new mysqli('127.0.0.1','root','root','test',3307);

完整的php代碼

<?php
class mysqlclass
{
private static $obj = null; //mysqlclass對象
public $host;
public $database;
public $user;
public $pwd;
public $port;
public $mysqli = null;
//禁止對象被克隆
private function __clone(){}
//禁止外部實例化
private function __construct($host="127.0.0.1",$database="test",$user="root",$pwd="root",$port="3307")
{
$this->host = $host;
$this->database = $database;
$this->user = $user;
$this->pwd = $pwd;
$this->port = $port;
$this->mysqli = $this->db_connect();
}
//獲取mysqli連接
private function db_connect()
{
$mysqli = new mysqli($this->host,$this->user,$this->pwd,$this->database,$this->port);
if($mysqli->connect_errno)
{
printf("connect failed: %s\n", $mysqli->connect_errno);
exit();
}
$mysqli->query("set names utf8 ");
return $mysqli;
}
//獲取db實例
public static function get_db()
{
if(self::$obj === null)
{
self::$obj = new self();
}
return self::$obj;
}
public function db_query($sql)
{
$result = $this->mysqli->query($sql);
$arr = [];
while ($row = $result->fetch_assoc()) {
$arr[] = $row;
}
$result->close();
$this->mysqli->close();
return $arr;
}
public function db_insert()
{
}
public function db_update()
{
}
public function __destruct() {
$this->mysqli->close();
}
}
$db = mysqlclass::get_db();
$r = $db->db_query("show tables");
var_dump($r);

結果

怎么使用nginx充當mysql的負載均衡器

怎么使用nginx充當mysql的負載均衡器

關于“怎么使用nginx充當mysql的負載均衡器”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

牡丹江市| 尚义县| 贵阳市| 白沙| 贵定县| 珠海市| 昆明市| 洞口县| 乃东县| 钟祥市| 东光县| 冕宁县| 平泉县| 元阳县| 宝应县| 崇阳县| 富川| 明星| 温宿县| 昌黎县| 巴林右旗| 固始县| 涪陵区| 灵川县| 北碚区| 枣阳市| 平阴县| 云梦县| 武清区| 昌平区| 贵港市| 苏州市| 阿合奇县| 招远市| 秀山| 开远市| 大名县| 讷河市| 樟树市| 溆浦县| 定西市|