Подключение к онлайн-базе данных MySQL с локального хоста - PullRequest
5 голосов
/ 18 января 2010

Я пытаюсь подключиться к своей базе данных MySQL на своем онлайн-сервере через PHP на моем локальном хосте.

$con = mysql_connect("$hostname", "$username", "$password");
if (!$con) {die('Could not connect: ' . mysql_error());}
mysql_select_db($databasename, $con);

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

Правильно ли отформатировано соединение выше для этого? Любые другие предложения?

Ответы [ 5 ]

7 голосов
/ 18 января 2010

На вашем сервере MySQL должен быть указан ваш IP-адрес (или % в качестве подстановочного знака) в разрешенных хостах.

2 голосов
/ 18 января 2010

Ваш код в порядке.

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

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

2 голосов
/ 18 января 2010

Как говорят другие, вам нужно разрешить этому конкретному хосту (в данном случае ваш IP) подключаться. Это в вашей таблице user в базе данных mysql. Если у вас нет доступа к этой базе данных (или вы не имеете прав доступа), вы не можете изменить это.

2 голосов
/ 18 января 2010

Разрешает ли хост это? Многие не позволят подключаться внешним клиентам.

0 голосов
/ 26 августа 2015

Пора перейти к mysqli_* или PDO

Документация

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...