how to connect to mysql on host on another computer on network

Santosh Linkha picture Santosh Linkha · Mar 20, 2011 · Viewed 9.8k times · Source

For

$conn = mysql_connect("192.168.0.235", "root", "") or
    die("Could not connect: " . mysql_error());

mysql_select_db("crossdomaintest");

$result = mysql_query("SELECT * FROM testing");

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
    echo $row[1].$row[2].$row[3]."<br/>"; 
}

mysql_free_result($result);

I am getting

Warning: mysql_connect() [function.mysql-connect]: Host '192.168.0.167' is not allowed to connect to this MySQL server in /var/www/test.php on line 3 Could not connect: Host '192.168.0.167' is not allowed to connect to this MySQL server

And my IP is 192.168.0.168 and I am using LAMP on Ubuntu 10.10 and 192.168.0.235 is using XAMPP on windows 7 i can access all sites on ...235 but not access database from my local-server.

Any ideas?

Answer

Your Common Sense picture Your Common Sense · Mar 20, 2011

it's not about "how to connect". connecting would be all the same.
it's about how to setup remote server to allow connections from your IP.
do you have root privileges on the db server on 192.168.0.235? if so, you have to run appropriate GRANT PRIVILEGES query on it.
If not - ask a db admin to do that

I'd also advise not to use root user to access remote database. Better create another user and give him appropriate privileges