Назад | Перейти на главную страницу

Сервер Ubuntu и mysql. Что-то не позволяет мне подключиться

У меня вопрос по настройкам mysql удаленные подключения и mysql на ubuntu? теперь я хочу выяснить, почему я не могу подключиться.

Я убедился, что адрес привязки закомментирован. Я могу проверить связь с сервером внутри виртуальной машины, но я не могу проверить связь с ним внутри виртуальной машины, используя mysqladmin --protocol=tcp --host=self_ip ping. Я также проследил и проверил, открыты ли мои порты и выглядят ли они так. Я настраиваю samba на этой виртуальной машине и могу получить к ней доступ без проблем. Похоже, что в ubuntu нет брандмауэра (я уже догадывался об этом раньше), поэтому я озадачен, почему сервер не разрешает мое соединение.

По-видимому, файл конфигурации работает на стороне другого человека http://www.pastie.org/742545

Я использую Ubuntu 6.06 LTS только из соображений «поддержки». Надеюсь, это будет «легко»?

Я предполагаю, что это последний шаг из связанного вопроса:

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

Попробуйте войти в MySQL как root на сервере MySQL и запустить:

# grant all on [database name].* to '[user name]'@'[remote client hostname or IP address]' identified by '[password]'

Возможно, вы захотите уменьшить разрешение «все» до чего-то более ограничительного, в зависимости от ваших требований к доступу.

Сначала установите локально: работает ли mysql вообще (ps aux | grep mysql)?

Слушает ли mysql какие-либо порты (netstat -ln | grep mysql)?

Вы можете к нему подключиться?

(Если вы не можете выполнить процедуру сброса пароля root Вот (остановите mysql, начните с командной строки с помощью skip-grant-tables. Также хорошая ссылка для Не удается подключиться к [локальному] серверу MySQL прямо из справочника.).

Если он работает локально, проблема связана с виртуальной машиной.

Какая это виртуальная машина? Какую сеть вы используете (мостовую или NAT)?

Хм. Когда вы используете --host = self_ip. Вы имеете в виду --host = 127.0.0.1 или --host = 192.168.NNN.NNN или буквально --host = 'self_ip'?

Поскольку буквально набранный --host = self_ip может означать вызов хоста в сети с именем "self_ip"

Неужели это так?