sqlrelay的安装配置和应用
2007-11-11 14:31:06 来源:WEB开发网核心提示:摘要:FreeTDS: 是在Linux系统中连接sql server(WINDOWS平台上强大的数据库平台)的程序,本文不介绍此软件的安装方法,sqlrelay的安装配置和应用,我们主要介绍SQL Relay的配置和应用;目录一、SQL Relay是什么;二、SQL Relay支持哪些数据库;三、安装和配置;
摘要:FreeTDS: 是在Linux系统中连接sql server(WINDOWS平台上强大的数据库平台)的程序,本文不介绍此软件的安装方法,我们主要介绍SQL Relay的配置和应用;
目录
一、SQL Relay是什么;
二、SQL Relay支持哪些数据库;
三、安装和配置;
1、安装Rudiments;
2、安装SQL Relay;
3、设置PHP;
4、修改SQL Relay的配置文件;
四、启动SQL Relay,并测试;
1、启动 SQL Relay;
2、使用SQL工具;
3、测试PHP;
五、关于本文;
六、相关文档;
++++++++++++++++++++++++++++++++++++++++++++++++++++++
正文
++++++++++++++++++++++++++++++++++++++++++++++++++++++
一、SQL Relay是什么?
SQL Relay是一个开源的数据库池连接代理服务器
二、SQL Relay支持哪些数据库?
* Oracle(大型网站数据库平台)
* MySQL(和PHP搭配之最佳组合)
* mSQL
* PostgreSQL
* Sybase
* MS sql server(WINDOWS平台上强大的数据库平台)
* IBM DB2
* Interbase
* Sybase
* SQLite
* Lago
* ODBC
* MS Access
三、安装和配置;
不说废话了,开始安装SQL Relay,到 http://sqlrelay.sourceforge.net/ 去下载相应的软件
安装SQL Relay需要先安装Rudiments, 在 http://sqlrelay.sourceforge.net/download.html 可以找到
1、安装Rudiments:
# tar vxzf rudiments-0.28.2.tar.gz
# cd rudiments-0.28.2
# ./configure --prefix=/usr/local/rudiments
# make
# make install
至此,rudiments安装结束
2、安装SQL Relay:
# tar vxzf sqlrelay-0.36.4.tar.gz
# cd sqlrelay-0.36.4
# ./configure --prefix=/usr/local/sqlrelay --with-rudiments-prefix=/usr/local/rudiments --with-MySQL(和PHP搭配之最佳组合)-prefix=MySQL(和PHP搭配之最佳组合)安装路径 --with-freetds-prefix=FreeTDS安装路径 --with-Oracle(大型网站数据库平台)-home=Oracle(大型网站数据库平台)安装路径 --with-php-prefix=PHP安装路径
# make
# make install
安装结束,以上编译参数根据个人需要来设定,因为我同时需要Oracle(大型网站数据库平台) SQLserver MySQL(和PHP搭配之最佳组合),所以才加了这么多参数的
3、设置PHP:
修改php.ini
extension_dir = "./"
把以上内容修改为:
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20050922"
根据PHP安装的路径来修改,并不是每个版本的PHP都是这个路径
在php.ini中添加如下内容
extension=sql_relay.so
接下来,介绍SQL Relay如何连接sql server(WINDOWS平台上强大的数据库平台)
修改FreeTDS的配置文件freetds.conf
加入如下内容:
[msde]
host = 172.16.20.203
port =1433
tds version = 8.0
client charset = GB2312
请根据个人需求来修改
4、修改SQL Relay的配置文件
# cd /usr/local/sqlrelay/etc
# cp sqlrelay.conf.example sqlrelay.conf
把sqlrelay.conf的内容改为:
<?xml(标准化越来越近了) version="1.0"?>
<!DOCTYPE instances SYSTEM "sqlrelay.dtd">
<instances>
<instance id="msdetest" port="9000" socket="/tmp/msdetest.socket" dbase="freetds" connections="5" maxconnections="10" maxqueuelength="0" growby="1" ttl="60" endofsession="commit" sessiontimeout="5" runasuser="nobody" runasgroup="nobody" cursors="5" authtier="listener" handoff="pass">
<users>
<user user="sa" password="sa"/>
</users>
<connections>
<connection connectionid="msdetest" string="server=msde;db=pubs;user=sa;password=sa;" metric="1"/>
</connections>
</instance>
</instances>
四、启动SQL Relay,并测试;
1、启动 SQL Relay
# export PATH=$PATH:/usr/local/sqlrelay/bin
# sqlr-start -id msdetest
2、使用SQL工具:
# sqlrsh -id msdetest
可以直接输入SQL语句
停止SQL Relay:
# sqlr-stop msdetest
3、测试PHP:
写一个PHP文件,内容如下:
<?
$con=sqlrcon_alloc("msdetest",9000,"/tmp/msdetest.socket","sa","sa",0,1);
$cur=sqlrcur_alloc($con);
sqlrcur_sendQuery($cur,"select * from t_gifts");
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);
?>
执行这个PHP文件,看看能不能出现数据
全文结束~~
Good Luck!!!
五、关于本文
六、相关文档;
《在Linux下使用perl通过unixODBC连接SQLServer2000》
- ››配置MySQL出错The service could not be started....
- ››配置apache虚拟主机
- ››配置远程客户机使用命名管道协议访问SQL服务器
- ››配置SQL Server2005以允许远程访问
- ››配置ISA Server以创建站点到站点VPN 连接之一
- ››配置ISA Server以创建站点到站点VPN 连接之二
- ››配置ISA Server以创建站点到站点VPN 连接之三 启用...
- ››配置VPN服务器中的L2TP/IPSEC:ISA2006系列之二十...
- ››配置单网卡的ISA缓存服务器:ISA2006系列之二十七...
- ››配置Win2008作为远程访问SSL-VPN服务器之一
- ››配置Win2008作为远程访问SSL-VPN服务器之二
- ››配置Win2008作为远程访问SSL-VPN服务器之三
更多精彩
赞助商链接