導航:首頁 > 編程大全 > php訪問多個資料庫

php訪問多個資料庫

發布時間:2024-11-14 06:08:54

㈠ thinkphp如何連接多個資料庫

1、onfig.php文件
'LOAD_EXT_CONFIG'
=>'db,db_config',
//
載入擴展
配置文件
。多個文件用逗號分隔
//其中db.php中放置的是mysql的配置
//db_config放置的是
sqlserver
的配置
2、其中db.php內容如下
return
array(
'DB_TYPE'=>'mysql',
'DB_HOST'=>'
localhost
',
'DB_NAME'=>'your_mysql_dbname',
'DB_USER'=>'your_mysql_user_name',
'DB_PWD'=>'123456',
'DB_PORT'=>'3306',
'DB_PREFIX'=>'',
);
db_config.php內容如下
return
array(
'DB_CONFIG1'
=>
array(
'db_type'
=>
'pdo',
'db_user'
=>
'XX',
'db_pwd'
=>
'XXXXXXXX',
'DB_DSN'
=>
'sqlsrv:Server=XXXXXX;Database=XXXX',
),
);
3、在Lib/Model下新建一個專門的模型
class
SqlsrvModel
extends
Model
{
protected

$
connection

=
'DB_CONFIG1';
}
4、可以在Action
中調
各個模型了

㈡ PHP 讀取多條資料庫中數據

拿下面這段單獨建個頁面,改一下你的資料庫名,表等信息試試。

<table width="50%" border="0">
<tr>
<td>ID</td>
<td>ID2</td>
<td>order1</td>
<td>order2</td>
<td>order3</td>
</tr>
<?php
//連接資料庫
$conn=@ mysql_connect("伺服器地址","用戶名","密碼") or die("連接資料庫失敗!");
mysql_select_db("資料庫名",$conn) or die("連接資料庫失敗!");
mysql_query("set names 'GBK'");
//連接結束

//接收提交過來查詢的ID
$id=$_POST["id"];
//查詢資料庫相關數據
$sql="select * from 數據表名 where ID2='".$id."' order by id desc";
$query=mysql_query($sql);
//循環輸出
while($row=mysql_fetch_array($query)){
?>
<tr>
<td><?php echo $row["ID"];?></td>
<td><?php echo $row["ID2"];?></td>
<td><?php echo $row["order1"];?></td>
<td><?php echo $row["order2"];?></td>
<td><?php echo $row["order3"];?></td>
</tr>
<?php
}
?>
</table>
<form name="form1" method="post" action="">
<input type="text" name="id">
<input type="submit" name="Submit" value="查詢">
</form>

㈢ php手把手教你做網站(二十九)thinkphp6部署多個資料庫

前邊介紹了負載均衡,mysql同步,接下來介紹tp6分布式部署多個資料庫,實現讀寫分離。

tp6的分布式部署讀和寫仍然是一個系統,這里我們分開操作,給用戶展示的就是從資料庫,後端添加文章就是主庫,然後同步到從庫。

1、配置資料庫鏈接參數

目標:實現隨機使用資料庫展示信息,只是讀操作。

測試:前台可以讀取表中內容(存放的不一致),查看是否是隨機顯示的。

打開.env文件進行編輯

說明:

2、編輯database.php

找到deploy設置為1分布式部署,下邊不要改,都是讀,寫入的也就是後端的我們單獨建站連接主庫。

配置完成,tp6使用的是mt_rand取隨機數判斷使用哪個資料庫。

3、資料庫交互寫操作

比如瀏覽量沒必要每次都去更新資料庫,可以先使用redis緩存,存夠1000的整數倍,再去更新資料庫。

4、後台獨立,也就是寫

可以前後端分離,單獨做一個網站(沒有前端)使用ip訪問或者獨立的域名連接後台。

5、上傳附件(jquery ajax跨域上傳)

使用了nginx負載均衡,肯定是多個一樣的網站,如果圖片存放到一個站,別的就不能訪問了,可以單獨設置一個附件(壓縮包,圖片等)伺服器,可以使用二級域名連接,這就要求我們上傳附件的時候,是上傳到附件伺服器。

jqueryURL

API控制器apdpic方法

說明:

也可以先傳到後台伺服器然後使用(php)ftp上傳,或者是通過curl上傳到附件伺服器,感覺那樣畢竟麻煩,直接設置跨域會比較簡單。

也測試了使用jsonp跨域,但是不能上傳附件。

6、thinkphp6實現讀寫分離(在一個站點)

我個人是不喜歡這樣的,負載均衡應該是均衡地讀,也就是前台單獨一個站點,後端的寫是另一個獨立的站點,看個人喜好吧。

獨立後台的優點:可以提升安全性,因為我們的後台網址是不公開的,避免用戶猜測一些後台的信息。

.env配置按照1所述編輯,默認第一個是主庫。

database.php

願大家在新的一年心想事成,萬事如意!!!

㈣ PHP訪問MySQL資料庫的步驟。

PHP訪問抄MySQL資料庫:
因為連接資料庫需要較長的時間和較大的資源開銷,所以如果在多個網頁中都要頻繁地訪問資料庫,則可以建立與資料庫的持續連接。即調用mysql_pconnect()代替mysql_connect()。
基本步驟:
1.連接伺服器:mysql_connect();
2.選擇資料庫:mysql_select_db();
3.執行SQL語句:mysql_query();

查詢:select
顯示:show
插入:insert into
更新:update
刪除:delete

4.關閉結果集:mysql_free_result($result);
5.關閉資料庫:mysql_close($link);

㈤ php pdo單例模式怎麼同時連接兩個資料庫

PHP pdo單例模式連接資料庫
';
if ( self::$pdo == null )
{
$host = '115.29.223.160';
$user = 'zhangwei';
$pwd = 'zhang111';
$dbname = 'wangzhan';

$dsn = "mysql:host=$host;dbname=$dbname;port=3306";
$pdo = new PDO ( $dsn, $user, $pwd );
$pdo->query('set names utf8;');
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
self::$pdo = $pdo;
}
return self::$pdo;
}

public static function getStmt ( $sql )
{
$pdo = self::getPdo ();
return $pdo -> prepare( $sql );
}
}

$sql = "INSERT INTO testss (wef,wef1) VALUES(?,?)";
$stmt = Db::getStmt ( $sql );
$stmt = Db::getStmt ( $sql );

?>

輸出結果
NULL
object(PDO)#1 (0) { }

第一次null 第二次再獲取就已經有了 不用重新連接了
單利模式好處就是保存變數 他是用static保存的 所以 退出函數 變數不會釋放
關於這個問題,差不多就是這個樣子的了,你如果不明白,可以自己去後盾瞅瞅,我這些都是在後盾上學的,有空可以去看一下,就算不喜歡也沒關系啊,何樂而不為呢?

閱讀全文

與php訪問多個資料庫相關的資料

熱點內容
ps入門必備文件 瀏覽:348
以前的相親網站怎麼沒有了 瀏覽:15
蘋果6耳機聽歌有滋滋聲 瀏覽:768
怎麼徹底刪除linux文件 瀏覽:379
編程中字體的顏色是什麼意思 瀏覽:534
網站關鍵詞多少個字元 瀏覽:917
匯川am系列用什麼編程 瀏覽:41
筆記本win10我的電腦在哪裡打開攝像頭 瀏覽:827
醫院單位基本工資去哪個app查詢 瀏覽:18
css源碼應該用什麼文件 瀏覽:915
編程ts是什麼意思呢 瀏覽:509
c盤cad佔用空間的文件 瀏覽:89
不銹鋼大小頭模具如何編程 瀏覽:972
什麼格式的配置文件比較主流 瀏覽:984
增加目錄word 瀏覽:5
提取不相鄰兩列數據如何做圖表 瀏覽:45
r9s支持的網路制式 瀏覽:633
什麼是提交事務的編程 瀏覽:237
win10打字卡住 瀏覽:774
linux普通用戶關機 瀏覽:114

友情鏈接