Настройки, позволяющие другим компьютерам подключаться к базам данных MySQL (версия для Windows)

Страница обновлена :
Дата создания страницы :

Условия эксплуатации

MySQL
  • MySQL 8.0
Виндоус
  • Windows 11

Необходимые условия

MySQL
  • MySQL 8.0
Виндоус
  • Windows 11
  • Windows 10
Сервер Windows
  • Windows Server 2022
  • Windows Server 2019
  • Windows Server 2016
  • Windows Server 2012 R2

предварительное условие

  • Установлена MySQL 8

Проверка брандмауэра

В MySQL брандмауэр устанавливается на следующем экране во время установки, поэтому вам не нужно настраивать какие-либо дополнительные параметры.

На всякий случай проверьте настройки брандмауэра. Поскольку работа до отображения отличается в зависимости от версии Windows, введите «брандмауэр» в меню «Пуск», чтобы отобразить его.

Выберите «Дополнительно» в меню слева.

Если вы выберете "Inbound Rules" слева, вы увидите, что "Port 3306" и "Port 33060" были добавлены в список. Это то, что было добавлено в MySQL.

Проверка конфигурационного файла

Раньше нужно было bind-address менять из конфигурационного файла, но в текущей версии этого пункта не существует, поэтому менять настройку нет необходимости.

Конфигурационный файл для MySQL в Windows можно найти в следующих местах: ProgramData Папка скрыта, поэтому введите путь прямо в адресную строку проводника или сделайте скрытую папку видимой.

C:\ProgramData\MySQL\MySQL Server 8.0\my.ini

Настройки прав доступа пользователей

Чтобы войти в базу данных MySQL, необходимо указать пользователя, но по умолчанию все пользователи могут получить к ней доступ только локально. Итак, здесь мы установим разрешения для пользователя.

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

Разрешить подключения можно двумя способами: с помощью команды или с помощью графического интерфейса.

Настройка привилегий доступа пользователей (операции с графическим интерфейсом)

В меню «Пуск» выберите «MySQL -> MySQL Workbench 8.0 CE», чтобы запустить его.

Когда вы запускаете его, в левом нижнем углу есть экземпляр по умолчанию, поэтому выберите его.

У вас будет запрошен пароль, поэтому войдите в систему с учетной записью root.

Выберите вкладку «Администрирование» в меню «Навигатор» слева и выберите «Пользователи и привилегии».

В списке выберите учетную запись, для которой вы хотите изменить разрешения. root В данном случае мы выбрали учетную запись.

Limit to Hosts Matching Я думаю, что есть элемент и он установлен по localhost умолчанию. Это означает, что доступ к нему можно получить только с localhost. Задайте для этого значения IP-адреса компьютеров, к которым вы хотите разрешить подключения. Если вы введете обычный режим, только один юнит будет целевым, но если вы хотите выбрать диапазон, вы можете использовать подстановочный знак "%", поэтому, если вы укажете "192.168.0.%", вы разрешите "192.168.0.0" ~ "192.168.0.255".

После ввода вы можете применить его, нажав кнопку «Применить» в правом нижнем углу.

Вы можете видеть, что список пользователей также изменился.

Настройка прав доступа пользователей (команд)

приложение
Это не окончательная информация, потому что она находится в области исследования, но в MySQL 8 невозможно изменить хост прав с помощью команды после создания пользователя, поэтому необходимо подтвердить хост во время создания пользователя.

В меню «Пуск» выберите «MySQL -> MySQL 8.0 Command Line Client» и запустите его.

Вам будет предложено ввести пароль, поэтому введите пароль root.

Вы можете просмотреть список пользователей и узлов сети, введя следующую команду:

select user,host from mysql.user;

Чтобы создать пользователя, введите следующую команду: Введите IP-адрес ПК, к которому вы хотите подключиться извне, к «Узлу разрешений». Так как можно использовать подстановочный знак "%", введите "%", чтобы разрешить доступ от всех, и "192.168.0.0" ~ "192.168.0.255", чтобы разрешить "192.168.0.%". Если вы хотите включить "%", заключите его в одинарные кавычки.

create user <ユーザー名>@<アクセス許可ホスト> identified by '<パスワード>';

Пример входных данных

create user user1@'192.168.0.%' identified by 'xxxxxxxx';

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

Типы привилегий включают "ALL [PRIVILEGES]", "CREATE (разрешение на создание баз данных, таблиц и т.д.)" и "SELECT (просмотр записей таблиц)". Пожалуйста, проверьте содержание разрешений на официальном сайте.

Разрешения, которые необходимо установить, могут быть указаны для каждой базы данных или для каждой таблицы. Если вы введете "*.*", вы сможете установить права доступа ко всем базам данных и таблицам.

grant <権限の種類> on <データベース名>.<テーブル名> to <ユーザー名>@<アクセス許可ホスト>;

Пример входных данных

grant all privileges on *.* to user1@'192.168.0.%';

Чтобы отразить настройки, введите следующую команду:

flush privileges;

Если вы снова проверите список пользователей, вы сможете подтвердить, что он был создан и настроен.

Проверка подключения

Подойдет любой инструмент, который можно подключить извне, но на этот раз мы попробуем подключиться к Workbench, официальному клиенту MySQL.

Запустите Workbench, если он установлен на другом ПК.

Добавьте подключение MySQL.

Введите настройки, необходимые для подключения. Можно использовать DNS-имя, но по каким-то причинам у меня не получилось подключиться к Workbench, поэтому я указал его по IP-адресу.

Если подключение проверено и успешно, можно судить о том, что настройка нормальная.