Я просмотрел множество руководств и вопросов, но все еще не могу заставить его работать.
Я использовал следующий отличный пример: MariaDB отказывается от удаленных подключений Но все равно не удалось подключиться ... Но спасибо Делит за все шаги и этот идеальный шаблон! XD
Я установил MariaDB на CentOS 7, а не на Ubuntu, как большинство других. Затем настройте двух пользователей, один из которых предназначен для использования localhost и phpMyAdmin, этот пользователь может войти через phpMyAdmin и SSH @ localhost. Затем я добавил еще одного пользователя, который будет использовать его как логин для моего подключающегося сервера.
Пользователи добавляются как:
CREATE USER 'clust3r1ogin'@'%' IDENTIFIED BY ''; And GRANT all permissions.
Работают ли локальные связи?
Нет, я не могу подключиться как пользователь через ssh на сервере:
[root@zeus ~]# mysql -u clust3r1ogin -p
Enter password:
ERROR 1045 (28000): Access denied for user 'clust3r1ogin'@'localhost' (using password: YES)
Другой пользователь localhost работает нормально ...
Вы проверили, что пользователи добавлены правильно?
Я думаю так:
MariaDB [(none)]> SELECT User, Host FROM mysql.user WHERE Host <> 'localhost';
+--------------+-----------+
| User | Host |
+--------------+-----------+
| clust3r1ogin | % |
| root | 127.0.0.1 |
| root | ::1 |
+--------------+-----------+
3 rows in set (0.00 sec)
Вы разблокировали брандмауэр?
Да иначе я бы получил еще одну ошибку? Но я убежал: firewall-cmd --zone=public --add-port=3306/tcp --permanent
Я немного изменил его, чтобы он разрешал подключаться к порту только определенным IP-адресам.
Вы проверяли правильность настроек в файле my.cnf?
Неправильные настройки в my.cnf (/etc/my.cnf)
может привести к отказу от соединений. Это пропуск сети и адрес привязки. Мой файл выглядит так:
#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
Вы проверяли другие файлы конфигурации?
Да. У них не было и обидных строк.
Телнет работает?
Да.
[root@titan ~]# telnet zeus.xxx.xxx 3306
Trying xxx.xxx.xxx.xxx...
Connected to zeus.mairel.com.
Escape character is '^]'.
Y
5.5.5-10.1.22-MariaDBAYm9rS)q?�QQ%`98N_q<tVmysql_native_passwordConnection closed by foreign host.
Какой интерфейс использует сервер?
Местное только кажется:
[root@zeus ~]# netstat -ntlup | grep mysql
tcp6 0 0 :::3306 :::* LISTEN 1198/mysqld
Вы не забыли перезапустить? Да. Я возобновил использование этого между всеми попытками:
service mariadb restart
Я больше не понимаю, что не так. Бьюсь об заклад, это какая-то конфигурация, но пока не повезло ...
Так как Делит предложил я добавил
[mysqld]
bind-address = ::
Чтобы my.cnf
файл но не повезло ...
Когда я использую свой другой логин localhost для удаленного доступа, после изменения HOST
параметр для %
Подстановочный знак все еще та же ошибка:
Unable to connect to the MySQL host “zeus”. Connection failed with error: Access denied for user 'local_user'@'titan' (using password: YES)
Проблема заключалась в следующем. Пользователи, созданные с помощью SSL Required
вариант. Отключение этого параметра решило все проблемы с подключением!
Мне нужно было настроить MySQL для удаленного тестирования.
Я использую ubuntu, и мне пришлось изменить
bind-address = 0.0.0.0
Вместо того
bind-address = 127.0.0.1
Мой был в /etc/mysql/mariadb.conf.d/50-server.conf
файл.
Я нашел это, выполнив:
$ cd /etc/mysql
$ grep bind-address *
$ grep bind-address */*
$ grep bind-address */*/*
Ищите это так. Это может быть или не быть в /etc/mysql
. Смотрите также и под верхним каталогом.
Также сделайте grep
ищи skip-network
и, если найдете, закомментируйте или удалите. И если бы вам пришлось добавить bind-address
, скорее всего, у него
skip-networking
строка в файле конфигурации. Снова используйте grep
найти это.
Затем, чтобы проверить, войдите на другой компьютер и выполните команду
$ mysql -u user-name -h server-ip-address -p
чтобы увидеть, позволяет ли он вам подключиться таким образом.
отключил selinux, решил все проблемы с подключением