我使用的是Python的MacOS系统安装而不是virtualenv。在这我已经安装了freetds和pymssql 2.1。该连接细使用数据库:使用pymssql 2.2不连接到SQL服务器
pymssql.connect(server='the.host.name\instance', user='username' etc . .).
意识到的virtualenv是做的东西我创建了一个基于2.7蟒蛇虚拟env和试图点子安装pymssql但得到一个错误信息的正确方法。快速狩猎发现修复 - 即从混帐与安装:
pip install git+https://github.com/pymssql/pymssql.git
但现在我的连接调用返回一个主机不响应错误。我用tsql来调试(TDSDUMP = stdout),它看起来像地址\实例导致了一个问题。连接到有地址但没有实例的数据库工作正常
当我恢复到我的系统范围安装并运行它时,我看到freetds将数据库实例的端口号解析为特定端口(portNo)。
在我的virtualenv下,如果我使用此端口号对pymssql进行调用,那么我的连接就没有问题。
pymssql.connect(server='the.host.name\instance', user='username', port='portNo', etc . . .)
虽然这个解决方案的工作 - 我猜测,服务器上的任何更改可能会打破它。
任何想法为什么我的pymssql调用在这些情况下失败?