从另一台计算机访问XAMPP MySql数据库

时间:2010-08-17 21:40:37

标签: php mysql xampp

所以我和我的朋友在ubuntu上同时使用xampp,如果有帮助,在彼此的网站之间建立连接,我们都创建了相同的php文件进行连接,所以我们使用另一个的IP,但后来呢说错误

Warning: mysql_connect() [function.mysql-connect]: Host 'coke-laptop.local' is not allowed to connect to this MySQL server in /opt/lampp/htdocs/connection.php on line 2
Could not connect: Host 'coke-laptop.local' is not allowed to connect to this MySQL server

我们在connection.php文件中有这个代码:

<?php
$link = mysql_connect('10.100.161.37','root','');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
//echo 'Connected successfully';

$db_selected = mysql_select_db('Prueba', $link);
if (!$db_selected) {
    die ('Can\'t use Prueba : ' . mysql_error());
}

// This could be supplied by a user, for example
$firstname = 'fred';
$lastname  = 'fox';

// Formulate Query
// This is the best way to perform an SQL query
// For more examples, see mysql_real_escape_string()
$query = sprintf("SELECT * FROM Agencia");

// Perform Query
$result = mysql_query($query);

// Check result
// This shows the actual query sent to MySQL, and the error. Useful for debugging.
if (!$result) {
    $message  = 'Invalid query: ' . mysql_error() . "\n";
    $message .= 'Whole query: ' . $query;
    die($message);
}

// Use result
// Attempting to print $result won't allow access to information in the resource
// One of the mysql result functions must be used
// See also mysql_result(), mysql_fetch_array(), mysql_fetch_row(), etc.
while ($row = mysql_fetch_assoc($result)) {
    echo $row['ID'] . " ";
    echo $row['Nombre'] . "\n\r";
}

// Free the resources associated with the result set
// This is done automatically at the end of the script
mysql_free_result($result);
mysql_close($link);
?>

如果我们像这样使用IP,我们可以输入xampp正常的欢迎页面。

2 个答案:

答案 0 :(得分:11)

检查您是否已启用对MySQL服务器的远程访问。打开my.cnf文件(可能在xampp / etc /中找到),转到[mysqld]部分并添加以下内容(使用您自己的IP地址而不是示例)

bind-address=192.168.1.100

如果有一行显示skip-networking,请将其注释掉,如下所示:

# skip-networking

然后重启MySQL服务器

答案 1 :(得分:1)

看起来您的MySQL数据库不允许您使用您提供的凭据远程连接。您需要配置远程用户才能进行连接。尝试查看MySQL Grants

例如:

GRANT SELECT, INSERT ON database.* TO 'someuser'@'somehost';