Вопрос В каком случае появляется сообщение об ошибке вида:
Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [MySQL][ODBC 5.1 Driver]Host ‘…’ is not allowed to connect to this MySQL server
Ответ Такая ошибка может означать, что у пользователя, от имени которого осуществляется подключение, нет прав для удаленного подключения к базе данных. Например, многие бесплатные хостинги позволяют создавать SQL-базу на хостинге, но вот так ограничивают права администратора базы данных.
При этом не поможет и введенная непосредственно в панели phpMyAdmin команда вида:
GRANT ALL PRIVILEGES ON имя-базы.* TO ‘имя-пользователя’@’localhost’ IDENTIFIED BY ‘пароль-пользователя’
— в ответ на это появится сообщение примерно такого вида:
SQL query:
GRANT ALL PRIVILEGES ON имя-базы. * TO ‘имя-пользователя’@’localhost’ IDENTIFIED BY ‘пароль-пользователя’
MySQL said: Documentation
#1044 — Access denied for user ‘имя-пользователя’@’localhost’ to database ‘имя-базы’
А в ответ на команду
GRANT ALL PRIVILEGES ON *.* TO ‘имя-пользователя’@’localhost’ IDENTIFIED BY ‘пароль-пользователя’
— появится сообщение примерно такого вида:
SQL query:
GRANT ALL PRIVILEGES ON * . * TO ‘имя-пользователя’@’localhost’ IDENTIFIED BY ‘пароль-пользователя’
MySQL said:
#1045 — Access denied for user ‘имя-пользователя-БД’@’localhost’ (using password: YES)
Т.е. нужно расширять права пользователя, от имени которого осуществляется подключение