PHP データベース接続プール SQL Relay のインストールと使用

WBOY
リリース: 2016-06-20 12:36:10
オリジナル
1363 人が閲覧しました

出典: http://blog.csdn.net/21aspnet/article/details/50774684


SQL Relay は、公式 Web サイト http:// sqlrelay .sourceforge.net/index.html の説明: 強力なデータベース接続管理ソリューション

中国語に翻訳すると、SQL Relay はオープン ソースのデータベース プール接続プロキシ サーバーであることを意味します。

現在、SQL Relay は多くのデータベースをサポートしています:

SQL Relay は Oracle、MySQL、PostgreSQL、SAP/Sybase、IBM DB2 をサポートしています。 Informix、Firebird、および SQLite データベースは、これらのデータベースのネイティブ クライアント API を使用して直接実行されます。
Microsoft SQL Server のサポートは、FreeTDS API 経由で提供されます。

サポートされる API も非常に豊富です

ガイド: C++、C、C#、Perl、PHP、Python、Ruby、Java、TCL、Erlang、node.js
参考文献: C++、C、C#、Perl、PHP、Python、Ruby、Java、TCL、node.js、

Linux+PHP+FreeDTS で接続プーリングを使用する方法を説明します環境 、実際には、PHP->SQL Relay->FreeDTS->database のような構造になっています。

以下はインストールと使用方法についてです

1. 最初に基本的なものをインストールします

できるだけ新しいバージョンをインストールすることをお勧めします。古いバージョンではエラーが報告される可能性があるため、解決する必要があります。

# wget http://sourceforge.net/projects/rudiments/files/rudiments/0.28.2/rudiments-0.28.2.tar.gz/download
# tar xvzf rudiments-0.54.tar .gz
# cd rudiments-0.54
# ./configure --prefix=/usr/local/rudiments
# make && make install

2. 次に、sqlrelay

# wget https://sourceforge.net/projects/sqlrelay/files/sqlrelay/0.64/sqlrelay-0.64.tar.gz/download
# tar vxzf sqlrelay をインストールします。 -0.64.tar.gz
# cd sqlrelay-0.64
# ./configure --prefix=/usr/local/sqlrelay --with-rudiments-prefix=/usr/local/rudiments --with-freetds -prefix=/usr/local/freetds --with-php-prefix=/usr/local/php


# make && make install

3. php 設定ファイルを変更します

# vim /usr/local/php/lib/php.ini
拡張機能を追加

extension ="sql_relay.so"
ログイン後にコピー
注: phpinfo を確認する必要があります

4. freeDTS 構成を変更します

freeDTS のインストールについては、次の記事を参照してください: http:/ /blog.csdn .net/unix21/article/details/47449901

FreeTDS 構成ファイル freetds.conf を変更します
# vim /usr/local/freetds/etc/freetds.conf

以下の内容を追加します

[msdetest]host = 192.168.1.1port =1433tds version = 7.0client charset = UTF-8
ログイン後にコピー
そうしないと漢字が文字化けするため、対応するエンコードタイプ GB2312 などが必要です。

5. SQL リレーの構成ファイルを変更します

# cd /usr/local/sqlrelay/etc/
# cp sqlrelay.conf.example sqlrelay.conf
# vim sqlrelay.conf

全体の構成は非常に理解しやすいです

<?xml version="1.0"?><!DOCTYPE instances SYSTEM "sqlrelay.dtd"><instances><instance id="msdetest" port="9001" socket="/tmp/msdetest.socket" dbase="freetds" connections="10" maxconnections="50" maxqueuelength="0" growby="1" ttl="60" endofsession="commit" sessiontimeout="5" runasuser="nobody" runasgroup="nobody" cursors="5" authtier="listener" handoff="pass"><users><user user="admin" password="admin"/></users><connections><connection connectionid="msdetest" string="server=msde;db=test;user=admin;password=admin;" metric="1"/></connections></instance></instances>
ログイン後にコピー

6. SQL リプレイを開始します

# export PATH=$PATH:/usr/local/sqlrelay/bin
Start:

# sqlr-start -id msde

上の図は、正常に起動したことを示しています。構成エラーがある場合は、データベースに接続できないことを示すメッセージが表示されます。

SQL ツール

# sqlrsh -id msde


7 .php は接続プールを使用します

<?php$con=sqlrcon_alloc("msdetest",9001,"/tmp/msdetest.socket","admin","admin",0,1);$cur=sqlrcur_alloc($con);sqlrcur_sendQuery($cur,"SELECT top 10 * FROM test order by id desc");for ($row=0; $row<sqlrcur_rowCount($cur); $row++) {for ($col=0; $col<sqlrcur_colCount($cur); $col++) {echo sqlrcur_getField($cur,$row,$col);echo ",";}echo "<br>\n";}sqlrcur_free($cur);sqlrcon_free($con);?>
ログイン後にコピー

フロントエンド Web ページは接続プールからデータを取り出します

SQL リレー PHP 関数 API

http://sqlrelay.sourceforge.net/sqlrelay/programming/php.html

参照: http:/ /www.cnblogs.com /zhangjun516/archive/2013/03/12/2955162.html

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!