php使用odbc鏈結mssql2008以上

2021-07-01 19:20:29 字數 2684 閱讀 8295

linux odbc 安裝

環境 lamp [ centos6.5 apache php 5.3 mysql 5.6  ] 

yum安裝

必要yum源 eprl.repo (odbc一些包這個源裡面才有)

目標 php 訪問mssql

1.安裝必要軟體

unixodbc.x86_64 : odbc包

unixodbc-devel.x86_64 : odbc驅動

[ unixodbc-kde.x86_64 : odbc配置工具,控制台下用不到 ]

mysql-connector-odbc.x86_64 : odbc 鏈結mysql的驅動

freetds.x86_64 : freetds軟體包, 用來鏈結mssql

freetds-devel.x86_64 : freetds驅動

[freetds-doc.x86_64 : 可有可無,主要是一些說明文件和例項]

2.參考文件

3.先安裝eprl.repo

1. wget  

2. rpm -ivh epel-release-6-8.noarch.rpm 

3. yum clean all

4. yum makecache

4.關閉防火牆和selinux, 等通了在配置規則

5.開始安裝odbc

yum insatll unixodbc

yum insatll unixodbc-devel

yum install mysql-connector-odbc

安裝好之後 /etc目錄下自動建立 odbc.ini, odbcinst.ini

vim odbcinst.ini, 裡面有例子稍微改改就行了

配置mysql-odbc驅動

[odbc_mysql] //驅動名字

description = odbc for mysql //驅動描述

driver = /usr/lib/libmyodbc5.so //32位驅動的庫

setup = /usr/lib/libodbcmys.so //32位驅動安裝庫 (其實可以省略)

driver64 = /usr/lib64/libmyodbc5.so //64位驅動庫

setup64 = /usr/lib64/libodbcmys.so //64位驅動安裝庫 (其實可以省略)

fileusage = 1 //必須帶上,咱不知道有啥用

vim odbc.init

[local_mysql] //odbc-dns名字

driver = odbc_mysql //驅動名字,就是剛才在odbcinst.ini中設定的

server = localhost //host

prot = 3306 //埠

database = test //資料庫

socket = /var/lib/mysql/mysql.sock //mysql套接字檔案, 如果該檔案路徑被改變,則需要設定,否者可以直接預設不填寫

6.測試是否連通mysql

isql local_mysql(dns名字) root(資料庫名字) 123456(資料庫密碼) -v(顯示詳細資訊,如果有錯誤的話) .

7.安裝freetds

yum install freetds

yum install freetds-devel

安裝好之後, /etc目錄下面自動建立乙個 freetds.conf

vim /etc/freetds.conf

檔案中也有示例,照著修改下就好了

[mssql_server] //伺服器名字

host = 192.168.1.15

port = 1433

tds version = 8.0 //強制指定tds版本為8.0

測試下是否連通

tsql -s mssql_server(剛才設定的伺服器名字) -u sa(使用者名稱) -p '123456'(資料庫密碼) -d nx(資料庫名字)

vim /etc/odbcinst.ini

[odbc_mssql]

description = odbc for mssql

driver64 = /usr/lib64/libtdsodbc.so

setup64 = /usr/lib64/libtdss.so

fileusage = 1

vim /etc/odbc.ini

[client_mssql]

driver = odbc_mssql

servername = mssql_server

//這裡要寫上freetds設定的伺服器名字,設定了servername就不要設定server,這兩個會衝突

database = nx_log

/*注意關閉防火牆和selinux, 等通了在配置規則*/

php使用ODBC的好處

各種資料庫都有odbc驅動,也有專門針對php的動態庫檔案,但感覺用odbc比較方便些,主要體現以下三點 1 odbc是php預設的功能,不用尋找與php同版本的dll檔案 2 odbc對所有資料庫的php方法是一樣的,不用學習不同資料庫的php呼叫方法 3 windows和linux平台都有odb...

php使用ODBC連線sqlserver問題

使用odbc error 檢測資料庫連線問題 if odbc error 我遇到的問題是連線成功了,但查詢乙個資料表總是失敗,查詢其它的表報錯。但我在apache配置的環境下沒有問題,但nginx下總是不行,一直懷疑是環境的問題,實際是php版本的問題 開啟php.ini,將display erro...

使用PHP鏈結MySQL

一 使用php查詢mysql資料庫 1.通過php來訪問mysql的步驟是 連線到mysql 選擇操作的資料庫 建立查詢的字段 執行查詢的語句 檢索出結果並在網頁上顯示 斷開與mysql的連線 我們將依次完成這些操作,重要的是首先以安全的方式建立登陸的詳細資料,以使的別人不容易訪問你的資料庫。2.建...