python处理teradata数据库_Python脚本连接Teradata数据库
Connect Teradata from
python
Base
on Linux Ubuntu?with python2.7
參考網(wǎng)絡(luò)搜索結(jié)果,具體出處不記得了,結(jié)合自身實(shí)踐總結(jié)。以下操作為Linux環(huán)境,其他環(huán)境請(qǐng)自行調(diào)整。(中英文結(jié)合是因?yàn)檫@個(gè)總結(jié)最初也是受惠于歪果仁的分享)
1, Install python package
#依賴兩個(gè)包
apt-get install python-pyodbc
apt-get install odbcinst
2, Download teradata dirver for
linux ?#需要下載和安裝Teradata客戶端驅(qū)動(dòng)
http://downloads.teradata.com/download/files/7455/188352/0/tdodbc__linux_indep.15.00.00.03-1.tar.gz
3, Install the teradata client and
driver by root on linux
install alien on server if not
installed
apt-get install alien
Unzip and install the drivers:
alien
tdicu-15.00.00.00-1.noarch.rpm
dpkg -i
tdicu_15.00.00.00-2_all.deb
alien
tdodbc-15.00.00.03-1.noarch.rpm
dpkg -i
tdodbc_15.00.00.03-2_all.deb
alien
TeraGSS_linux_x64-15.00.00.07-1.noarch.rpm
dpkg -i
teragss-linux-x64_15.00.00.07-2_all.deb
4, Add the teradata files to
ldconfig, by creating a new file,
/etc/ld.so.conf.d/Zteradata.conf with the contents:
/opt/teradata/client/15.00/odbc_64/lib
/opt/teradata/client/15.00/tdicu/lib64
/opt/teradata/teragss/linux-x8664/15.00.00.07/lib
5,Refresh the cache to include
these new lib directories:
ldconfig -v
6, Redirect default drivers to
teardata files. #在默認(rèn)路徑下建立軟鏈接指向teradata驅(qū)動(dòng)文件
cd /usr/lib/x86_64-linux-gnu
mv libodbc.so.1.0.0
Xlibodbc.so.1.0.0
ln -s
/opt/teradata/client/15.00/odbc_64/lib/libodbc.so
libodbc.so.1.0.0
mv libodbcinst.so.1.0.0
Xlibodbcinst.so.1.0.0
ln -s
/opt/teradata/client/15.00/odbc_64/lib/libodbcinst.so
libodbcinst.so.1.0.0
7, config for teragss
#配置teradata客戶端組件
mkdir /usr/teragss/site
cp -R
/opt/teradata/teragss/linux-x8664/15.00.00.07/etc/*
/usr/teragss/site
mkdir /usr/teragss/linux-x8664
mkdir
/usr/teragss/linux-x8664/client
cd
/usr/teragss/linux-x8664/client
ln -s
/opt/teradata/teragss/linux-x8664/15.00.00.07/lib lib
cd
/opt/teradata/teragss/linux-x8664/15.00.00.07/bin
./run_tdgssconfig
8, modify odbc config file for
oracle user #將默認(rèn)的兩個(gè)配置文件復(fù)制到當(dāng)前用戶主目錄下,并修改配置路徑
cp
/opt/teradata/client/15.00/odbc_64/odbc.ini ~/.odbc.ini
cp
/opt/teradata/client/15.00/odbc_64/odbcinst.ini
~/.odbcinst.ini
Edit them to replace all
“TDODBC_INSTALL_DIR” with “/opt/teradata/client/15.00/odbc_64” and
replace “TDODBC_LIB_DIR” with “l(fā)ib”
9,Add the data source to the ODBC
configuration file ~/.odbc.ini #在配置文件中增加data source信息
[ODBC Data Sources]
test_teradata=tdata.so
#其中test_teradata為自定義數(shù)據(jù)源名稱
[test_teradata]
Driver=/opt/teradata/client/15.00/odbc_64/lib/tdata.so
Description=
DBCName= ?#
此處為你要連接的teradata服務(wù)器名
LastUser=
Username= # 此處為連接的用戶名
Password= # 此處為密碼
Database=
DefaultDatabase=
#此處為默認(rèn)連接服務(wù)器上的數(shù)據(jù)庫
10, Edit user profile, add below
into ~/.profile to set environment #設(shè)置用戶的環(huán)境變量
ODBCINI=$HOME/.odbc.ini
LD_LIBRARY_PATH=/opt/teradata/teragss/linux-x8664/15.00.00.07/lib:$LD_LIBRARY_PATH
export ODBCINI LD_LIBRARY_PATH
======================== 低調(diào)分割線
===========================
以上配置完成。
以下為python腳本中兩種方式連接示例:
import pyodbc
pyodbc.pooling = False
# 1,直接連接 connect directly,here
{Teradata} is keyword, not variable。
conn=pyodbc.connect('DRIVER={Teradata};DBCNAME=db_server_name;UID=;PWD=;QUIETMODE=YES;',
ANSI=True, autocommit=True)
# 2,引用配置的數(shù)據(jù)源 connect
by data source name
conn=pyodbc.connect('DSN=test_teradata;QUIETMODE=YES;',
ANSI=True, autocommit=True)
測(cè)試連接不報(bào)錯(cuò),那么恭喜你!否則回頭檢查哪個(gè)步驟手抖輸入錯(cuò)誤,如果還不行,自檢人品。。。
總結(jié)
以上是生活随笔為你收集整理的python处理teradata数据库_Python脚本连接Teradata数据库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CNC加工中心程序代码大全,你还不收藏吗
- 下一篇: redux进一步优化