:PDOExeption SQLSTATE [HY001]無法當我從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]無法分配足夠的存儲器
但是,當我從php命令行運行相同的代碼,我沒有這樣的問題。
可能是什麼問題?
我使用nginx proxy_pass後端(php-fpm)。
要連接到MS SQL Server我使用Dblib(freetds)。 所有與OpenVZ,Nginx和Php-fpm一起使用的機器都是不同的虛擬機器。
命令行和上游的Php-fpm配置相同。
該問題可能來自php-sql擴展。 檢查php-fpm.ini和php-cli.ini之間配置的差異 – twicejr
也許增加php的內存限制?函數ini_set( 'memory_limit的', ' - 1'); –
您也可以在運行腳本時監視服務器上的內存進程。也許你實際上用完了內存和交換。 – aynber