数据库连接config.php时报错了
今天是第一次学php不太懂,写了一个config.php文件打开网页连接时报错了.php
<?php
$username="wanf";
$password="123456";
$host="localhost";
$dbname="www_myblog_com";
$conn=mysqli_connect($host,$username,$password,$dbname);
if ($conn->connect_error){
die("连接数据库失败".$conn->connect_error);
}
$conn->query('set names utf8');
应该是Mysql的加密授权mysqli不支持, 可以直接学PDO
楼主用的
MySQL8.x
吧, 顺便看一下自己PHP
版本,如果是PHP7.4.4
以上,应该支持caching_sha2_password
:elephant: :elephant: :elephant: :elephant: :elephant: :elephant: :elephant: :elephant: :elephant:
1、问题&解决
原因:MySQL 认证规则
default_authentication_plugin = mysql_native_password
default_authentication_plugin = caching_sha2_password
解答:认证规则不支持接口方案
mysql_native_password
php7.4.33
2、MySQL
MySQL查看认证方式修改
3、PHP
PHP 连接 MySQL的两种方式
虽然有两种方案,但无可厚非,要么升级 PHP 版本,要么修改 MySQL 认证规则。
mysqli_*()
pdo
mysqli_connect() 实例代码
pdo 实例代码
感谢大家,问题已经解决.