我正在尝试运行此program
conn = pymssql.connect(host='localhost', user='notsa', password='notsayly', database='TallicaTweets')
但我收到以下错误:
Traceback (most recent call last):
File "harvester_of_tweets.py", line 11, in <module>
conn = pymssql.connect(host='localhost', user='username', password='password!', database='Database')
File "/usr/local/lib/python2.7/dist-packages/pymssql.py", line 607, in connect
raise OperationalError, e[0]
pymssql.OperationalError: DB-Lib error message 20009, severity 9:
Unable to connect: Adaptive Server is unavailable or does not exist
Net-Lib error during Connection refused Error 111 - Connection refused
搜索Google并不是真的有用,而且那里的一些内容并不是很彻底。我应该将我的凭证添加到特定的配置文件中吗?以及如何在mssql中创建凭据? (我在psql中做过这些事情但不熟悉mssql。
我使用的是Ubuntu 13.04,我的python版本是2.7。
创建用户登录后,我收到此错误:
Traceback (most recent call last):
File "harvester_of_tweets.py", line 11, in <module>
conn = pymssql.connect(host='localhost', user='tweet', password='1234', database='tweet_db')
File "/usr/local/lib/python2.7/dist-packages/pymssql.py", line 607, in connect
raise OperationalError, e[0]
pymssql.OperationalError: DB-Lib error message 20009, severity 9:
Unable to connect: Adaptive Server is unavailable or does not exist
Net-Lib error during Connection refused Error 111 - Connection refused
答案 0 :(得分:7)
我遇到了同样的问题。事实证明,我没有为我的本地SQL服务器打开TCP / IP访问。
进行快速测试以检查是否由此引起,您可以尝试使用相同的代码连接到远程服务器。如果它有效,则表示本地服务器出现问题。
因此,只需在SQL Server配置管理器中打开对127.0.0.1:1433的访问权限。
步骤:
答案 1 :(得分:2)
我通过使用不同的库来解决我的问题。我使用pyodbc
import pyodbc
cnxn = pyodbc.connect('DRIVER={ODBC Driver 13 for SQL Server};SERVER=SERVERNAME;DATABASE=testdb;UID=me;PWD=pass')
cursor = cnxn.cursor()
cursor.execute("select user_id, user_name from users")
rows = cursor.fetchall()
for row in rows:
print row.user_id, row.user_name
答案 2 :(得分:2)
检查已安装的python版本(32位或64位)。
根据您的操作系统架构从下面下载freetds https://github.com/ramiro/freetds/releases
将其解压缩到C:\
驱动器(如c:\freetds
)
将Bin(从c:\freetds\bin
目录)添加到环境变量(两者)。
确保在SQL配置中打开端口1433并启用TCP / IP。
重新启动电脑,一切都会好起来的。
答案 3 :(得分:0)
我有类似的问题。 pymssql.OperationalError:DB-Lib错误消息20009,....
请尝试以下步骤。
希望有所帮助
答案 4 :(得分:-1)
您应该在MS SQL中创建login
,并将其与相关数据库中的特定user
相关联。
请点击此处查看用户和登录信息:http://blogs.msdn.com/b/lcris/archive/2007/03/23/basic-sql-server-security-concepts-logins-users-and-principals.aspx