Предоставить удаленный доступ к MySQL
Здравствуйте, я использую Centos VPS с установленным nginx + mysql + php-fpm. Я пытаюсь разрешить удаленный доступ к базе данных на этом компьютере с другого моего VPS.
Я опробовал следующие шаги.
- Модифицированный
/etc/my.cnf
файл, а затем в[mysqld]
блок добавил строкиbind-address = *
- Сохранен и перезапущен сервис mysql с помощью команды
/etc/init.d/mysqld restart
- Вы вошли в mysql и создали пользователя с именем remote и паролем скажем pass
- Набрал команду use social и попытался запустить команду
GRANT ALL PRIVILEGES ON *.* TO remote@'1.2.3.4' IDENTIFIED BY 'pass';
Где 1.2.3.4 - это IP VPS, с которого я хочу получить удаленный доступ к социальной базе данных.
Ошибка это получить
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Может кто-нибудь сообщить мне, почему я сталкиваюсь с этой ошибкой, когда я могу войти в систему и создать пользователей, даже работать с базой данных, используя то же имя пользователя, root и тот же пароль, даже после этой ошибки!!
1 ответ
Решение
С помощью этой команды вы создаете другого пользователя root
GRANT ALL PRIVILEGES ON *.* TO remote@'1.2.3.4' IDENTIFIED BY 'pass';
потому что вам даны все привилегии на mysql db тоже
GRANT ALL PRIVILEGES ON socialdb.* TO remote@'1.2.3.4' IDENTIFIED BY 'pass';