О web-разработке
и даже немного больше...

Как отрыть удаленный доступ к MySQL?

Для более комфортного администрирования баз данных иногда возникает необходимость в получении удаленного доступа к серверу MySQL. Давайте посмотрим, как можно настроить удаленный доступ к MySQL. Делается это следующим образом, для пользователя которому необходимо предоставить доступ извне, необходимо вместо localhost указать хост, с которого будет производиться вход. В нашем примере мы будем открывать удаленный доступ для пользователя root. Для безопасности вы можете завести нового пользователя, предварительно указав нужные привилегии для него.

Подключаемся к MySQL:

# mysql –u root –p

Вводим пароль для root в MySQL.

Выбираем базу, с которой будем выполнять наши манипуляции:

USE mysql;

Просмотрим пользователей MySQL:

SELECT Host,User,Password FROM user;

Будет показаны данные примерно в таком виде:

+-----------+--------+-------------------------------------------+
| Host      | User   | Password                                  |
+-----------+--------+-------------------------------------------+
| localhost | root   | *425678901585ACDB80C72475B1E70451ADB1263  |
+-----------+--------+-------------------------------------------+

Итак, в таблице видно одного пользователя, это root, который может подключаться только локально, об этом говорит значение поля Host: localhost.

Добавим возможность подключения с любого хоста для root:

UPDATE user SET Host='%' WHERE User='root' AND Host='localhost';

Задействуем сделанные изменения:

FLUSH PRIVILEGES;

Обратите внимание ещё на один момент. Не оставляйте пароль пустым для root, иначе доступ к базе будет иметь каждый желающий.

Чтобы сменить пароль для root можно выполнить запрос вида:

UPDATE user SET Password=PASSWORD('новый пароль') WHERE User='root' AND Host='%';

Бывают ситуации, когда в таблице есть записи для нескольких root аккаунтов с разными значениями поля Host. Это означает то что в зависимости от хоста для root могут быть разные пароли, в некоторых ситуациях тоже может быть удобно.

+-------------+--------+-------------------------------------------+
| Host        | User   | Password                                  |
+-------------+--------+-------------------------------------------+
| localhost   | root   | *425678901585ACDB80C72475B1E70451ADB1263  |
+-------------+--------+-------------------------------------------+
| 192.168.1.2 | root   | *425678901585ACDB80C72475B1E70451ADB1263  |
+-------------+--------+-------------------------------------------+
| 192.168.1.3 | root   | *34901585ACDB80C72475B1E70451ADB41263771  |
+-------------+--------+-------------------------------------------+
| 192.168.1.9 | root   | *1585ACDB80C72475B1E70451ADB126309876588  |
+-------------+--------+-------------------------------------------+

Если нет такой необходимости, можно оставить лишь один аккаунт root, а для возможности подключаться удалённо установить значение Host — %.

Опубликован: 07.09.2014 г.

См. также:

Как подсчитать количество записей по месяцам в MySQL?
Работа с базой данных в WordPress
SQL-запросы для смены домена в WordPress
Как изменить тип таблиц в MySQL?
Изменение кодировки таблиц в базе MySQL
Фильтрация по полю DateTime в MySQL
Меняем пароль root в MySQL 5.7
Исправление ошибок в базе MySQL

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Комментарии
  • Загрузка...
Друзья сайта