Linux安裝ODBC連接SQLServer數(shù)據(jù)庫的步驟
目錄
- 1、下載ODBC安裝包
- 2、安裝步驟
- 第一步:上傳兩個(gè)安裝包到服務(wù)器上
- 第二步:安裝unixODBC,先安裝這個(gè),后安裝freetds
- 2.1、操作系統(tǒng)先安裝gcc:
- 2.2、安裝odbc
- 2.3、安裝freetds
- 2.4、配置freetds驅(qū)動(dòng)
- 2.5、測(cè)試配置是否正確
- 2.6、配置unixODBC
- 2.7、測(cè)試是否能連接數(shù)據(jù)庫
- 2.8、shell腳本連接數(shù)據(jù)庫
- 2.9、安裝了SQLServer的機(jī)器上調(diào)用命令執(zhí)行存儲(chǔ)過程
操作系統(tǒng):Centos7.2
1、下載ODBC安裝包
unixODBC-2.3.9.tar.gz
freetds-1.3.9.tar.gz
下載這兩個(gè)壓縮包的地址:
ftp://ftp.freetds.org/pub/freetds/stable/
ftp://ftp.unixodbc.org/pub/unixODBC/
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來連接SQLServer(其中-S指定了已經(jīng)配置好的 TDS服務(wù)名稱,-U指定登錄數(shù)據(jù)庫的用戶名),連接成功則證明驅(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ù)庫驅(qū)動(dòng)程序所在位置及連接數(shù)據(jù)庫所需要的認(rèn)證信息。按照實(shí)際情況修改下列配置信息中的具體值,在/usr/local/unixODBC/etc/odbcinst.ini中配置驅(qū)動(dòng)程序
[FreeTDS] #驅(qū)動(dòng)名稱 Description=FreeTDS Driver Driver=/usr/local/freetds/lib/libtdsodbc.so #驅(qū)動(dòng)位置
/usr/local/unixODBC/etc/odbc.ini中配置
[mssql] #DSN名稱 Description=sqlserver connection Driver=FreeTDS #上面配置好的驅(qū)動(dòng)名稱 TDS_Version=7.3 #TDS驅(qū)動(dòng)版本 TRACE=On #是否輸出日志信息 TraceFile=stderr #日志信息的位置 Server=serverip #數(shù)據(jù)庫網(wǎng)絡(luò)地址 Port=1433 #數(shù)據(jù)庫端口 User=name #登錄用戶名 Password=pwd #密碼 Database=db name #連接的數(shù)據(jù)庫名稱
2.7、測(cè)試是否能連接數(shù)據(jù)庫
/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ù)庫名稱了,查詢SQL的時(shí)候就不要帶上數(shù)據(jù)庫名稱了,否則會(huì)報(bào)錯(cuò)。
2.8、shell腳本連接數(shù)據(jù)庫
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ǔ)過程
osql.exe -S ip -U sa -P 123 -d WAI -Q "exec dbo.bulkinsert %start%,%end%,stu
到此這篇關(guān)于Linux安裝ODBC連接SQLServer數(shù)據(jù)庫的文章就介紹到這了,更多相關(guān)ODBC連接SQLServer數(shù)據(jù)庫內(nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
