PHP 連接 MSSQL

    版本為 09:30, 15 Nov 2024

    到這個版本。

    返回到 版本存檔.

    查閱目前版本

    系統環境:

    • CentOS 5.5
    • PHP 5.1.6-27
    • MS SQL
       

    Microsoft SQL Server and Sybase Functions (PDO_DBLIB)

    以 tar file 安裝)
    http://www.phpv.net/html/1586.html

    以 RPM 方式安裝)
    http://www.howtoforge.com/installing...ssql_centos5.0

    mssql.so - 步驟開始

    相依性套件安裝
    yum groupinstall "Development Tools"
    yum install php-devel freetds-devel
    yum install bzip2-devel db4-devel expat-devel gmp-devel aspell-devel httpd-devel libjpeg-devel pam-devel sqlite-devel pcre-devel libc-client-devel cyrus-sasl-devel openldap-devel  postgresql-devel  net-snmp-devel libxslt-devel gd-devel
    
    重編 SRPM 套件

    // 下載 SRPM:http://ftp.isu.edu.tw/pub/Linux/CentOS/5.5/os/SRPMS/

    cd /usr/src/redhat/SRPMS
    wget http://ftp.isu.edu.tw/pub/Linux/CentOS/5.5/os/SRPMS/php-5.1.6-27.el5.src.rpm 
    rpm -ivh php-5.1.6-27.el5.src.rpm
    vi ../SPECS/php.spec
    

    php.spec:
    在最後一個 %package...%description 加上

    %package mssql
    Group: Development/Languages
    Requires: php = %{version}-%{release}, php-pdo
    Summary: A module for PHP applications that use the MSSQL database.
    provides: php_database
    BuildRequires: freetds-devel
    
    %description mssql
    The MSSQL package contains a dynamic shared object that will add support for accessing MSSQL databases to php.

    找到這幾行,在 CFLAGS 這行刪除 -Wno-pointer-sign 。

    # Regenerate configure scripts (patches change config.m4's)
    ./buildconf --force
    
    CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
    CPPFLAGS="-DLDAP_DEPRECATED=1"
    export CFLAGS CPPFLAGS
    
    # Install extension modules in %{_libdir}/php/modules.
    EXTENSION_DIR=%{_libdir}/php/modules; export EXTENSION_DIR
    

    重新編譯套件
    Notes: 如果有顯示缺少的套件,請先完成所有套件安裝。

    rpmbuild -bb ../SPECS/php.spec
    
    安裝 mssql.so 模組
    cd ../BUILD/php-5.1.6/ext/mssql/
    phpize
    ./configure --with-mssql
    make
    make install
    設定 PHP
    vi /etc/php.d/mssql.ini 
    

    mssql.ini:

    ; Enable mssql extension module
    extension=mssql.so
    

    重啟 httpd 服務

    Powered by MindTouch Core