Php 警告:mysqli_connect():MySQL服务器已离开
我编写了一个简单的php代码来连接mysql服务器,如下所示Php 警告:mysqli_connect():MySQL服务器已离开,php,mysql,mysqli,database-connection,Php,Mysql,Mysqli,Database Connection,我编写了一个简单的php代码来连接mysql服务器,如下所示 <?php $username = "root"; $password = "Kepwd"; $hostname = "localhost:81"; //connection to the database $dbhandle = mysqli_connect($hostname, $username, $password) or die("Unable to connect to MySQL"); echo "
<?php
$username = "root";
$password = "Kepwd";
$hostname = "localhost:81";
//connection to the database
$dbhandle = mysqli_connect($hostname, $username, $password)
or die("Unable to connect to MySQL");
echo "Connected to MySQL<br>";
?>
错误在这里:
$hostname = "localhost:81";
您没有连接到MySQL,而是连接到Apache服务器。如果您没有更改MySQL端口,只需使用
$hostname = "localhost";
输入数据库名称后忘记指定数据库名称,请重试。语法应该是这样的
<?php
$con = mysqli_connect("localhost","my_user","my_password","my_db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
?>
您的主题行显示为“警告:mysql\u connect():mysql服务器已离开”,其中包含一个mysql\u
函数,而您所问的其他函数是mysqli\u
函数。这是您实际遇到的错误吗?请在不使用端口的情况下尝试此操作$hostname=“localhost”代码>-您还可能有另一个应用程序使用同一端口。如果是这样,您需要找出它是什么,或者尝试端口3306您混淆了IIS web服务器和mysql服务器。要通过外部IIS端口连接到mysql服务器,您需要什么来连接到本地主机?您的MySQL端口在默认3306上运行,当您删除localhost:81
时,它可以解决地址问题。这是一个非常老的问题,但我刚刚遇到了这个问题,它不是因为上面提到的任何事情。我使用MySQL Workbench创建了一个用户,并选择SHA-256作为密码,而不是标准密码……这导致在尝试连接到DB时抛出此错误。也许有人会觉得这条评论很有用,因为我花了4个小时才弄明白。¯_(ツ)_/“@AndrewQuebe谢谢!我用头撞了好几个小时才找到你的评论。我不得不回去重新配置MySQL 8社区版,甚至允许使用“标准版”密码,但这样做起了作用。是的,我们已经在评论中证明了这一点。Ohgodwhy的评论对我来说很有意义。@Fred ii-是的。而且端口必须指定为mysqi_connect的单独参数,而不是主机。是的,这也是。$mysqli=new mysqli(“127.0.0.1”,“用户”,“密码”,“数据库”,3306);
根据;-)错。数据库名称是可选的。
<?php
$con = mysqli_connect("localhost","my_user","my_password","my_db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
?>