php5.5.38如何可以连接到mysql8.0.19数据库?

1. 运行环境

ci框架3.15 php5.5.38 nginx、 windows 、mysql8.0.19
端口号已开通,ip没有限制,账号密码都是正确的,切换php7.3.4及以上高版本即可访问成功
mysql的密码插件已经更换过了mysql_native_password
//: <> (使用 php artisan --version 命令查看)

2). 当前使用的 php/php-fpm 版本?

PHP 版本:php5.5.38
php扩展如下:
mhash
mysql
mysqli
mysqlnd
odbc
pcre
PDO
pdo_mysql
PDO_ODBC
pdo_pgsql
pgsql
Phar
Reflection
session
SimpleXML
sockets
SPL
sqlite3
standard
tokenizer

连接数据库配置信息如下

$db['test']['hostname'] = '127.0.0.1';
$db['test']['username'] = 'test';
$db['test']['password'] = 'test';
$db['test']['database'] = 'test';
$db['test']['dbdriver'] = 'mysqli';
$db['test']['dbprefix'] = '';
$db['test']['pconnect'] = FALSE;
$db['test']['db_debug'] = TRUE;
$db['test']['cache_on'] = FALSE;
$db['test']['cachedir'] = '';
$db['test']['char_set'] = 'utf8';
$db['test']['dbcollat'] = 'utf8_general_ci';
$db['test']['swap_pre'] = '';
$db['test']['autoinit'] = TRUE;
$db['test']['stricton'] = FALSE;

5). 相关软件版本

nginx mysql

2. 问题描述?

php不升级的情况下如何连接到mysql8.0.19数据库?

mysql 数据库 字符集 版本:8.0.19

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 17

无法连接到数据库有很多原因,比如地址不对,端口受限,PDO扩展没开,数据库扩展驱动没安装,这个需要具体调试,你可以手写一个php文件,pdo链接试一下

2个月前 评论
浮心 2个月前
随波逐流

贴异常

2个月前 评论
蜗牛啊蜗牛 (楼主) 2个月前
随波逐流 (作者) 2个月前

数据库服务是否启动,数据库账号白名单,数据库密码带特殊符号#

2个月前 评论
lufeijun1234

这贴发的,还不知丢给 AI

2个月前 评论
蜗牛啊蜗牛 (楼主) 2个月前
lufeijun1234 (作者) 2个月前

从报错来看应该是扩展对于 mysql8 往上的数据包解析不支持,这种情况推荐考虑使用数据库中间件解决

2个月前 评论

这种问题,网上应该有很多吧?随便搜的,参考一下
PHP与Mysql8不兼容问题汇总

2个月前 评论
唐章明

Mysql8修改了密码加密方式,老版本的php mysql扩展不支持,老版本的sqlyog之类的工具也不支持。

2个月前 评论

你的 mysqli 连接不上 MySQL8 ,可以试试下面百度AI给的答案

file

2个月前 评论
蜗牛啊蜗牛 (楼主) 2个月前

有么有尝试过 用mycat 做一层中转

2个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!