2013-12-18 42 views
0

我想让我的Django应用程序在Azure上运行。我已经启动了应用程序并运行了一些静态页面,但是我无法正常运行数据库。我下载了pyodbc,因此Django可以与Azure SQL数据库交谈,并将其放在我的本地计算机和Web服务器上。我还升级了Azure的网站使用Django-1.6,而不是默认的1.4,但我仍然使用Python 2.7使用pyodbc将syncdb Django应用程序错误到Azure SQL

我已经设置了Azure的filewall规则,允许从我的IP地址

在设置访问权限。 PY,我设置了数据库部分,像这样:

'ENGINE': 'sql_server.pyodbc', 
'NAME': 'django-sql',   
'USER': '<username>@<server>', 
'PASSWORD': '<password>', 
'HOST': '<server>.database.windows.net', 
'PORT': '1433',    
'OPTIONS': { 
    'driver': 'SQL Server Native Client 11.0', 
    'MARS_Connection': True, 
}, 

当我试图从我的本地机器上运行执行syncdb我得到这个错误:

django.db.utils.Error: ('00000', '[00000] [iODBC][Driver Manager]dlopen({SQL Server Native Client 11.0}, 6): image not found (0) (SQLDriverConnect)') 

我试图重新制定settings.py一点,仍然得到相同的错误。我尝试将PORT号码放在HOST名称后面,因为它显示在Azure门户中,并且我尝试在USER中使用完整的HOST名称。

回答

0

看起来像iODBC不支持。但是,unixODBC受到支持。我能够启动一个Azure Ubuntu VM,然后按照this指南运行syncdb。不理想,但它现在可以工作。

相关问题