alena555
Новичок
Добрый день.
Вопрос человека далекого от php,но которому нужно разобраться. Ситуация такая:
средствами php запускается хранимая процедура с параметрами,в которой далее запускается тот или иной пакет DTS
пакет DTS заполняет dbf файл
далее этот файл уже средствами php зипует файл и дает его скачать.
Все отлично работало почти 4 года,пока объем данных значительно не вырос.Сейчас при попытке выполнения хранимой процедуры через где-то примерно 2 минуты страница отваливается,якобы с ошибкой.Но дтс пакет продолжает работать и заполнять dbf файл.Сам скл пакет отрабатывает примерно 5 минут.Он рабочий,все проверено,процедура тоже рабочая.
Время жизни сессии по умолчанию 1440секунд
уже увеличивала время в php.ini для mssql не помогло.Уже и не знаю гд копать,какое время надо увеличить,
чтоб все работало.Мож у ккого какие сысли возникнуть,прошу поделиться.
php.ini
[MSSQL]
; Allow or prevent persistent links.
mssql.allow_persistent = On
; Maximum number of persistent links. -1 means no limit.
mssql.max_persistent = -1
; Maximum number of links (persistent+non persistent). -1 means no limit.
mssql.max_links = -1
; Minimum error severity to display.
mssql.min_error_severity = 10
; Minimum message severity to display.
mssql.min_message_severity = 10
; Compatability mode with old versions of PHP 3.0.
mssql.compatability_mode = Off
; Connec timeout
;mssql.connect_timeout = 40
; Query timeout
;mssql.timeout = 600
; Valid range 0 - 2147483647. Default = 4096.
mssql.textlimit = 4096000
; Valid range 0 - 2147483647. Default = 4096.
mssql.textsize = 4096000
; Limits the number of records in each batch. 0 = all records in one batch.
;mssql.batchsize = 0
; Specify how datetime and datetim4 columns are returned
; On => Returns data converted to SQL server settings
; Off => Returns values as YYYY-MM-DD hh:mm:ss
;mssql.datetimeconvert = On
; Use NT authentication when connecting to the server
mssql.secure_connection = Off
; Specify max number of processes. Default = 25
;mssql.max_procs = 25
Вопрос человека далекого от php,но которому нужно разобраться. Ситуация такая:
средствами php запускается хранимая процедура с параметрами,в которой далее запускается тот или иной пакет DTS
пакет DTS заполняет dbf файл
далее этот файл уже средствами php зипует файл и дает его скачать.
Все отлично работало почти 4 года,пока объем данных значительно не вырос.Сейчас при попытке выполнения хранимой процедуры через где-то примерно 2 минуты страница отваливается,якобы с ошибкой.Но дтс пакет продолжает работать и заполнять dbf файл.Сам скл пакет отрабатывает примерно 5 минут.Он рабочий,все проверено,процедура тоже рабочая.
PHP:
if ($sql->query($qwr)) {//запуск процедуры
$zip_cmd='zip -j -m dts/'.$filename.' dts/'.$filename.'.dbf';
exec($zip_cmd);
header('Location: '.$load_path);
} else {die ('Ошибка выполнения пакета '.$qwr);} //вот эту ошибку и выводит
// else {die ('Error '.mssql_get_last_message());}// пробовала это ничего не возвращает,поскольку скл ошибки нет
уже увеличивала время в php.ini для mssql не помогло.Уже и не знаю гд копать,какое время надо увеличить,
чтоб все работало.Мож у ккого какие сысли возникнуть,прошу поделиться.
php.ini
[MSSQL]
; Allow or prevent persistent links.
mssql.allow_persistent = On
; Maximum number of persistent links. -1 means no limit.
mssql.max_persistent = -1
; Maximum number of links (persistent+non persistent). -1 means no limit.
mssql.max_links = -1
; Minimum error severity to display.
mssql.min_error_severity = 10
; Minimum message severity to display.
mssql.min_message_severity = 10
; Compatability mode with old versions of PHP 3.0.
mssql.compatability_mode = Off
; Connec timeout
;mssql.connect_timeout = 40
; Query timeout
;mssql.timeout = 600
; Valid range 0 - 2147483647. Default = 4096.
mssql.textlimit = 4096000
; Valid range 0 - 2147483647. Default = 4096.
mssql.textsize = 4096000
; Limits the number of records in each batch. 0 = all records in one batch.
;mssql.batchsize = 0
; Specify how datetime and datetim4 columns are returned
; On => Returns data converted to SQL server settings
; Off => Returns values as YYYY-MM-DD hh:mm:ss
;mssql.datetimeconvert = On
; Use NT authentication when connecting to the server
mssql.secure_connection = Off
; Specify max number of processes. Default = 25
;mssql.max_procs = 25