Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php HY000/2003在本地主机或127.0.0.1上使用mysqli连接时出错_Php_Mysql_Mysqli_Wamp - Fatal编程技术网

Php HY000/2003在本地主机或127.0.0.1上使用mysqli连接时出错

Php HY000/2003在本地主机或127.0.0.1上使用mysqli连接时出错,php,mysql,mysqli,wamp,Php,Mysql,Mysqli,Wamp,我正在编写一个连接到WAMP上数据库的php页面 我有以下代码: $servername = "127.0.0.1"; $username = "root"; $password = ""; // connect to database $conn = new mysqli($servername, $username, $password); //error line (1) $sql = "USE xdbl0zz14_biodiversity"; $conn->query($sql

我正在编写一个连接到WAMP上数据库的php页面

我有以下代码:

$servername = "127.0.0.1";
$username = "root";
$password = "";

// connect to database
$conn = new mysqli($servername, $username, $password); //error line (1)
$sql = "USE xdbl0zz14_biodiversity"; 
$conn->query($sql); //error line (2)
错误行(1)给出以下错误:

Warning: mysqli::mysqli(): (HY000/2003): Can't connect to MySQL server on '127.0.0.1' (111)
Warning: mysqli::query(): Couldn't fetch mysqli
错误行(2)给出以下错误:

Warning: mysqli::mysqli(): (HY000/2003): Can't connect to MySQL server on '127.0.0.1' (111)
Warning: mysqli::query(): Couldn't fetch mysqli
但我认为这是之前错误的直接结果

我已经查看了services.msc并启动了wampmysqld64服务

先谢谢你

编辑

mysql日志显示:

2016-04-05T12:05:50.193100Z 0 [Warning] InnoDB: Resizing redo log from      2*3072 to 2*320 pages, LSN=2471251
2016-04-05T12:05:50.380111Z 0 [Warning] InnoDB: Starting to delete and rewrite log files.
2016-04-05T12:05:51.310164Z 0 [Warning] InnoDB: New log files created, LSN=2471251
2016-04-12T11:10:57.423304Z 0 [Warning] wampmysqld64: Forcing close of thread 2  user: 'root'

2016-04-12T22:34:23.288955Z 0 [Warning] wampmysqld64: Forcing close of thread 2  user: 'root'

根据这些信息,我最好的猜测是mysqld由于一些内部错误而无法启动,可能是由于一些InnoDB数据文件损坏。如果数据是有价值的(例如,没有备份,或者加载时间太长),我会尝试在
strace
gdb
的帮助下弄清楚
mysqld
进程在做什么,然后从那里开始


否则,我会关闭mysqld进程(
kill-9
,如果顽固),清除MySQL数据目录中的所有InnoDB文件(通常是
/var/lib/MySQL
)以及现有InnoDB表的所有
.frm
文件,然后尝试正常重启MySQL服务,然后从备份加载数据库

MySQL日志中是否有任何东西表明它无法启动?您没有选择database@Fred-ii-虽然这样做有点奇怪,但这不是
使用xdbl0zz14_
应该做的吗?将
'127.0.0.1'
更改为
'localhost'
,看看它是否有效。@miken32“无法通过套接字'/var/lib/MySQL/MySQL.sock'连接到本地MySQL服务器”(2)“Instedi在services.msc中停止了两个wamp服务,并退出了wamp。然后我删除了auto.cnf、ib_logfile0、ib_logfile1、ibdata1、ibtmp1和一个.pid文件。这就是您的意思吗?在重新启动wamp时,返回所有文件并生成相同的错误?干杯。是的,这是正确的程序。您是否在同一台主机上运行Mysql客户端和服务器?如果是的话,Windows客户端会在Unix风格的路径(/var/lib/mysql/mysql.sock)中查找套接字,这是相当奇怪的,正如在另一条评论中所观察到的。是的,php页面和wamp服务器都是在同一台机器上运行的,我同意这有点奇怪。