溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Linux如何安裝ODBC連接SQLServer數(shù)據(jù)庫(kù)

發(fā)布時(shí)間:2023-05-16 13:48:41 來(lái)源:億速云 閱讀:130 作者:iii 欄目:建站服務(wù)器

今天小編給大家分享一下Linux如何安裝ODBC連接SQLServer數(shù)據(jù)庫(kù)的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來(lái)了解一下吧。

操作系統(tǒng):Centos7.2

1、下載ODBC安裝包

unixODBC-2.3.9.tar.gz

freetds-1.3.9.tar.gz

2、安裝步驟

第一步:上傳兩個(gè)安裝包到服務(wù)器
第二步:安裝unixODBC,先安裝這個(gè),后安裝freetds

注意:這里如果安裝順序不一致,就不會(huì)產(chǎn)生libtdsodbc.so驅(qū)動(dòng)文件(非常重要)

2.1、操作系統(tǒng)先安裝gcc:
yum install gcc
2.2、安裝odbc
tar -xvf unixODBC-2.3.9.tar.gz
cd unixODBC-2.3.9
./configure --prefix=/usr/local/unixODBC
make
make install
2.3、安裝freetds
tar -xvf freetds-1.3.9.tar.gz
cd freetds-1.3.9
./configure --prefix=/usr/local/freetds --with-unixodbc=/usr/local/unixODBC/
make
make install
2.4、配置freetds驅(qū)動(dòng)

配置文件目錄:/usr/local/freetds/etc/freetds.conf,在文件末尾加上如下內(nèi)容,tds version參照默認(rèn)配置,默認(rèn)是7.3,只要修改host和port為正常的SQLServer地址即可

[SQLServer]
    host = serverip
    port = 1433
    tds version = 7.3
2.5、測(cè)試配置是否正確

/usr/local/freetds/bin/tsql -S SQLServer -U username來(lái)連接SQLServer(其中-S指定了已經(jīng)配置好的 TDS服務(wù)名稱(chēng),-U指定登錄數(shù)據(jù)庫(kù)的用戶(hù)名),連接成功則證明驅(qū)動(dòng)配置正確。如果連接出現(xiàn)錯(cuò)誤,很可能是因?yàn)閠ds version設(shè)置的不正確,你可以嘗試修改該值重新連接

/usr/local/freetds/bin/tsql -S SQLServer -U sa
Password: 
locale is "zh_CN.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
1>
2.6、配置unixODBC

為unixodbc指明數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序所在位置及連接數(shù)據(jù)庫(kù)所需要的認(rèn)證信息。按照實(shí)際情況修改下列配置信息中的具體值,在/usr/local/unixODBC/etc/odbcinst.ini中配置驅(qū)動(dòng)程序

[FreeTDS]                                         #驅(qū)動(dòng)名稱(chēng)
Description=FreeTDS Driver
Driver=/usr/local/freetds/lib/libtdsodbc.so     #驅(qū)動(dòng)位置

/usr/local/unixODBC/etc/odbc.ini中配置

[mssql]  #DSN名稱(chēng)
Description=sqlserver connection
Driver=FreeTDS    #上面配置好的驅(qū)動(dòng)名稱(chēng)
TDS_Version=7.3   #TDS驅(qū)動(dòng)版本
TRACE=On    #是否輸出日志信息
TraceFile=stderr  #日志信息的位置
Server=serverip  #數(shù)據(jù)庫(kù)網(wǎng)絡(luò)地址
Port=1433       #數(shù)據(jù)庫(kù)端口
User=name       #登錄用戶(hù)名
Password=pwd     #密碼
Database=db name  #連接的數(shù)據(jù)庫(kù)名稱(chēng)
2.7、測(cè)試是否能連接數(shù)據(jù)庫(kù)
/usr/local/unixODBC/bin/isql mssql name pwd
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL> select * from sys.objects
+---------------------------------------------------------------------------------------------------------------------------------+------------+-------------+------------+-----------------+-----+-------------------------------------------------------------+------------------------+------------------------+--------------+-------------+--------------------+
| name                                                                                                                            | object_id  | principal_id| schema_id  | parent_object_id| type| type_desc                                                   | create_date            | modify_date            | is_ms_shipped| is_published| is_schema_published|

注意:由于在配置文件中咱們已經(jīng)配置好連接數(shù)據(jù)庫(kù)名稱(chēng)了,查詢(xún)SQL的時(shí)候就不要帶上數(shù)據(jù)庫(kù)名稱(chēng)了,否則會(huì)報(bào)錯(cuò)。

2.8、shell腳本連接數(shù)據(jù)庫(kù)
SQL="/usr/local/unixODBC/bin/isql mssql sa 123"
i_sql=" exec dbo.bulkinsert 10,20,'dbo.stu';    "
echo $i_sql
result=`echo $i_sql|$SQL`

方法二:

SQL="select * from Student"
EMPLOYEES=`isql mssql sa 123 <<EOF
   $SQL
   go
   EOF

方法三:

echo "$SQL" > $TMP/sql.$$
EMPLOYEES=`isql mssql sa 123 -i $TMP/sql.$$`
rm $TMP/sql.$$
2.9、安裝了SQLServer的機(jī)器上調(diào)用命令執(zhí)行存儲(chǔ)過(guò)程
osql.exe -S ip -U sa -P 123 -d WAI -Q "exec dbo.bulkinsert %start%,%end%,stu

以上就是“Linux如何安裝ODBC連接SQLServer數(shù)據(jù)庫(kù)”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI