2009-11-24 6 views
0

У меня проблема с ODBC, которая сильно меня озадачила, и я не могу найти ответ нигде, который касается моей проблемы. Короткая версия: я не могу подключиться к моей установке MySQL4 на Ubuntu Jaunty из моей системы DNS системы WinXP ODBC, даже если я могу нормально подключиться с помощью клиента командной строки как на этой конкретной машине, так и на других.Не ваша обычная проблема с подключением к MySQL4 + ODBC

Огромное количество деталей начинается здесь!

У меня есть стандартная установка MySQL5 на Ubuntu Jaunty 9.04. Я вручную установил MySQL4 из предварительно скомпилированных двоичных файлов в/usr/local/mysql4. Вот команда запуска:

/usr/local/mysql4/bin/mysqld_safe --user = mysql4 --port = 3307 --socket =/var/run/mysql4d/mysql4d.sock --basedir = '/ usr/share/mysql4/'--datadir ='/var/lib/mysql4/'--log-error ='/var/log/mysql4.err '--log ='/var/log/mysql4.log '- -language = '/ usr/local/mysql-standard-4.1.22-pc-linux-gnu-i686-glibc23/share/mysql/english' &

Это, похоже, работает очень хорошо. У меня нет никаких проблем с подключением с помощью клиента MySQL либо из локальных или с удаленным компьютером через TCP/IP:

MySQL -u вКонтакте -h myhost.com --password = 'л' --port = 3307

На этом же сервере у меня есть виртуальный бокс под управлением XP Pro. Я также могу подключить никакие проблемы, используя mysql в командной строке. Однако использование тех же настроек для системы DSN ODBC не работает. Я получаю сообщение «Хост« myhost.com »не разрешено подключаться к этому серверу MySQL».

Единственное сообщение, я вижу об этом в mysql4.log:

091124 10:56:50 5 Connect [email protected] на вКонтакте

Любое имеет некоторое представление? Я полностью в недоумении здесь ...

ответ

0

Должно быть, упомянул, что привилегии были поданы, извините!

Эта проблема оказалась поврежденной mysql.user и mysql.db. Ремонт таблиц не был успешным, поэтому я попытался удалить большинство записей, а затем восстановить таблицу (которая работала), а затем повторно добавить пользователей и GRANT. Работало после этого :)

0

Вы должны предоставить разрешения для пользователя, с которым хотите установить соединение. Используйте инструкцию GRANT.