alojamento web

Como desactivar o modo MySQL Strict

Com isto você desactiva o Modo MySQL Strict para sistemas CMS incompatíveis.

Alguns Conteúdo Sistemas de gestão como Typo, Contao, Contenido ou outros sistemas têm problemas com o MySQL 5.1 disponível no Modo Restrito. Esta tem sido a configuração padrão desde a versão 5.7.

Para que você possa CMS ainda há a possibilidade de desligar o modo estrito do lado do servidor. É claro que isto só é recomendado condicionalmente.

O que faz o modo Strict?

O modo estrito do MySQL/MariaDB controla como os valores inválidos ou ausentes são tratados nas consultas de modificação de dados, incluindo INSERT-, ATUALIZAÇÃO- e declarações CREATE.

Inválido ou ausente Dados levam a avisos ou erros quando a consulta SQL é executada. Se o modo Scrict estiver desligado, as consultas inválidas ou os valores em falta são ajustados e é emitido um simples aviso. Isto pode levar a resultados inesperados.

Um exemplo seria um limite de caracteres. Se o modo Strict for desligado, o excesso de caracteres será cortado para que ele se ajuste.

Porque é que isto só ocorre com alguns sistemas CMS?

Só se pode especular. Provavelmente o código é tão extenso que ninguém o consegue descobrir. Em um sistema de gerenciamento de conteúdo muitas pessoas trabalham, às vezes trazem Funções uma que não será vista durante anos. Desde que não haja problemas sérios, não é assim tão mau.

Com um sistema como o whmcs, que também é afetado, a situação é bem diferente. Se dados importantes forem truncados, ocorrerão atribuições incorretas. Isto pode ser problemático no caso de um acordo.

Onde podem ser aplicadas estas instruções?

As instruções referem-se a Linux sistemas com MySQL 5.6/5.7 ou MariaDB 10.1 e mais alto onde o Modo Estrito está activo.

Raiz O acesso é necessário para fazer as alterações. Nosso Instruções referir-se sempre a Centos Linux. Com outras distribuições, os arquivos de configuração podem ser localizados em outros diretórios.

Passo 1: Criar backups

Ao editar arquivos, você deve sempre usar um Cópia de segurança ...para fazer. Você pode apagar algo involuntariamente muito rapidamente.

cp -a /etc/my.cnf{,.strict.bak}

O comando cria um ficheiro my.cnf.strict.bak a partir do my.cnf no mesmo directório.

Passo 2: Desactivar o modo MySQL Strict

O arquivo normalmente não contém sql_mode=... então a seguinte linha deve ser adicionada à seção [mysqld] :

sql_mode=""".

Passo 3: Reinicie o serviço MySQL

Após a edição do arquivo, o serviço deve ser reiniciado para aplicar as alterações.

systemctl restart mariadb

Após o reinício do serviço, você pode verificar a configuração executando o seguinte comando. Aqui como exemplo com a senha em um Servidor Plesk. Alternativamente com a raiz e a senha.

mysql -uadmin -p`cat /etc/psa/.psa.shadow` -e "SELECT @@sql_mode;"

O seguinte retorno deve então aparecer:

+————+

| @@sql_mode |

+————+

| |

+————+

Por favor divida a contribuição
Partilhar no facebook
Partilhar no twitter
Partilhar no linkedin
Partilhar no pinterest
Partilhar no whatsapp
Partilhar no telegram
Últimos posts

Vídeos recomendados do nosso Canal Youtube