У меня есть облачный сервер с MySQL. В данный момент я не могу подключиться со своего компьютера к серверу с помощью любого из пользователей.
Он хочет разрешить использовать mysqldump с конкретным пользователем и разрешить подключение только через один IP-адрес (очевидно, мой IP-адрес).
Как мне это сделать?
Если вам нужно, чтобы какой-то конкретный пользователь делал резервные копии удаленно, эти настройки могут быть полезны:
GRANT SELECT, LOCK TABLES, SHOW VIEW, RELOAD ON *.* TO 'user'@'ip'
IDENTIFIED BY 'password';
Если вы хотите ограничить доступ, используйте брандмауэр. Позже вы можете использовать SSH (как вы говорите):
ssh usr@host mysqldump -u dbuser -ppass databasename > dumpfile.sql
Или доступ напрямую к порту MySQL:
mysqldump -h Your_host_name -u user_name -p password --all-databases > backup.sql
Ну, поискав в Интернете, я нашел этот ответ:
ssh usr@host mysqldump -u dbuser -ppass databasename > dumpfile.sql
И работает отлично. Пользователю нужны только разрешения localhost. И мне не нужно открывать дополнительный порт.