用PHP连接postgreSQL时遇到的问题
先说说我的环境的版本,apache是2.4的,postgreSQL为目前最新的16版本,php刚开始为7版本。
第一个问题是 PDO连接PostgreSQL报错,SCRAM authentication requires libpq version 10 or above in
这个问题是libpq的版本过低,要版本10以上,(至于libpq是什么,我目前也不懂)后来我检查了php版本发现是7.几的,下载最新的php8版本能解决这个问题
也有另一个解决方法是更改postgreSQL的一下两个文件的一些内容:在pg_hba.conf和postgresql.conf中搜索scram-sha-256,将其改为md5。但这个方法我试过不行,原因不明
第二个问题是函数未定义,下载php8后打开对应的postgreSQL拓展,但还是会报错,最后搜到园内的一个方法,就是将php8目录里的libpq.dll文件复制一份到apache2.4的bin目录里,重启apache之后就行了。这里指个路,原文说的更清楚些:https://www.cnblogs.com/caoqh/p/11542478.html
最后测试phpinfo(),pdo_pgsql跟pgsql都有了,而且能在pgsql那看到libpq的版本为11.4
关于libpq的解释:http://www.postgres.cn/docs/12/libpq.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律