Estou trabalhando em um projeto em que preciso criar um banco de dados com 300 tabelas para cada usuário que deseja ver o aplicativo de demonstração. estava funcionando bem, mas hoje, quando eu estava testando com um novo usuário para ver uma demonstração, ele me mostrou essa mensagem de erro
1030 Got error 28 from storage engine
Depois de passar algum tempo pesquisando, descobri que é um erro relacionado ao espaço do banco de dados ou aos arquivos temporários. Eu tentei consertá-lo, mas falhei. agora nem consigo iniciar o mysql. Como posso corrigir isso e também gostaria de aumentar o tamanho para o máximo para não enfrentar o mesmo problema repetidamente.
/tmp
pasta é ter 100% de uso de espaço. Não há problema em excluir todos os arquivos dessa pasta / tmp? E outra pergunta: por que não é excluída automaticamente?Respostas:
Erro Mysql " 28 do mecanismo de armazenamento " - significa " espaço em disco insuficiente ".
Para mostrar o espaço em disco, use o comando abaixo.
Os resultados devem ser assim.
fonte
Para expandir isso (mesmo que seja uma pergunta mais antiga); Provavelmente não é sobre o próprio espaço MySQL, mas sobre o espaço em geral, assumindo arquivos tmp ou algo assim. Meu diretório de dados mysql não estava cheio, a partição / (root) estava
fonte
Eu tive o mesmo problema no AWS RDS. Isso ocorreu devido ao espaço disponível (espaço de armazenamento no disco rígido) estar cheio. Você precisa aumentar seu espaço ou remover alguns dados.
fonte
Meu / tmp foi% 100. Depois de remover todos os arquivos e reiniciar o mysql, tudo funcionou bem.
fonte
Minha pasta / var / log / apache2 tinha 35g e alguns logs em / var / log totalizaram os outros 5g do meu disco rígido de 40g. Limpei todos os logs * .gz e, depois de garantir que os outros logs não fizessem coisas ruins se eu mexesse com eles, também os limpei.
etc.
fonte
truncate
para limpar logs,truncate -s 0 access.log
Verifique seu / backup para ver se você pode excluir um backup antigo não necessário.
fonte
Eu tive um problema semelhante, devido aos meus logs binários de replicação .
Se for esse o caso, basta criar um cronjob para executar esta consulta todos os dias:
Isso removerá todos os logs binários com mais de 2 dias.
Encontrei esta solução aqui .
fonte
Um simples: $ sth-> finish (); Provavelmente evitaria que você se preocupasse com isso. O Mysql usa o espaço tmp do sistema em vez de seu próprio espaço.
fonte
e finalmente digite:
> mysql-slow.log
Isso funcionou para mim
fonte
Solte o banco de dados do problema e reinicie o serviço mysql (
sudo service mysql restart
, por exemplo).fonte