أقصى وقت التنفيذ في phpMyadmin
-
13-09-2019 - |
سؤال
عند محاولة تنفيذ (بعض) استفسارات بريس كنت تحصل على هذا الخطأ
خطأ فادح:أقصى وقت التنفيذ من 60 ثانية تجاوزت في C:\xampp\phpmyadmin\libraries\dbi\mysql.dbi.lib.php على خط 140
لأن لدي جدول كبير جدا (أكثر من 9 ملايين السجلات)
يجب تحرير الملف C:\xampp\php\php.ini
و تغيير قيمة "ماكس وقت التنفيذ" من 60 إلى 1000 ثم إعادة تشغيل PHP و لا تزال لديها نفس الخطأ.
أي الحل ؟
المحلول
لدي نفس الخطأ، يرجى الذهاب إلى
xampp phpmyadmin libraries config.default.php
ابحث عن : $cfg['ExecTimeLimit'] = 600;
يمكنك تغيير "600" إلى أي قيمة أعلى، مثل "6000".
الحد الأقصى لوقت التنفيذ في ثوان هو (0 دون أي حد).
هذا سيصلح الخطأ الخاص بك.
نصائح أخرى
للحصول على إصدار Xampp على Windows
يضيف هذا الخط إلى xampp phpmyadmin config.inc.php
$cfg['ExecTimeLimit'] = 6000;
والتغيير xampp php php.ini ل
post_max_size = 750M
upload_max_filesize = 750M
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1000M
والتغيير xampp mysql بن my.ini
max_allowed_packet = 200M
واجهت نفس المشكلة أثناء تنفيذ حليقة. حصلت عليه الصحيح عندما غيرت ما يلي في php.ini
ملف:
max_execution_time = 1000 ;
و أيضا
max_input_time = 1000 ;
ربما يجب حل مشكلتك عن طريق إجراء تغييرات فوق رقمين وإعادة تشغيل خادم Apache.
حتى بعد تغيير المشكلة، تستمر المشكلة وإذا كنت تعتقد أنه بسبب بعض عمليات قاعدة البيانات باستخدام MySQL، فيمكنك تجربة تغيير هذا أيضا:
mysql.connect_timeout = 1000 ; // this is not neccessary
يجب تغيير كل هذا في ملف PHP.INI، ويجب إعادة تشغيل Apache Server لمعرفة التغييرات.
يجب أن يعمل التغيير الخاص بك. ومع ذلك، هناك عدد قليل من ملفات تكوين PHP.INI مع كومة "xampp". حاول تحديد ما إذا كان هناك php.ini محددة "Apache" أم لا. موقع واحد محتمل هو:
ج: xampp apache bin php.ini
تغيير php.ini
لتطبيق الويب يتطلب إعادة تشغيل Apache.
يجب عليك التحقق من أن التغيير حدث عن طريق تشغيل البرنامج النصي PHP الذي ينفذ الوظيفة phpinfo()
. وبعد سيخبرك إخراج هذه الوظيفة بالكثير من معلمات PHP، بما في ذلك قيمة المهلة.
قد تكون قد غيرت أيضا نسخة من php.ini
هذا ليس هو نفس الملف المستخدم بواسطة Apache.
ini_set('max_execution_time', 0);
أو إنشاء اسم الملف يسمى php.ini
وأدخل السطر الأول max_execution_time=0
ثم احفظه ووضع الملف في المجلد الجذر الخاص بك من طلبك.
هذا هو. حظ سعيد.
في php.ini يجب عليك التحقق من mysql.connnect_timeout أيضا. هذا مسؤول عن إغلاق المقبس وإعادة القاتلة. لذلك، على سبيل المثال، تغييره إلى:
mysql.connect_timeout = 3600
سيتم حساب ذلك الوقت دائما في ثوان، لذلك في مثالي لديك ساعة واحدة.
probabily أنت تستخدم XMAPP كخدمة، لإعادة تشغيل XMAPP بشكل صحيح، يجب عليك فتح لوحة تحكم XMAPP Un-تحقق من كل من "SVC" MDodules ضد Apache و MySQL. ثم انقر فوق "الخروج"، الآن أعد تشغيل XMAPP وتمته.
اذهب إلى xampp/php/php.ini
ابحث عن هذا الخط:
max_execution_time=30
وتغيير قيمتها إلى أي رقم تريده. إعادة تشغيل أباتشي.
"صفر" للوقت غير المحدود.
C: Apache24 htdocs phpmyadmin libraries config.class.php
/**
* maximum execution time in seconds (0 for no limit)
*
* @global integer $cfg['ExecTimeLimit']
*/
$cfg['ExecTimeLimit'] = 0;
يمكنك أيضا استيراد الملف الكبير مباشرة من MySQL كاستعلام أو استعلام PHP.
500،000 صفوف فقط أخذني 18 ثانية للاستيراد على الخادم المحلي، باستخدام هذه الطريقة.
(إنشاء جدول أولا) - ثم:
LOAD DATA LOCAL INFILE 'Path_To_Your_File.csv'
INTO TABLE Your_Table_Name
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
حسنا للمستخدم WAMP،
اذهب إلى: wamp\apps\phpmyadmin3.3.9\libraries
تحت خط 536، locate $cfg['ExecTimeLimit'] = 0;
وتغيير القيمة من 0 إلى 6000. على سبيل المثال
$cfg['ExecTimeLimit'] = 0;
ل
$cfg['ExecTimeLimit'] = 6000;
أعد تشغيل خادم WAMP و PHEW.
إنه يعمل مثل السحر!
ما عملت بالنسبة لي على المزج تم تعديل الملف:\Wamp64\المستعار\بريس.conf, خطوط:
php_admin_value max_execution_time 600
php_admin_value max_input_time 600
لم يكن لديك لتغيير library file.