我在mac os x(yosemite)上使用freetds 0.95连接到SQL服务器[想连接到本地数据库],但到目前为止我的所有尝试都失败了。
终端上的odbcinst -j
给了我以下信息:
unixODBC 2.3.2
DRIVERS............: /usr/local/Cellar/unixodbc/2.3.2_1/etc/odbcinst.ini
SYSTEM DATA SOURCES: /usr/local/Cellar/unixodbc/2.3.2_1/etc/odbc.ini
FILE DATA SOURCES..: /usr/local/Cellar/unixodbc/2.3.2_1/etc/ODBCDataSources
USER DATA SOURCES..: /Users/user/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
最初,我想连接到我的本地sql服务器。
以下是我位于/usr/local/etc/freetds.conf
的freetds.conf的摘录
# A typical Microsoft server
[#egServer70]
# host = ntmachine.domain.com
# port = 1433
# tds version = 7.0
[TITAN]
host = 127.0.0.1
port = 3306
tds version = 8.0
[testing]
host = 127.0.0.1
port = 1433
tds version = 8.0
我尝试过使用TDS 8.0版本,但连接仍然失败。
当我运行tsql -S TITAN -U root
或tsql -S testing -U root
时,我会得到以下错误:
locale is "en_US.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
Error 20002 (severity 9):
Adaptive Server connection failed
There was a problem connecting to the server
以下是:
odbcinst.ini文件,位于/usr/local/Cellar/unixodbc/2.3.2_1/etc
[FreeTDS]
Description=Open source FreeTDS Driver
Driver=/usr/local/lib/libtdsodbc.so
UsageCount=1
odbc.ini文件,位于/usr/local/Cellar/unixodbc/2.3.2_1/etc
[testing]
Driver=FreeTDS
Server=localhost
#Port=3306
#charset=UTF8
User=
Password=
#Database=admin
## can specify an actual database to each DSN
TDS_Version=8.0
[Default]
Driver=/usr/local/lib/libtdsodbc.so
到目前为止,我真的不知道我做错了什么,也许我在操作系统freetds上错误地安装了odbc。请帮我解决这个问题。
这里的问题是一些混乱。
Microsoft SQL Server是一种仅在Windows上运行的产品(目前),您可以使用unixODBC和FreeTDS通过ODBC连接到该产品你不需要这个
由于你正在连接MySQL,你需要一个Python包来连接它。我推荐这个包,因为它与Python2&3,Django的文档推荐:
https://pypi.python.org/pypi/mysqlclient
试试看。祝你好运