MySQL में, आप information_schema.tables को क्वेरी करके किसी दिए गए डेटाबेस (या सभी डेटाबेस पर) में सभी तालिकाओं के आकार की जांच कर सकते हैं टेबल। यह तालिका डेटाबेस में प्रत्येक तालिका के बारे में डेटा संग्रहीत करती है, जिसमें प्रत्येक तालिका के आकार, निर्माण तिथि, संयोजन, आदि के बारे में जानकारी शामिल है।
आप MySQL वर्कबेंच GUI का उपयोग करके डेटाबेस में प्रत्येक तालिका का आकार भी पा सकते हैं।
यह लेख प्रत्येक विधि का त्वरित अवलोकन प्रदान करता है।
कोड उदाहरण
यहां SQL क्वेरी का एक उदाहरण दिया गया है जो डेटाबेस में तालिकाओं का आकार देता है।
SELECT
table_name 'Table Name',
data_length + index_length 'Size in Bytes',
ROUND(((data_length + index_length) / 1024 / 1024), 2) 'Size in MiB'
FROM information_schema.tables
WHERE table_schema = 'sakila'
ORDER BY (data_length + index_length) DESC;
परिणाम:
+----------------------------+---------------+-------------+ | Table Name | Size in Bytes | Size in MiB | +----------------------------+---------------+-------------+ | rental | 2785280 | 2.66 | | payment | 2228224 | 2.13 | | inventory | 376832 | 0.36 | | film | 278528 | 0.27 | | film_actor | 278528 | 0.27 | | film_text | 196608 | 0.19 | | customer | 131072 | 0.13 | | address | 114688 | 0.11 | | staff | 98304 | 0.09 | | film_category | 81920 | 0.08 | | city | 65536 | 0.06 | | store | 49152 | 0.05 | | actor | 32768 | 0.03 | | country | 16384 | 0.02 | | language | 16384 | 0.02 | | category | 16384 | 0.02 | | staff_list | 0 | 0.00 | | customer_list | 0 | 0.00 | | nicer_but_slower_film_list | 0 | 0.00 | | actor_info | 0 | 0.00 | | sales_by_film_category | 0 | 0.00 | | film_list | 0 | 0.00 | | sales_by_store | 0 | 0.00 | +----------------------------+---------------+-------------+
यह sakila . में प्रत्येक तालिका का आकार लौटाता है डेटाबेस। sakila बदलें संबंधित डेटाबेस के नाम के साथ। बेशक, आप WHERE . को छोड़ सकते हैं खंड पूरी तरह से, और यह सभी डेटाबेस पर सभी तालिकाओं के तालिका आकार को वापस कर देगा, लेकिन यह एक लंबी सूची होगी।
इस मामले में, मैंने परिणामों को तालिका आकार के अनुसार अवरोही क्रम में क्रमबद्ध किया है। मैंने एक कॉलम भी जोड़ा है जिसका आकार MiB (Mebibytes) में बदला गया है।
आकार बदलने का एक अन्य तरीका sys.FORMAT_BYTES() . का उपयोग करना है समारोह।
sys.FORMAT_BYTES() फ़ंक्शन
आप sys.FORMAT_BYTES() . का उपयोग कर सकते हैं बाइट्स से आकार को या तो bytes . में बदलने के लिए कार्य करता है , KiB (किबिबाइट्स), MiB (मेबिबाइट्स), GiB (गीबिबाइट्स), TiB (टेबिबाइट्स), या PiB (पेबिबाइट्स), यूनिट इंडिकेटर के साथ मूल्य में जोड़ा गया। यूनिट्स इंडिकेटर अपने आप जुड़ जाता है। फ़ंक्शन यह तय करेगा कि मूल्य के आकार के आधार पर किस इकाई में कनवर्ट करना है, इसलिए आपके पास इस पर कोई नियंत्रण नहीं है कि किस इकाई का उपयोग करना है।
इस पद्धति का उपयोग करने का एक उदाहरण यहां दिया गया है:
SELECT
table_name 'Table Name',
data_length + index_length 'Size in Bytes',
sys.FORMAT_BYTES((data_length + index_length)) 'Size (Formatted)'
FROM information_schema.tables
WHERE table_schema = 'sakila'
ORDER BY (data_length + index_length) DESC;
परिणाम:
+----------------------------+---------------+------------------+ | Table Name | Size in Bytes | Size (Formatted) | +----------------------------+---------------+------------------+ | rental | 2785280 | 2.66 MiB | | payment | 2228224 | 2.12 MiB | | inventory | 376832 | 368.00 KiB | | film | 278528 | 272.00 KiB | | film_actor | 278528 | 272.00 KiB | | film_text | 196608 | 192.00 KiB | | customer | 131072 | 128.00 KiB | | address | 114688 | 112.00 KiB | | staff | 98304 | 96.00 KiB | | film_category | 81920 | 80.00 KiB | | city | 65536 | 64.00 KiB | | store | 49152 | 48.00 KiB | | actor | 32768 | 32.00 KiB | | category | 16384 | 16.00 KiB | | country | 16384 | 16.00 KiB | | language | 16384 | 16.00 KiB | | actor_info | 0 | 0 bytes | | customer_list | 0 | 0 bytes | | film_list | 0 | 0 bytes | | nicer_but_slower_film_list | 0 | 0 bytes | | sales_by_film_category | 0 | 0 bytes | | sales_by_store | 0 | 0 bytes | | staff_list | 0 | 0 bytes | +----------------------------+---------------+------------------+
MySQL कार्यक्षेत्र
यदि आप MySQL वर्कबेंच GUI का उपयोग कर रहे हैं, तो आप तालिका आकार पर अपना रास्ता इंगित और क्लिक कर सकते हैं। यहां बताया गया है:
Schemasमें डेटाबेस पर नेविगेट करें फलक- लागू डेटाबेस पर होवर करें
- डेटाबेस नाम के बगल में छोटी जानकारी आइकन पर क्लिक करें। यह डेटाबेस के बारे में जानकारी लोड करता है, जिसमें इसके अनुमानित आकार, तालिका गणना, मिलान आदि शामिल हैं।
Tablesपर क्लिक करें टैब। यह डेटा की लंबाई और इंडेक्स की लंबाई सहित डेटाबेस में प्रत्येक तालिका के बारे में जानकारी प्रदर्शित करता है।