Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2153611
  • 博文数量: 227
  • 博客积分: 10521
  • 博客等级: 上将
  • 技术积分: 3452
  • 用 户 组: 普通用户
  • 注册时间: 2006-10-20 14:59
个人简介

低调做人,高调做事!

文章分类

全部博文(227)

文章存档

2013年(4)

2012年(8)

2011年(16)

2010年(24)

2009年(92)

2008年(83)

分类: LINUX

2009-12-03 20:46:30

因为项目需求,需要在linux下连接SQL2000,郁闷了一天才搞出来,下面写下安装过程。

LAMP配置环境采用的是nginx的环境,过程的安装就不啰嗦了,详细情况参看这篇blog:
http://blog.s135.com/post/366/


1、安装unixODBC软件包,如下:

unixODBC-2.2.11-7.1.i386.rpm
unixODBC-kde-2.2.11-7.1.i386.rpm
unixODBC-devel-2.2.11-7.1.i386.rpm

yum -y install unixODBC-*

2、从官网上下载PDO_ODBC扩展包

wget
tar -zxvf PDO_ODBC-1.0.1.tgz
/usr/local/webserver/php/bin/phpize
./configure --with-php-config=/usr/local/webserver/php/bin/php-config --with-pdo-odbc=unixODBC,/usr
make
make install

在php.ini文件添加下面一行
extension = "pdo_odbc.so"

从 php.ini 检查 pdo_odbc 是否安装成功。


3、安装freetds

简单的说FreeTDS是一个程序库,可以实现在Linux系统下访问微软的SQL数据库!

tar -zxvf freetds-stable.tgz.tar
cd freetds-0.82/
./configure --prefix=/usr/local/webserver/freetds/ --with-tdsver=7.0 --with-unixODBC

make
make intall

如果你自己编译了libiconv软件包,估计要做个软连接
ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2

测试下是否连接成功:
/usr/local/webserver/freetds/bin/tsql -S ip地址 -U 用户名
locale is "en_US.UTF-8"
locale charset is "UTF-8"
出现以上字符就说明编译成功了。


下面就可以进行配置freetds,可以通过图形界面,也可以通过字符界面,这里通过字符界面来配置:

[root@localhost etc]# more /usr/local/webserver/freetds/etc/freetds.conf
添加以下内容:

[sql2000]
        host = 192.168.100.100
        port = 1433
        tds version = 8.0   #必须使用8.0 ,才可以访问SQL Server 2000
        client charset = GBK  #客户端字符集,在使用isql 访问数据源时,如果检索的数据中中文为乱码,则需要添加并设置


[root@localhost etc]# more /usr/local/webserver/freetds/etc/locales.conf
添加以下内容:

[zh_CN]
language = Simplified Chinese
charset = GBK

根据数据库字符类型来定义连接字符,这里数据库是拉丁,所以采用了GBK。

[root@localhost etc]# more /etc/odbcinst.ini
添加以下内容:

[MySql2k]
Description     = ODBC for MySql2k
Driver          = /usr/local/webserver/freetds/lib/libtdsodbc.so
Driver64        = /usr/local/webserver/freetds/lib/libtdsodbc.so
Setup           = /usr/lib/libtdsS.so
Setup64         = /usr/lib/libtdsS.so
UsageCount      = 1
CPTimeout       =
CPReuse         =


[root@localhost etc]# more  /etc/odbc.ini
添加以下内容:

[mssql]
Description     = connect to sql2000
Driver          = MySql2k
Servername      = sql2000
Database        = 连接数据库
UID             = 连接用户名
PWD             = 连接密码
Port            = 1433


4、测试下连接情况

[root@localhost etc]# isq -v mssql(数据源) 用户名 密码
SQL>

出现以上信息就说明连接成功了。


参考文章


http://203.208.37.132/search?q=cache:aKc-dMO9j0IJ:dongbao.blog.sohu.com/rss+locales+freetds+chinese&cd=28&hl=zh-CN&ct=clnk&gl=cn&client=aff-cs-worldbrowser&st_usg=ALhdy286kKz3l17MAJcdB6siDxkNUP3YRA

阅读(4983) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~