Устанавливаем виртуальное окружение
sudo yum install make automake gcc gcc-c++ kernel-devel git-core -y
sudo yum install python-devel -y
Устанавливаем setuptools
curl https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | python -
или
yum install python-setuptools python-setuptools-devel
Устанавливаем pip
easy_install pip
Устанавливаем виртуальное окружение
pip install virtualenv
Устанавливаем freetds
Поскольку pymssql является оберткой высокого уровня над freetds, необходимо его установить
rpm -ivh ftp://fr2.rpmfind.net/linux/dag/redhat/el6/en/x86_64/dag/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
cd /etc/yum.repos.d/
wget http://rpms.famillecollet.com/enterprise/remi.repo
yum install freetds
yum install freetds-devel
yum install --enablerepo=remi php-mssql
Создаем символьные ссылки
Необходимо установить символьные ссылки для установки pymssql, поскольку подключаются заголовочные файлы при установке может возникнуть ошибка:
...
_mssql.c:314:22: fatal error: sqlfront.h: No such file or directory
#include "sqlfront.h"
^
compilation terminated.
error: command 'gcc' failed with exit status 1
На CentOS 7 этой ошибки не было замечено
ln -s /usr/include/freetds/* /usr/local/include/.
Создаем и активируем виртуальное окружение
cd /scripts/
virtualenv -ppython2.6 env
source env/bin/activate
Устанавливаем pymssql
pip install pymssql
Пишем скрипт для подключения к базе данных
# coding=utf-8
import pymssql
if __name__ == "__main__":
conn = pymssql.connect(server='host', user='user', password='password', database='database')
cursor = conn.cursor()
cursor.execute('SELECT TOP 10 * FROM MyTable')
row = cursor.fetchone()
while row:
print row
row = cursor.fetchone()