Pular para o conteúdo

Laravel 5.4: erro ao rodar o comando migrate (Specified key was too long error) [Resolvido]

Dica publicada em PHP / Miscelânea
walmick walmick
Hits: 3.609 Categoria: PHP Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Laravel 5.4: erro ao rodar o comando migrate (Specified key was too long error) [Resolvido]

Na versão 5.4 do Laravel, foi alterado o character set padrão para utf8mb4, para suportar o armazenamento de emojis no banco de dados. Se você estiver rodando uma versão do MySQL anterior a 5.7.7 ou MariaDB anterior a 10.2.2, ao executar o comando migrate irá retornar o seguinte erro:

[Illuminate\Database\QueryException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table users add unique users_email_unique(email))
[PDOException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes
Para resolver esse erro você deverá configurar o default string length manualmente, acessando o arquivo App/Providers/AppServiceProvider.php e chamando o método Schema::defaultStringLength(191). O arquivo ficará assim:

use Illuminate\Support\Facades\Schema;

public function boot()
{
    Schema::defaultStringLength(191);
}
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

E porque 191 no tamanho padrão da String? Mais informações no link abaixo:
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
Nenhuma dica encontrada.

Use o Google PageSpeed Insights para verificar um site

Joomla 3.6.x - Resolvendo problema com instalação de extensões

Configurando date.timezone do PHP no Fedora 9

Projeto SER disponível

Instalando e usando php-gtk com apache e php5 no Slackware 12

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.