当我从 php-fpm 运行以下代码时:
$connect = new PDO("dblib:host=mssql.dev.gm.local;dbname=GeoData","username","password");
try{
$s = $connect->query('[RU].GetTownInfo 4368');
var_dump($s->fetch());
}catch (Exception $e){
var_dump($e->getMessage());
}
我得到异常:
PDOExeption SQLSTATE[HY001] Unable to allocate sufficient memory
但是当我从 php 命令行运行相同的代码时,我没有遇到这样的问题。
可能是什么问题?
我使用 nginx proxy_pass 作为后端(php-fpm)。
要连接到 MS SQL Server,我使用 Dblib (freetds)。 OpenVZ、Nginx 和 Php-fpm 都在一台机器上工作,它们是不同的虚拟机。
命令行和上游的 Php-fpm 配置相同。
最佳答案
系统告诉你问题对吧?
PDOExeption SQLSTATE[HY001] Unable to allocate sufficient memory
因此您可以尝试通过更改 php.ini 中的限制来为 php 提供更多内存:
memory_limit = 128M
关于php - PDOExeption SQLSTATE[HY001] 无法分配足够的内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40720998/