Я пытаюсь подключиться к базе данных mysql с другого сервера до той, на которой размещена база данных, но я получаю сообщение об ошибке.
Я предполагаю, что это может быть связано с удаленными разрешениями. Я могу это изменить или мне нужно, чтобы моя хостинговая компания сделала это?
<?php $con = mysql_connect("mysql4-remote.hosting.net","myadmin","password123"); if (!$con) { die('Could not connect: ' . mysql_error()); } ?>
Can't connect to MySQL server on 'mysql4-remote.hosting.net' (10060)PHP Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'mysql4-remote.hosting.net' (10060) in D:\websites\abc123\www\test.php on line 2
Я бы сказал, что ваши учетные данные или настройки сети неверны: см. Этот пост для дальнейшей помощи: http://wiki.answers.com/Q/What_does_MySQL_error_number_10060_mean
Если у вас нет доступа из туннелирования извне, вот пример:
$connection = ssh2_connect('SERVER IP', 22); ssh2_auth_password($connection, 'username', 'password'); $tunnel = ssh2_tunnel($connection, 'DESTINATION IP', 3307); $db = new mysqli_connect('127.0.0.1', 'DB_USERNAME', 'DB_PASSWORD', 'dbname', 3307, $tunnel) or die ('Fail: '.mysql_error());
Вы должны предоставить разрешение удаленному пользователю, вставив конкретный IP-адрес удаленного компьютера или подстановочные знаки в таблицу USER в mysql.
Эта ссылка вам поможет. Кликните сюда