日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

[linux]unixODBC的安装配置说明

發(fā)布時(shí)間:2025/3/15 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [linux]unixODBC的安装配置说明 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

什么是unixODBC:

ODBC(Open Database Connect)是由Microsoft?公司于1991 年提出的一個(gè)開放的,用于訪問數(shù)據(jù)庫的統(tǒng)一接口規(guī)范。

unixODBC的是為非Window平臺(tái)的系統(tǒng)實(shí)現(xiàn)ODBC規(guī)范接口的中間件。

unixODBC的安裝

有GUI的用戶可以使用ODBCConfig tool 安裝。教程在官網(wǎng)文檔有詳細(xì)介紹,不再贅述。地址:http://www.unixodbc.org/doc/UserManual/

?以下介紹沒有GUI界面的安裝說明,同樣也是來自官方文檔,地址:http://www.unixodbc.org/odbcinst.html

我通過 apt-get install unixODBC 進(jìn)行安裝,安裝完成后對odbcinst.ini和odbc.ini文件進(jìn)行配置修改。

自己編譯或自己解壓安裝的需要自行摸索,安裝完成后對odbcinst.ini和odbc.ini文件的修改是一致的。

?

?為了更清楚了解配置的過程,需要先了解一些背景信息:

什么是ini文件:

ODBC首次出現(xiàn)在Window 3.0中。當(dāng)時(shí)Windows使用.ini文件去包含配置信息。

ini文件的文本格式為:

[section1]

entry1 = value

entry2 = value

[section2]

entry1 = value

entry2 = value

...

?

雖然后來Windows NT將這些ini文件替換成了注冊表的形式,但是ODBC中用于訪問這些配置信息的API仍然保持不變。

unixODBC仍然保留了用ini存儲(chǔ)配置信息的習(xí)慣。

系統(tǒng) vs 用戶

ODBC會(huì)區(qū)分兩種類型的ini文件。

系統(tǒng)ini文件能被所有用戶訪問,但是不能修改;用戶ini文件則是針對特定用戶的,并且能被該特定用戶修改。

ODBC的系統(tǒng)文件是odbcinst.ini和odbc.ini。用戶文件是~/.odbc.ini(注意開頭.號(hào)),并包含在各自用戶的home目錄下。

系統(tǒng)文件odbcinst.ini包含對所有用戶可訪問的ODBC驅(qū)動(dòng)信息;odbc.ini文件包含所有用戶可訪問的DSN信息。這些'系統(tǒng)DSN'對于如web服務(wù)器這樣,不以真實(shí)用戶身份運(yùn)行的應(yīng)用十分有用,因?yàn)檫@些程序不會(huì)有自己的home目錄來存放.odbc.ini文件。

舉一個(gè)含ODBC支持的Apache和PHP的例子。當(dāng)http server第一次啟動(dòng)時(shí),它通過root調(diào)用SQLAllocEnv。然后它再切換到指定用戶去調(diào)用SQLConnect。此時(shí)如果DSN不是一個(gè)系統(tǒng)DSN,就會(huì)出現(xiàn)fails。

FILEDSN

ODBC 3 還有第三種類型的DSN, file DSN。目前unixODBC還不支持FILEDSN。略。

文件路徑

odbcinst.ini和odbc.ini文件默認(rèn)放在/usr/local/etc下面。但由于現(xiàn)在能通過指定配置腳本的prefix來指定文件路徑,所以如果在configure的時(shí)候指定的了prefix,則文件路徑在{prefix}/etc下面

文件內(nèi)容

odbcinst.ini

以下是一個(gè)示例:

[PostgreSQL] Description = PostgreSQL driver for Linux & Win32 Driver = /usr/local/lib/libodbcpsql.so Setup = /usr/local/lib/libodbcpsqlS.so FileUsage = 1

[PostgreSQL]是driver的名字,這里表明這是一個(gè)PostgreSQL driver。
Driver 和Setup路徑指出ODBC driver和setup libs 的位置。
當(dāng)我們使用ODBCConfig工具添加新的DSN時(shí),會(huì)調(diào)用這個(gè)setup lib。但是由于現(xiàn)在我們是非GUI安裝,所以其實(shí)可以不用管他。
Driver路徑最為關(guān)鍵。當(dāng)DSN調(diào)用SQLConnect或SQLDriverConnect時(shí),driver manager會(huì)動(dòng)態(tài)載入這些庫。若這里指定到了錯(cuò)誤的Driver,則DSN無法工作。
FileUsage由odbcinst 命令自己添加,所以如果你使用的是文本編輯器,則需要自己添加。
Threads
由于1.6版本之后添加了多線程支持,所以如果driver manager構(gòu)建了多線程支持,則可以配置:

[PostgreSQL] Description = PostgreSQL driver for Linux & Win32 Driver = /usr/local/lib/libodbcpsql.so Setup = /usr/local/lib/libodbcpsqlS.so
Threading     = 2

這項(xiàng)配置改變了默認(rèn)的線程序列化等級(thread serialization level).

[.]odbc.ini
odbc.ini的內(nèi)容要復(fù)雜一些,主要是因?yàn)椴煌膁river需要不同的配置項(xiàng)。
最后列出了支持所有driver的配置項(xiàng),以供參考。這些配置項(xiàng)可以通過odbcinst命令,或文本編輯器來添加。
對應(yīng)上面例子中的driver的配置項(xiàng):

[PostgreSQL] Description = Test to Postgres Driver = PostgreSQL Trace = Yes TraceFile = sql.log Database = nick Servername = localhost UserName = Password = Port = 5432 Protocol = 6.4 ReadOnly = No RowVersioning = No ShowSystemTables = No ShowOidColumn = No FakeOidIndex = No ConnSettings =

Driver項(xiàng)用于匹配odbcinst.ini的[section]部分。不過也可以直接指向driver路徑,只是可能需要注意路徑訪問權(quán)限的問題。

其他數(shù)據(jù)庫的配置項(xiàng)例子:

Templates

The templates for the included drivers are...

Postgress

[PostgreSQL] Description = Test to Postgres Driver = PostgreSQL Trace = Yes TraceFile = sql.log Database = nick Servername = localhost UserName = Password = Port = 5432 Protocol = 6.4 ReadOnly = No RowVersioning = No ShowSystemTables = No ShowOidColumn = No FakeOidIndex = No ConnSettings =

Mini SQL

[Mini SQL] Description = MiniSQL Driver = MiniSQL Trace = No TraceFile = Host = localhost Database = ConfigFile =

MySQL

[MySQL-test] Description = MySQL test database Trace = Off TraceFile = stderr Driver = MySQL SERVER = 192.168.1.26 USER = pharvey PASSWORD = PORT = 3306 DATABASE = test

NNTP driver

[nntp Data Source] Description = nntp Driver Driver = nntp Driver Trace = No TraceFile = Host = localhost Database = Port =

FreeTDS driver

Driver = TDS Description = Northwind sample database Trace = No Server = 192.168.1.25 Database = Northwind UID = sa

Sybase SQL Anywhere 5.0

Thanks Greg. [Sybase SQL Anywhere 5.0] Driver=Sybase SQL Anywhere 5.0 Description=Sybase SQL Anywhere 5.0 ODBC Driver Userid=dba Password=sql DatabaseFile=sademo.db ?

轉(zhuǎn)載于:https://www.cnblogs.com/oDoraemon/p/5364271.html

總結(jié)

以上是生活随笔為你收集整理的[linux]unixODBC的安装配置说明的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。