【发布时间】:2017-07-10 12:29:11
【问题描述】:
在连接到 MySql 时,我收到错误 MySql server has gone away
在这条线上$db = mysqli_connect("localhost:9080","root","XXXX");
这是我的代码。
<?php
ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_timeout', 300);
define('DB_SERVER', 'localhost:9080');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
define('DB_DATABASE', 'api');
//$db = mysqli_connect(DB_SERVER,DB_USERNAME,DB_PASSWORD);
$db = mysqli_connect("localhost:9080","root","");
// Check connection
if (!$db)
{
die("Connection failed: " . mysqli_connect_error());
}
$select_db = mysqli_select_db($connection, DB_DATABASE);
if(!$select_db)
{
die("Database selection failed: " . mysqli_error($db));
}
echo "Connected successfully";
?>
我已经尝试添加
ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_timeout', 300);
并将max_allowed_Packet 更新为 16 M。
然后重新启动所有服务。
【问题讨论】:
-
$connection在您的代码中未定义!! -
你的 MySQL 服务器是否真的在监听 9080 端口?如果是,为什么?
-
还可以查看
mysqli_connect()的参数4,然后您可以松开mysqli_db_select() -
@Saty 我同意,但错误在这一行 $db = mysqli_connect("localhost:9080","root","");
-
@RiggsFolly 是的,它正在监听 9080 端口
标签: php mysql mysqli wamp wampserver