The Question :
205 people think this question is useful
I am working on a project where i need to create a database with 300 tables for each user who wants to see the demo application. it was working fine but today when i was testing with a new user to see a demo it showed me this error message
1030 Got error 28 from storage engine
After spending some time googling i found it is an error that is related to space of database or temporary files. I tried to fix it but i failed. now i am not even able to start mysql. How can i fix this and i would also like to increase the size to maximum so that i won’t face the same issue again and again.
The Question Comments :
The Answer 1
414 people think this answer is useful
Mysql error “28 from storage engine” – means “not enough disk space“.
To show disc space use command below.
myServer# df -h
Results must be like this.
Filesystem Size Used Avail Capacity Mounted on
/dev/vdisk 13G 13G 46M 100% /
devfs 1.0k 1.0k 0B 100% /dev
The Answer 2
34 people think this answer is useful
To expand on this (even though it is an older question); It is not not about the MySQL space itself probably, but about space in general, assuming for tmp files or something like that.
My mysql data dir was not full, the / (root) partition was
The Answer 3
10 people think this answer is useful
I had the same issue in AWS RDS. It was due to the Freeable Space (Hard Drive Storage Space) was Full. You need to increase your space, or remove some data.
The Answer 4
9 people think this answer is useful
My /tmp was %100. After removing all files and restarting mysql everything worked fine.
The Answer 5
2 people think this answer is useful
My /var/log/apache2 folder was 35g and some logs in /var/log totaled to be the other 5g of my 40g hard drive. I cleared out all the *.gz logs and after making sure the other logs werent going to do bad things if I messed with them, i just cleared them too.
echo "clear" > access.log
etc.
The Answer 6
2 people think this answer is useful
Check your /backup to see if you can delete an older not needed backup.
The Answer 7
1 people think this answer is useful
I had a similar issue, because of my replication binary logs.
If this is the case, just create a cronjob to run this query every day:
PURGE BINARY LOGS BEFORE DATE_SUB( NOW(), INTERVAL 2 DAY );
This will remove all binary logs older than 2 days.
I found this solution here.
The Answer 8
0 people think this answer is useful
A simple:
$sth->finish();
Would probably save you from worrying about this. Mysql uses the system’s tmp space instead of it’s own space.
The Answer 9
0 people think this answer is useful
sudo su
cd /var/log/mysql
and lastly type: > mysql-slow.log
This worked for me
The Answer 10
0 people think this answer is useful
Drop the problem database, then reboot mysql service (sudo service mysql restart
, for example).