本文主要是介绍php连接docker运行的mysql,显示 (HY000/2002): Connection refused,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
php要连接docker中运行的mysql是不能用localhost 或 127.0.0.1来连接的,因为每个docker运行容器的localhost 和127.0.0.1都是自己容器本身,不是mysql容器,需要修改成母机 IP,或者是mysql容器名称
$dbms='mysql'; //数据库类型
$host='xy_mysql'; //数据库主机名,在docker中,xy_mysql是我的mysql容器的别名
$dbName='test'; //使用的数据库
$user='root'; //数据库连接用户名
$pass='xy123456'; //对应的密码
$dsn="$dbms:host=$host;dbname=$dbName";
try {$con = new PDO($dsn, $user, $pass); //初始化一个PDO对象$con->query('SET NAMES UTF8');$res = $con->query('select * from user');while ($row = $res->fetch(PDO::FETCH_ASSOC)) {echo "id:{$row['id']} name:{$row['name']}";}
} catch (PDOException $e) {echo '错误原因:' . $e->getMessage();
}
参考:
https://blog.csdn.net/weixin_41282397/article/details/82994370
这篇关于php连接docker运行的mysql,显示 (HY000/2002): Connection refused的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!