Я знаю, что многие люди уже спрашивали об этом, но этот человек в основном забыл пароль заблокированного брандмауэром, которого у меня нет в этой ситуации.
Я разрабатываю php, и мне нужно подключиться к удаленной базе данных, чтобы позволить моей команде работать над ней.
localhost просто шел нормально, но когда я попытался переключиться, он дал мне эту ошибку
No connection could be made because the target machine actively refused it.
и это мой код
Я хочу подключиться к базе данных .nf.biz
$db=mysqli_connect($host,$user,$password,$db_name,3306);
спасибо erverone
Ваш сервер MySQL принимает только соединения в * nix socket (/var/run/mysqld/mysqld.sock, если вы используете Ubuntu) или только для локального хоста.
Вы должны отредактировать свой my.cnf (снова Ubuntu находится в /etc/mysql/my.cnf) и измените следующее:
bind-address = 0.0.0.0
И прокомментируйте следующее
#skip-networking
Наконец, перезапустите MySQL.
Будьте осторожны с этим, если ваша машина MySQL доступна из общедоступного Интернета, будет приниматься соединение от всех!
Даже если это не ваше дело, я добавлю здесь ответ, потому что сообщение для этой ошибки одно и то же.
На сервере MySQL есть ошибка, когда у вас есть псевдоним для localhost в каталоге c: \ Windows \ System32 \ Drivers \ etc \ hosts, сервер MySQL не может принять подключение к localhost.
Удалите псевдоним, и MySQL Server начнет принимать подключения к localhost.
У меня нет опции # skip-networking .
Я разрешил его путем хэширования строки адреса привязки (см. Третью строку ниже).
# Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure.** #bind-address = 127.0.0.1
Я решил просто добавить порт в bind-адрес: 127.0.0.1:3388
Я исправил это, установив адрес привязки в my.cnf на общедоступный IP-адрес сервера:
# Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. bind-address = SERVER_IP_ADDRESS
Ну, это может быть поздно, но для будущих посетителей,
Я узнал тогда, что biz.nf отказывается от любых подключений к его базе данных из внешнего источника, а это значит, что только веб-приложения, размещенные на biz.nf, имеют доступ к их БД, кроме того, что вы будете отвергнуты.
Ваш сервер MySQL принимает только соединения в * nix socket ( /var/run/mysqld/mysqld.sock
если вы используете Ubuntu) или только для локального хоста.
Вы должны отредактировать свой my.cnf
(снова Ubuntu находится в /etc/mysql/my.cnf
) и измените следующее:
bind-address = 0.0.0.0
И прокомментируйте следующее
#skip-networking
Наконец, перезапустите MySQL.
Будьте осторожны с этим, если ваша машина MySQL доступна из общедоступного Интернета, будет приниматься соединение от всех!
sudo -s sudo gedit /etc/mysql/my.cnf bind-address = 0.0.0.0 #skip-networking save sudo service mysql restart
Отлично работает!