Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Проблема с MySQL

00 голосов
5
При инсталляции на первом этапе, при создании БД выдает сообщение об ошибке : Fatal error: Maximum execution time of 30 seconds exceeded in /pub/home/alex42/htdocs/bitrix/modules/main/classes/general/database.php on line 207
Пытался посмотреть, но файл закодирован.
Таблицы в БД создаются но не все.
Спасибо smile:)
спросил 07 Ноя, 13 от Kurono (100 баллов)

5 Ответы

00 голосов
На вашем хостинге установлен лимит в 30 секунд на выполнение скриптов. Между тем создание и наполнение базы может на маломощной или сильно загруженной машине занять больше времени.

Мы увеличиваем в скрипте инсталяции ограничение на время выполнения до 3600 секунд (с большим запасом smile:)) PHP-коммандой set_time_limit. Очевидно на вашем хостинге она игнорируется.

Попробуйте спросить у вашего хостинг-провайдера о возможности обойти ограничение в 30 секунд или перенести ваш сайт на менее загруженную машину. Если хостер не даст приемлемого ответа, то для использования продукта вам придется сменить хостера.

В триальной версии все файлы, которые входят в ядро системы, закодированы Zend'ом. После регистрации продукта вы можете получить открытый код и использовать его в соответствии с лицензионным соглашением.
ответил 16 Дек, 13 от Orkus (240 баллов)
00 голосов
Провайдер предложил установить перед скриптом команду ini_set ("max_execution_time", 180) ... Могу я ее вписать перед кодом зенда в файле? Если да, то в каком это файле необходимо сделать?
ответил 30 Март, 14 от Kurono (100 баллов)
00 голосов
После первого шага установки (инсталляции системы): (создания конфигурационного файла соединения с базой данных)
В каталоге /bitrix/php_interface/
создается файл dbconn.php, приблизительно со следующим содержанием:
Код
<?
   umask(000);
   define("DBPersistent",true);
   $DBType = "mysql";
   $DBHost = "...";
   $DBLogin = "...";
   $DBPassword = "";
   $DBName = "...";
   $DBDebug = false;
   $DBDebugToFile = false;
?>


В этот файл вы можете вставить вызов функции для установки значения параметра конфигурации:
Код
ini_set ("max_execution_time", <значение>);
ответил 23 Июль, 14 от Kania (5,180 баллов)
00 голосов
Попробовал. Не помогло... MySQL у них видно перегруженный сильно. Попробовал еще вручную добавить install_data.sql после первого шага инсталляции. Все стало на места, но написало, что срок действия бесплатной демо версии истек.
Получается, что единственный выход - сменить хостинг-правайдера?
ответил 24 Ноя, 14 от Kurono (100 баллов)
00 голосов
Попробуйте добавить в файл index.php, находящийся в корне сайта, вызов функции для установки значения параметра конфигурации ini_set.

Файл index.php будет иметь вид:
<?
ini_set ("max_execution_time", <значение>);
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/install/install.php")
?>
ответил 20 Март, 15 от Kania (5,180 баллов)

Похожие вопросы

0 голосов
3 ответов
0 голосов
4 ответов
спросил 22 Сен, 13 от MaxKamm (120 баллов)
0 голосов
3 ответов
спросил 14 Март, 14 от Kania (5,180 баллов)
0 голосов
3 ответов
спросил 26 Фев, 14 от Waicon (280 баллов)
0 голосов
6 ответов
спросил 18 Окт, 13 от Medbratik (120 баллов)