我的php mysqli扩展程序有一个奇怪的问题。在我当地的LAMP安装上,一切正常。
在最终制作环境中测试我的网站后,我遇到了奇怪的错误。
这是我网站内部SQL日志文件的摘录:
[SUCCESS] SELECT * FROM `tbl1` ORDER BY `created` DESC LIMIT 20;
[ERROR] SELECT * FROM `tbl1` ORDER BY `created` DESC LIMIT 20;
(Table 'dbname.tbl1' doesn't exist)
[SUCCESS] SELECT * FROM `tbl1` ORDER BY `created` DESC LIMIT 20;
[SUCCESS] SELECT * FROM `tbl1` ORDER BY `created` DESC LIMIT 20;
出于测试目的,我在一个函数中执行了四次相同的查询。查询成功的四分之三。失败的查询返回错误:表'dbname.tbl1'不存在。
此问题始终显示在不同的表和不同的函数中。有时 tbl1 缺少,在点击F5 tbl2 之后似乎缺失...
我的服务器设置似乎有问题,因为查询始终在我的本地开发环境中工作,但在生产环境中只有 。
有谁知道什么可能导致这个问题?
编辑:我忘了提到:当切换到正常的 mysql php扩展时,一切正常。这似乎是 mysqli 的问题。
答案 0 :(得分:1)
我解决了这个问题。
我的mysql-proxy设置有问题。它有时会丢失与后端服务器的连接。这导致表未找到错误。
很抱歉打扰并感谢所有想要帮助的人!
度过愉快的一天。