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

Кажется, что MySQL игнорирует аргумент --host

Мне нужно подключиться к базе данных MySQL на сервере, к которому у меня нет доступа через брандмауэр. Однако у меня есть доступ SSH к другому серверу, который разрешен через брандмауэр на моем целевом сервере.

У меня SSH подключился к последнему (скажем, host1), а затем я пытаюсь выполнить следующую команду:

mysql --host=host2 --user=username --password=password

Получаю такой ответ:

Access denied for user 'username'@'host1' (using password: YES)

Почему он пытается подключиться к host1 (то есть к самому себе)?

NB: я не использую localhost где угодно здесь.

Вы неправильно понимаете ошибку, она говорит, что пользователь username подключение от host1 было отказано в доступе. Ошибка исходит из host2.

На самом деле ошибка говорит: "Вы пытаетесь использовать username из host1".

Вам нужно будет добавить разрешения для username на host1. Вы можете опубликовать SHOW GRANTS FOR 'username' из, когда вы вошли в MySQL как root на host2?

Изменить: Ninja'd :)

У меня была эта ошибка из-за неправильного пароля, который я использовал для базы данных. Так было с версией mysql 5.1.61.

Поэтому убедитесь, что пароль вашей базы данных правильный.