भंडारण इंजन से 1030 की त्रुटि 28


205

मैं एक ऐसी परियोजना पर काम कर रहा हूं, जहां मुझे प्रत्येक उपयोगकर्ता के लिए 300 टेबल के साथ एक डेटाबेस बनाने की आवश्यकता है जो डेमो एप्लिकेशन को देखना चाहता है। यह ठीक काम कर रहा था लेकिन आज जब मैं एक डेमो देखने के लिए एक नए उपयोगकर्ता के साथ परीक्षण कर रहा था तो उसने मुझे यह त्रुटि संदेश दिखाया

1030 Got error 28 from storage engine

कुछ समय गुजारने के बाद मैंने पाया कि यह एक त्रुटि है जो डेटाबेस या अस्थायी फ़ाइलों के स्थान से संबंधित है। मैंने इसे ठीक करने की कोशिश की लेकिन मैं असफल रहा। अब मैं भी mysql शुरू नहीं कर पा रहा हूँ। मैं इसे कैसे ठीक कर सकता हूं और मैं आकार को अधिकतम तक बढ़ाना चाहूंगा ताकि मुझे बार-बार एक ही मुद्दे का सामना न करना पड़े।


1
स्पष्ट बताते हुए ... क्या आपके पास उस विभाजन पर पर्याप्त खाली स्थान है जहाँ mysql डेटा संग्रहीत है? आप किस प्लेटफॉर्म पर चल रहे हैं? लोकलहोस्ट या एक होस्टिंग कंपनी?
DC14

@DCoder: - मेरे पास Amazon क्लाउड पर एक सर्वर है
ScoRpion

1
@Showket मेरे पास एक ही मुद्दा है, मेरे /tmpफ़ोल्डर में 100% स्थान है। इस / tmp फ़ोल्डर से केवल सभी फ़ाइलों को हटाना ठीक है? और एक और सवाल, यह अपने आप क्यों नहीं हटता?
डिमा डेपलोव

जवाबों:


412

मैसकल त्रुटि " भंडारण इंजन से 28 " - का अर्थ है " पर्याप्त डिस्क स्थान नहीं "।

नीचे डिस्क स्पेस उपयोग कमांड दिखाने के लिए।

myServer# df -h

परिणाम इस तरह होना चाहिए।

Filesystem    Size    Used   Avail Capacity  Mounted on
/dev/vdisk     13G     13G     46M   100%    /
devfs         1.0k    1.0k      0B   100%    /dev

6
अतिरिक्त जानकारी के लिए, आप एक ही त्रुटि प्राप्त करेंगे यदि / tmp फाइल सिस्टम उपयोग के 100% तक पहुंच जाए।
कुमार

1
यहां तक ​​कि अगर आपके पास एक अलग विभाजन (या डिस्क) में आपका मैसकल डेटा_डिअर है, जिसके पास मुफ्त स्थान है, तो आपके पास / और / tmp पर मुफ्त स्थान होना चाहिए (बेशक आप एक अलग विभाजन / डिस्क पर अंतिम हो सकते हैं)
डिएगो आंद्रेज डिआज़ एस्पिनोज़ा

1
आपने मेरा दिन बचाया, मुझे धीमी लॉग की 390 जीबी फाइल (
mulya

1
अच्छा उत्तर। इसने मेरा बहुत समय बचाया। +1
प्रतीक सोनी

34

इस पर विस्तार करने के लिए (भले ही यह एक पुराना सवाल है); यह संभवतः MySQL स्पेस के बारे में नहीं है, लेकिन सामान्य रूप से स्पेस के बारे में, tmp फ़ाइलों या इस तरह की किसी चीज़ के लिए। मेरा mysql डेटा dir भरा नहीं था, / (रूट) विभाजन था


10

AWS RDS में मेरा वही मुद्दा था। यह फ्रीवेबल स्पेस (हार्ड ड्राइव स्टोरेज स्पेस) फुल होने के कारण था। आपको अपना स्थान बढ़ाने, या कुछ डेटा निकालने की आवश्यकता है।


8

मेरा / tmp 100% था। सभी फ़ाइलों को हटाने और mysql को पुनरारंभ करने के बाद सब कुछ ठीक काम किया।


2

मेरा / var / log / apache2 फ़ोल्डर 35g था और मेरे 40g हार्ड ड्राइव के अन्य 5g होने के लिए कुछ लॉग / / var / log कुल थे। मैंने सभी * .gz लॉग्स को साफ़ कर दिया और यह सुनिश्चित करने के बाद कि अन्य लॉग्स बुरे काम करने जा रहे हैं अगर मैं उनके साथ गड़बड़ करता हूँ, तो मैंने उन्हें भी साफ़ कर दिया।

echo "clear" > access.log

आदि।


3
यह लॉग फ़ाइल को साफ़ करने का एक बहुत ही अजीब तरीका है न? सिर्फ rm ही क्यों?
user1175849

3
शायद तब आप फ़ाइल और अनुमतियां रख सकते हैं?
ज़ाचरी दहन २ '

9
मैं truncateस्पष्ट लॉग का उपयोग करने की सलाह देता हूं ,truncate -s 0 access.log

2

यह देखने के लिए अपने बैकअप की जांच करें कि क्या आप किसी पुराने आवश्यक बैकअप को हटा सकते हैं या नहीं।


1

मेरे प्रतिकृति बाइनरी लॉग के कारण मेरे पास एक समान मुद्दा था ।

यदि यह स्थिति है, तो हर दिन इस क्वेरी को चलाने के लिए एक क्रोनजॉब बनाएं:

PURGE BINARY LOGS BEFORE DATE_SUB( NOW(), INTERVAL 2 DAY );

यह 2 दिनों से पुराने सभी बाइनरी लॉग को हटा देगा।

मैं इस समाधान पाया यहाँ


0

एक सरल: $ sth-> खत्म (); शायद आपको इस बारे में चिंता करने से बचाएगा। मैसकल सिस्टम के tmp स्थान का उपयोग करता है बजाय इसके कि यह स्वयं का स्थान है।



हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.