資料庫是常見的mysql資料庫,資料庫通路接口我選擇了ODBC-OTL進行連接配接。因為我也是第一次實際使用OTL操作,曾經對于ODBC的配置等等都是運維人員進行安裝配置,如今自己配置就碰上了很大的阻礙。求助度娘、谷歌上的文章進行配置,發現大多内容相同而且無效。如今終于參透了配置方法,放在網上幫助新接觸ODBC的同學們少走彎路。
ODBC的配置
第一步:下載下傳必要的軟體包
這一步是必須的,要安裝ODBC要下的安裝包有:
unixODBC-.tar.gz
mysql-connector-odbc--linux-debian6-x86-bit.tar.gz
- 1
- 2
安裝包的版本沒有太多的要求,隻需要這兩個就ok,unixODBC是ODBC軟體的安裝包,mysql-connector-odbc是mysql連接配接odbc的插件安裝包,官網就可以下載下傳。
第二部:解壓安裝包進行安裝
熟悉Linux系統的各位應該都能很熟練的操作了,此處粘貼我的操作步驟吧:
unixODBC的安裝:
# tar -zxvf unixODBC-2.3.4.tar.gz
# cd unixODBC-2.3.4
# ./configure --prefix=/usr/local/unixODBC-2.3.4 --includedir=/usr/include --libdir=/usr/lib64 -bindir=/usr/bin --sysconfdir=/etc
# make
# sudo make install
- 1
- 2
- 3
- 4
- 5
mysql-connector-odbc的安裝:
# tar -zxvf mysql-connector-odbc-5.1.12-linux-debian6.0-x86-64bit.tar.gz
# cd mysql-connector-odbc-5.1.12-linux-debian6.0-x86-64bit/lib
# cp ./*.* /usr/lib64
- 1
- 2
- 3
在配置mysql-connector-odbc還有一步非常重要,我在這一步卡了很長時間,我針對我的安裝包版本進行簡要說明,請大家在使用時根據實際情況進行相對的調整。在mysql-connector-odbc 5.1之後的版本中隻需要把libmyodbc.so檔案複制過去就可以了,如果連接配接不成功需要添加一步操作:
./myodbc-installer -d -a -n "MYSQL" -t "DRIVER=/usr/lib64/libmyodbc5.so;SETUP=/usr/lib64/libmyodbc5.so"
- 1
執行之後會報錯提示缺少檔案:libodbc.so.1和libodbcinst.so.1,隻需要操作:
cp /usr/lib64/libodbc.so /usr/lib64/libodbc.so
cp /usr/lib64/libodbcinst.so /usr/lib64/libodbcinst.so
- 1
- 2
再次執行上面的指令就會提示:Success: Usage count is 1 ,到此安裝就OK了
第三步:配置檔案
安裝好odbc之後就是寫相關配置檔案了,配置檔案自動生成在/etc/目錄下,分别是:odbc.ini 和 odbcinst.ini ;odbc.ini需要寫的是将要連接配接的資料庫資訊和連接配接驅動,odbcinst.ini需要寫的是odbc驅動所需要連結的庫,下文寫下我的小例子:
odbc.ini:
[test]
Description = THE Database for test
Trace = On
TraceFile = staderr
Driver = mysql
SERVER = 192.168.1.1
USER = test
PASSWORD = test123456
PORT = 3306
DATABASE = testdata
charset = UTF8
option = 3
odbcinst.ini
[MYSQL]
Driver=/usr/lib64/libmyodbc5.so
SETUP=/usr/lib64/libmyodbc5.so
UsageCount=1
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
然後執行
isql -v test
出現如下内容:
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
好了,有關mysql-odbc的安裝配置終于是完成,成功進入了想連接配接的資料庫了!
OTL的使用
配置好ODBC就進入到使用環節了。此部分内容可以自行度娘,網上有很多相關文章,也可以再繼續看下去:
對于OTL我就不過多介紹了,簡單來說,就是一個封裝好的操作資料庫的可操作的庫。隻需要下載下傳一個otlv4.h的頭檔案即可,有官方網站可以提供下載下傳。
操作也比較簡單,下面我放上我一小段代碼提供參考:
#if defined(_MSC_VER) && (_MSC_VER >= 1900)
#define _ALLOW_RTCc_IN_STL
#endif
#include <iostream>
using namespace std;
#define OTL_ODBC_MSSQL_2008//這個宏定義要在包含otlv4前
#include <otlv4.h>//将otlv4.h複制到/usr/local/include中
int main()
{
otl_connect m_db;//連接配接對象
otl_connect::otl_initialize();//連接配接初始化
m_db.rlogon("DSN=test");//我在連接配接odbc上卡了很久,DSN指定連接配接那個配置好的odbc.ini
char test_buf[] = { };
int test_num = ;
//查詢資料庫
try
{
otl_stream select_info(, "select * from test", m_db);
while(!select_info.eof())
{
select_info >> test_buf >> test_num;//按照查詢順序與類型依次傳入
}
}
catch(otl_exception &p)
{
cout << p.msg;//異常情況
}
cout << "test_buf : " << test_buf << "test_num" << test_num << endl;
m_db.logoff();//關閉資料庫
return ;
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
好了,使用OTL_ODBC連接配接mysql資料庫進行操作到這裡就完成了,希望本篇文章能幫到大家,如有疑問請私信,謝謝
<link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/markdown_views-ea0013b516.css" target="_blank" rel="external nofollow" >
</div>