I'm trying to connect to a mysql database from a different server to the one the database is hosted on but I'm getting an error.
I'm guessing i开发者_StackOverflow社区t might be something to do with remote permissions. Is this something I can change or do I need to get my hosting company to do this?
<?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
I would say, that your login credentials or Network settings are wrong: See this post for further help: http://wiki.answers.com/Q/What_does_MySQL_error_number_10060_mean
If you don't have access from outside use tunneling, here is an example:
$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());
You have to give the permission to remote user by inserting the particular remote machine IP or wildcards in USER table in mysql.
This link will help you. Click Here
精彩评论