Подключение к MySQL через Python MySqlDb (ошибка 1045) - PullRequest
1 голос
/ 30 января 2012

Я использую Python 2.7 на OSX Lion и не могу подключиться к удаленной базе данных SQL на Python. Я получаю следующую ошибку:

Traceback (most recent call last):
  File "connectDB.py", line 39, in <module>
    main()
  File "connectDB.py", line 16, in main
    db = MySQLdb.connect(HOST, USER, PASSWORD, DBNAME )
  File "build/bdist.macosx-10.7-intel/egg/MySQLdb/__init__.py", line 81, in Connect
  File "build/bdist.macosx-10.7-intel/egg/MySQLdb/connections.py", line 187, in __init__
_mysql_exceptions.OperationalError: (1045, "Access denied for user 'ekogan'@'dyn-209-2-217-168.dyn.columbia.edu' (using password: YES)")

Я знаю, что мой хост и пользователь / пароль работают, потому что я могу получить к ним доступ через PHP. Но почему-то здесь отказано. Могут ли быть некоторые проблемы с версиями SQL? Я совершенно не уверен, как поступить.

Ответы [ 3 ]

2 голосов
/ 30 января 2012

PHP, вероятно, не обращается к вашему серверу MySQL как удаленный хост. Python, вероятно, делает. Поэтому проверьте ваши разрешения.

1 голос
/ 24 сентября 2013
grant select,update,delete,insert on DBNAME.*  to  'ekogan'@'dyn-209-2-217-168.dyn.columbia.edu' identified by 'PASSWORD'; 
1 голос
/ 30 января 2012

Если у вас есть разрешение на просмотр таблицы mysql.user, откройте терминал и введите

% mysql -u ekogan -p mysql
mysql> select user, host, password from user where password = password(PASSWORD);

Вверху измените PASSWORD на значение вашего пароля, заключенное в кавычки (то есть, если ваш пароль foobar, измените PASSWORD на "foobar"). Пользователь, хост и пароль должны соответствовать записи в таблице mysql.user.

...