Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

मैं MySQL में प्रश्नों को अनुकूलित करने और ठीक करने में सहायता के लिए कैसे पूछूँ?

तालिका बनाएं का उपयोग करें

यह मुझे आपकी तालिकाओं के बारे में आपके शब्दों से कहीं अधिक बताता है:

mysql> show create table magic\G
*************************** 1. row ***************************
       Table: magic
Create Table: CREATE TABLE `magic` (
  `id` int(11) DEFAULT NULL,
  `what` varchar(255) DEFAULT NULL,
  `the` datetime DEFAULT NULL,
  `heck` text,
  `soup_is_good` double DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)

चेतावनी :यदि आपकी तालिका में 70 कॉलम हैं, तो अनावश्यक को छोड़ दें . क्या ज़रूरी है?

  • शामिल हुई फ़ील्ड
  • चयनित फ़ील्ड
  • वे फ़ील्ड जहां पर हैं

व्याख्या का उपयोग करें

यह मुझे यह देखने की अनुमति देता है कि आपके वर्तमान में काम कर रहे, फिर भी संभवतः धीमी क्वेरी को कैसे अनुकूलित किया जाए:

mysql> explain select *     from magic\G
*************************** 1. row ***************************
           id: 1
  select_type: SIMPLE
        table: magic
         type: ALL
possible_keys: NULL
          key: NULL
      key_len: NULL
          ref: NULL
         rows: 1
        Extra: 
1 row in set (0.00 sec)

\G का उपयोग करें

दाएं स्क्रॉल करना आम तौर पर है एक असुविधा।

सामान्य:

mysql> select * from magic;
+------------+-------------------------------+---------------------+-------------------+--------------+
| id         | what                          | the                 | heck              | soup_is_good |
+------------+-------------------------------+---------------------+-------------------+--------------+
| 1000000000 | A really long text string yay | 2009-07-29 22:28:17 | OOOH A TEXT FIELD |        100.5 | 
+------------+-------------------------------+---------------------+-------------------+--------------+
1 row in set (0.00 sec)

बेहतर:

mysql> select * from magic\G
*************************** 1. row ***************************
          id: 1000000000
        what: A really long text string yay
         the: 2009-07-29 22:28:17
        heck: OOOH A TEXT FIELD
soup_is_good: 100.5
1 row in set (0.00 sec)

चेतावनी: \G स्पष्ट रूप से डेटा की एक पंक्ति को कई में बदल देता है। यह डेटा की कई पंक्तियों के लिए समान रूप से बोझिल हो जाता है। वही करें जो सबसे अच्छा लगे।

अप्रिय रूप से बड़ी मात्रा में डेटा के लिए बाहरी पेस्टबिन का उपयोग करें:

अपनी अपेक्षाओं के बारे में हमें बताएं

  • धीमा? - हम नहीं जानते कि आपके लिए क्या धीमा है। सेकंड, मिनट, घंटे? यह जानने में मदद करता है।
  • तेज़ - यह भी हम नहीं जानते। आपके उपवास की क्या अपेक्षा है?
  • आवृत्ति - क्या यह एक ऐसा प्रश्न है जिसे आप केवल एक बार चलाने की योजना बना रहे हैं? दैनिक? दिन में सैकड़ों या हजारों बार? इससे हमें यह जानने में मदद मिलती है कि काफी अच्छा है ।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कैसे स्वचालित रूप से mysql या JDBC में तालिकाओं में विदेशी कुंजी संदर्भ सम्मिलित करने के लिए?

  2. MySQL टेक्स्ट बनाम बीएलओबी बनाम सीएलओबी

  3. MYSQL 8 घंटे टाइम आउट समस्या

  4. लार्वा धाराप्रवाह क्वेरी बिल्डर के साथ कई तालिकाओं में से चुनें

  5. डुप्लीकेट कुंजी अपडेट पर - एकाधिक कॉलम