anúncios

sábado, 14 de dezembro de 2019

Desabilitar o case sensitive do MySQL no Linux

Se desenvolveu uma aplicação no ambiente de desenvolvimento com o SGBD MySQL em plataforma Windows, criou nome das tabelas e colunas do banco de dados em minúscula e na comunicação com a aplicação e banco de dados escreveu em maiúscula, a príncipio no Windows funcionou sem problemas, mas ao fazer o deploy no servidor de produção que é Linux, se deparou com erro, o nome da tabela não encontrou. O que ocorreu nesse caso, foi que no Windows o SGBD MySQL inclui o case sensitive habilitado por padrão e no Linux é case sensitive e obviamente o SGBD MySQL vem desabilitado o case sensitive , isto é, teste é diferente de TESTE.

E agora como resolver? Calma, esse é o objetivo desta postagem, explicar os procedimentos para desabilitar o case sensitive no SGBD MySQL em servidor Linux (Debian/Ubuntu/CentOS).

Segue os procedimentos:
  1. Parar o serviço do MySQL: $ sudo systemctl stop mysql
  2. Editar o arquivo de configuração do MySQL: $ sudo vim /etc/mysql/my.cnf
  3. Na seção [mysqld] adicione a linha lower_case_table_names=1
  4. Iniciar o serviço do MySQL: $ sudo systemctl start mysql
Feito!

2 comentários:

  1. No meu tá esse erro:

    Job for mysql.service failed because the control process exited with error code.
    See "systemctl status mysql.service" and "journalctl -xe" for details.

    ResponderExcluir