2016-10-24 75 views
0

我試圖訪問數據庫使用python,但它只是不工作。當我訪問遠程數據庫時,一切都很好。但是當地有一些問題。我在這裏做什麼?我tryied一些事情,我就發現intener不授予訪問權限,但他們沒有工作MYSQL:「訪問拒絕用戶X'@'localhost'(使用密碼:是)」PYTHON

本地用戶:使用 enter image description here

代碼:

enter image description here

消息收到

enter image description here

感謝您的幫助

+0

你讀過[相關問題](http://stackoverflow.com/questions/10299148/mysql-error-1045-28000-access-denied-for-user-billlocalhost-using-passw)? - 給定的答案似乎也適用於你的問題(如果我正確地解釋你的phpmyadmin截圖) – Maurice

+0

對不起!困惑!!您試圖訪問的數據庫(本地,即與代碼在同一臺機器上)還是您建議的(遠程即在另一臺機器上)? – RiggsFolly

+0

_Side Note_爲此用戶授予'All Privilages'似乎是OverKill。只授予應用程序要求的數據,並且只在應用程序要求的數據庫中使用 – RiggsFolly

回答

0

經過數小時的測試,我終於發現問題所在!在mysql用戶進行了一些修改之後,沒有任何結果,當我將PORT添加到mysql數據庫時,一切正常。

db = MySQLdb.connect(host="127.0.0.1",user="userpython",passwd="root",db="bigdata",port=8886) 
0

MySQLdb.connect()函數中缺少端口號。

0

添加端口號對我無效。當授予os運行python腳本的用戶的權限。

sudo mysql -u root -h localhost -p 
grant all privileges on database_name.* to 'os_user'@'localhost' identified by 
'password' with grant option; 
相關問題