Подключение базы данных на другом сервере - PullRequest
0 голосов
/ 09 февраля 2019

Для веб-проекта нам были предоставлены два сервера, один для веб и другой для базы данных.Когда я пытаюсь подключиться к базе данных на другом сервере, я получаю сообщение об ошибке «Не удается подключиться отказано в доступе».Я хотел знать, если мне нужно изменить какие-либо настройки или изменить какие-либо файлы, такие как php.ini или cnf и т. Д. Для его работы?Я использую php 7.2 на серверах rhel 7.5.Также я изменил root, чтобы разрешить всем хостам (%) пользователей.

$db_host        = '172.xx.xx.xx';
$db_user        = 'root';
$db_pass        = 'passwrd';
$db_database    = 'some_db';

/* End config */


$db_conx = new mysqli($db_host, $db_user, $db_pass, $db_database);
/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

Ответы [ 2 ]

0 голосов
/ 09 февраля 2019

По умолчанию вы не можете получить доступ к mysql с удаленного IP-адреса.Прежде всего, вам нужно предоставить все права доступа root,

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;

Затем вам нужно отменить привязку части ip-адреса в файле mysql ini, которая должна выглядеть как bind-address = 127.0.0.1, либо удалить ее, либо оставить комментарийна #bind-address = 127.0.0.1.После изменения всего этого перезапустите службу mysql, чтобы изменения вступили в силу.Примечание. Указанное выше местоположение относится к среде Windows. Если вы работаете в Linux, вероятное местоположение может быть /etc/mysql/my.cnf, в некоторых случаях оно может быть в /etc/mysql/mysql.conf.d/mysqld.cnf.

.
0 голосов
/ 09 февраля 2019

Необходимо убедиться, что у пользователя «root» есть права администратора, или попробуйте создать нового пользователя и предоставить ему полные права администратора.

% mysql --user=root mysql
CREATE USER 'youruser'@'yourserver' IDENTIFIED BY 'yourpass';
GRANT ALL PRIVILEGES ON *.* TO 'youruser'@'yourserver' WITH GRANT OPTION;
FLUSH PRIVILEGES;
...