Якщо ви не хочете використовувати тунель ssh, у my.cnf або mysqld.cnf ви повинні змінити 127.0.0.1 з місцевою ip адресою ( 192.168.1.100 ), щоб мати доступ через Lan. Приклад нижче:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Шукайте bind-адресу в my.cnf або mysqld.cnf
bind-address = 127.0.0.1
та змініть 127.0.0.1 на 192.168.1.100 (локальна ip-адреса)
bind-address = 192.168.1.100
Щоб застосувати внесені вами зміни, необхідно перезапустити сервер mysql за допомогою наступної команди.
sudo /etc/init.d/mysql restart
Змінення кореня користувача для доступу до LAN (запустіть рядок запиту на віддаленому сервері, до якого потрібно мати доступ)
root@192.168.1.100:~$ mysql -u root -p
..
CREATE USER 'root'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
Якщо ви хочете мати доступ лише з певної ip-адреси, змініть 'root' @ '%' на 'root' @ '(ip-адреса або ім'я хоста)'
CREATE USER 'root'@'192.168.1.100' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.100' WITH GRANT OPTION;
FLUSH PRIVILEGES;
Потім ви можете підключити:
nobus@xray:~$ mysql -h 192.168.1.100 -u root -p
перевірена на сервері ubuntu 18.04
10061
= Підключення відмовлено