2014-09-05 21 views
0

我有一個問題,對我來說似乎是不可能的,這意味着我從根本上誤解了某些東西。我用燒瓶(一個python庫)編寫了一個簡單的API。除此之外,這個API連接到運行在遠程Web服務器上的mysql服務器。我正在使用sqlalchemy庫來執行此連接。sqlalchemy連接相同的憑據在不同的機器上運行時被拒絕

連接字符串非常簡單。它看起來像這樣:

db =create_engine('mysql+mysqlconnector://{user}:{password}@{host}:{port}/{database}'.format(user=Constants.Sql.USER, password=Constants.Sql.PASS, host=Constants.Sql.HOST, port=Constants.Sql.PORT, database=Constants.Sql.DATABASE)) 
    connection = db.connect() 

在我的開發機器上,這一切正常。但是,當我將api部署到其他遠程機器時,它不起作用。我得到的錯誤:

sqlalchemy.exc.ProgrammingError: (ProgrammingError) 1045 (28000): Access denied for user 'user'@'domain' (using password: YES) None None 

這對我沒有任何意義,因爲它使用完全相同的憑據(它們是硬編碼的)。

工作環境是windows機器,拋出錯誤的環境是ubuntu 14.04。 Windows和ubuntu機器都遠離運行數據庫的Web服務器,所以它不會是一些奇怪的本地主機事情。

我完全沉迷於此。如果有人能給我一些建議,我會很感激!

回答

相關問題