MS SQL server က Microsoft နဲ့ Sybase တို့ ပူးပေါင်း ဆောက်ရွက်မှု ကနေ မွေးဖွား လာတာ ဖြစ်ပါ တယ်။ ဒါကြောင့် သူ့တို့ ရဲ့ SQL server တွေက ဆင်တူ ကြပြီး၊ client တွေက နေလှမ်း ဆက်သွယ် အသုံးပြု တဲ့ communication protocol က စ ထပ်တူ နီးပါး တူညီ ပါတယ်။ အဲဒီ protocol ကို Tabular Data Stream (TDS) လို့ ခေါ်ပါတယ်။ TDS ကို open source အနေနဲ့ implementation လုပ်တဲ့ project ကို Brian Bruns စတင်ခဲ့ ပြီး၊ FreeTDS လို့ နာမည် ပေးခဲ့ တာပါ။
Installation
FreeTDS ကို အောက်ပါ အတိုင်း တပ်ဆင် နိုင် ပါတယ်။$ sudo apt update $ sudo apt install unixodbc unixodbc-dev $ sudo apt install freetds-dev freetds-bin tdsodbc
တပ်ဆင် ပြီးတဲ့ unixODBC version ကို အောက်က အတိုင်း စစ်နိုင် ပါတယ်။
$ odbcinst --version
Configuration
unixODBC က သုံးမယ့် ODBC driver ကို သိဖို့ လိုတဲ့ အတွက် register လုပ်ပေးဖို့ လိုပါတယ်။ အဲဒီ အတွက် /etc/odbcinst.ini ဆိုတဲ့ ဖိုင်ကို edit လုပ်ပြီး
$ sudo nano /etc/odbcinst.ini
အောက်က အတိုင်းဖြည့်လိုက် ပါမယ်။
[FreeTDS] Description = FreeTDS v0.91 with protocol v7.3 Driver = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so
အဲဒီ Driver path က desktop စက်တွေ အတွက် ပါ။ ARM based SBC တွေ အတွက်ဆိုရင်
/usr/lib/arm-linux-gnueabihf/odbc/libtdsodbc.so
ဖြစ်ပါတယ်။ Driver တွေကို အောက်က အတိုင်း စစ်နိုင် ပါတယ်။
$ odbcinst -q -d
ODBC client application တွေက ODBC Data Source Name (DSN) ကို သုံးပြီး အလုပ်လုပ် လေ့ ရှိတာမို့၊ /etc/odbc.ini ထဲမှာ DSN တွေကို သတ်မှတ် နိုင် ပါတယ်။
$ sudo nano /etc/odbcinst.ini
ဥပမာ အနေနဲ့ mssqlserver ဆိုတဲ့ DSN တစ်ခုကို ဖန်တီး ပြီး Connection attributes (http://www.freetds.org/userguide/odbcconnattr.htm) တွေကို အောက်က အတိုင်း သတ်မှတ် ပါမယ် [Abb06] Driver အတွက် ခုနက သတ်မှတ် ခဲ့တဲ့ driver ဒါမှ မဟုတ် တိုက်ရိုက် path ကို သတ်မှတ် နိုင် ပါတယ်။ Database အတွက် mytest ဆိုတဲ့ နမူနာ database တစ်ခု ကို သတ်မှတ်လိုက် ပါတယ်။
[mssqlserver] Driver = FreeTDS Description = Test database Trace = No Server = 192.168.1.2 Port = 1433 TDS_Version = 7.3 Database = mytest
ရှိတဲ့ data sources တွေကို အောက်က အတိုင်း list လုပ်နိုင် ပါတယ်။
$ odbcinst -q -s
Testing
Database ကို စမ်းသပ် အသုံးပြုဖို့ အတွက် unixODBC မှာ tools တွေ ပါဝင်ပြီး၊ isql ဆိုတဲ့ command line tool ကို သုံးလိုက် ပါမယ်။ ခုန က ဖန်တီး ခဲ့တဲ့ mssqlserver ဆိုတဲ့ DSN ကို ဆက်သွယ် ဖို့ အတွက် အောက်က command ကို သုံးနိုင် ပါတယ်။ SQL> ဆိုတဲ့ prompt ကို ရောက်သွား ရင် SELECT * FROM tablename စတဲ့ sql command တွေကို စမ်းသပ် အသုံးပြု နိုင် ပါပြီ။$ isql -v mssqlserverSQL>
Acknowledgement
FreeTDS နဲ့ မိတ်ဆက် ပေးပြီး၊ စ အသုံးပြုဖို့ အတွက် လည်း အကူအညီ တွေပေး ခဲ့တဲ့ ကျွန်တော့် ရဲ့ လုပ်ဖော် ကိုင်ဖက် ချီချုန်း ကို ကျေးဇူး တင်တဲ့ အကြောင်း ပြောချင် ပါတယ်။
အကိုးအကားများ
[Fre16] FreeTDS. FreeTDS - Making the leap to SQL Server. 2016.
url: http://www.freetds.org/.
[Abb06] Bob Abbott. unixODBC - MS SQL Server/PHP - with specifics for Red Hat/Fedora Linux Core 4 and Apache. 2006.
url: http://www.unixodbc.org/doc/FreeTDS2.html.
No comments:
Post a Comment