2012-05-30 3 views
7

बड़ी तालिकाओं वाले डेटाबेस तक पहुंचने का प्रयास कर रहा है (इस डेटाबेस में कम से कम 15 टेबल 1 मिलियन से कम नहीं, अधिकतम - 20 मिलियन)। एक बार जब मैं डेटाबेस का चयन करता हूं - phpMyAdmin कम से कम 5 मिनट (और अधिक) लोड हो रहा है।phpMyAdmin और बड़ी टेबल

मैं टेबल के साथ पृष्ठ का भार कैसे बढ़ा सकता हूं?

+0

आप टेबल छँटाई रहे हैं? क्या भंडारण इंजन का उपयोग कर रहे? –

+0

आप किसी भी indicies या प्राथमिक कुंजी है? मेरा अनुमान है धीमी गति से गिनती बयानों की एक टन है। – Corbin

+0

सभी के लिए InnoDB का उपयोग करना। मैं सिर्फ खुला रहा हूँ डेटाबेस होम पेज। पहला कदम - लॉगिन। दूसरा - डेटाबेस चुनें .... तीसरा इंतजार मिनट और मिनट ... – webbear

उत्तर

-3

phpMyAdmin ब्राउज़र आधारित वेबपृष्ठ उपकरण है। sqlyog जैसे डेटाबेस पर काम करने के लिए आप कुछ अन्य टूल क्यों नहीं आज़माते हैं।

+0

मेरे पास ऐसी सीमा है। मेरा आईएसपी 3306 यातायात को अस्वीकार कर रहा है। तो एकमात्र तरीका - वेब आधारित है। – webbear

+0

phpMyAdmin धीमा व्यवहार करेगा इस तरह के भारी भार के साथ क्योंकि जब आप संरचना को देखने के लिए अपने जीयूआई का उपयोग करते हैं या डेटा या टेबल ब्राउज़ करते हैं तो यह आपके अनुसार आवश्यकतानुसार mysql कंसोल पर अग्नि प्रश्न सूचीबद्ध करता है .. अन्यथा कंसोल का उपयोग सीधे करना है .. या आप sqlyog को जोड़ने का प्रयास कर सकते हैं पोर्ट के साथ आप mysql कंसोल का उपयोग कर रहे हैं, यदि आप phpMyAdmin के साथ कर सकते हैं तो यह स्क्लोगोग या किसी अन्य टूल द्वारा भी किया जा सकता है। – manurajhada

+0

मैं हम हूं आईएनजी [डीबीफोर्ज] (http: // www।devart.com/dbforge/mysql/studio/) लेकिन मेरे आईएसपी के साथ कोई संभावना नहीं है - ऐसे उत्पादों को सीधे 3306 पोर्ट के माध्यम से डेटाबेस से कनेक्ट करना। तो मैं wundering था अगर phpmyadmin के पास बड़ी टेबल जानकारी लोड करने की गति तेज करने के कुछ विकल्प हैं। – webbear

1

शायद हम इसे रुचि रखने वाले लोगों के साथ मिलकर शिकार कर सकते हैं?

SELECT 

`TABLE_CATALOG` 
,`TABLE_SCHEMA` 
,`TABLE_NAME` 
,`TABLE_TYPE` 
,`ENGINE` 
,`VERSION` 
,`ROW_FORMAT`  ------SLOW 
,`TABLE_ROWS`  ------SLOW 
,`AVG_ROW_LENGTH` ------SLOW 
,`DATA_LENGTH`  ------SLOW 
,`MAX_DATA_LENGTH` ------SLOW 
,`INDEX_LENGTH` ------SLOW 
,`DATA_FREE`  ------SLOW 
,`AUTO_INCREMENT` ------SLOW 
,`CREATE_TIME`  ------SLOW 
,`UPDATE_TIME`  ------SLOW 
,`CHECK_TIME`  ------SLOW 
,`TABLE_COLLATION` 
,`CHECKSUM`  ------SLOW 
,`CREATE_OPTIONS` 
,`TABLE_COMMENT` 

FROM `tables` WHERE 1 

इसके अलावा, नेविगेशन फ्रेम /navigation.php जो

/libraries/common.lib.php => PMA_getTableList() जो तब कॉल

/libraries/database_interface.lib.php => PMA_DBI_get_tables_full()

कहता है:

मैं पहुँचा जा करने के लिए intormation_schema.tables कि धीमी गति से कर रहे हैं में स्तंभों में चिह्नित

जिसमें धीमी क्वेरी में से एक है।

SELECT *, 
`TABLE_SCHEMA`  AS `Db`, 
`TABLE_NAME`   AS `Name`, 
`TABLE_TYPE`   ÀS `TABLE_TYPE`, 
`ENGINE`    AS `Engine`, 
`ENGINE`    AS `Type`, 
`VERSION`   AS `Version`, 
`ROW_FORMAT`   AS `Row_format`, 
`TABLE_ROWS`   AS `Rows`, 
`AVG_ROW_LENGTH`  AS `Avg_row_length`, 
`DATA_LENGTH`  AS `Data_length`, 
`MAX_DATA_LENGTH` AS `Max_data_length`, 
`INDEX_LENGTH`  AS `Index_length`, 
`DATA_FREE`   AS `Data_free`, 
`AUTO_INCREMENT`  AS `Auto_increment`, 
`CREATE_TIME`  AS `Create_time`, 
`UPDATE_TIME`  AS `Update_time`, 
`CHECK_TIME`   AS `Check_time`, 
`TABLE_COLLATION` AS `Collation`, 
`CHECKSUM`   AS `Checksum`, 
`CREATE_OPTIONS`  AS `Create_options`, 
`TABLE_COMMENT`  AS `Comment` 
इस के लिए

:

SELECT 
`TABLE_SCHEMA`  AS `Db`, 
`TABLE_NAME`   AS `Name`, 
`TABLE_TYPE`   AS `TABLE_TYPE`, 
`ENGINE`    AS `Engine`, 
`ENGINE`    AS `Type`, 
`VERSION`    AS `Version`, 
'Compact'    AS `Row_format`, 
0      AS `Rows`, 
0      AS `Avg_row_length`, 
0      AS `Data_length`, 
0      AS `Max_data_length`, 
0      AS `Index_length`, 
0      AS `Data_free`, 
0      AS `Auto_increment`, 
'2000-01-01 00:00:00' AS `Create_time`, 
NULL     AS `Update_time`, 
NULL     AS `Check_time`, 
`TABLE_COLLATION`  AS `Collation`, 
NULL     AS `Checksum`, 
`CREATE_OPTIONS`  AS `Create_options`, 
`TABLE_COMMENT`  AS `Comment` 

कौन सा क्वेरी तेजी से चलाने बनाया

मैं इस में धीमी गति का चयन करें कॉलम बदल दिया। (मुझे आमतौर पर उदाहरण के लिए पंक्ति गणना की आवश्यकता नहीं है .. और मैं उन्हें मैन्युअल रूप से भी प्राप्त कर सकता हूं। या 2 PhpMyAdmin इंस्टॉल करता है।)

नोट: ओवरराइड मान अब व्यवस्थापक पर डमी मान के रूप में दिखाई देना चाहिए पेज - लेकिन मैं उस धीमी गति के बजाय उस के साथ रह सकता था।

लेकिन अन्य धीमी क्वेरी अच्छी तरह से होनी चाहिए, क्योंकि यह अभी भी धीरे-धीरे लोड हो रही है।

तो, बस इसे साझा करना चाहता था, कोई इसके साथ आगे बढ़ सकता है। अभी, मेरे पास और समय नहीं है।

8

अपने phpMyAdmin स्थापना के भीतर अपने config.inc.php फ़ाइल के निचले भाग में इन पंक्तियों के पेस्ट करें:

//http://future500.nl/phpmyadmin-slow-on-startup/: 
$cfg['MaxExactCountViews'] = 0;//disable trying to count the number of rows in any view 
$cfg['MaxExactCount'] = 0;//disable correcting the InnoDB estimates 

धन्यवाद future500.nl करने के लिए!

मेरी इच्छा है कि मैंने अपने सभी डेटा को गलती से हटाए जाने से पहले, मुझे यह ठीक समय पहले मिलेगा। :-(

+6

यदि आप phpmyadmin के साथ एकाधिक सर्वरों की निगरानी कर रहे हैं, तो ध्यान दें कि यह वैश्विक चर है। मैंने $ सीएफजी ['सर्वर'] [$ i] ['MaxExactCountViews'] = 0 की कोशिश की; और यह काम नहीं कर सका। बाद में मैंने यह संकेत दिया कि मैं प्रति सर्वर इस मान को सेट नहीं कर सकता। उम्मीद है कि यह दूसरों की मदद करता है। – IvanD

+0

http://www.future500.nl/articles/2012/07/phpmyadmin-slow-on-startup/ – mathheadinclouds