Cómo deshabilitar el “Modo estricto” de MySQL 5 en un VPS o servidor dedicado de Ubuntu 18.04 | Hosting mas barato

El modo estricto es responsable de controlar cómo se manejan los valores perdidos al crear o actualizar nuevos registros en una base de datos MySQL.
El modo estricto está habilitado de forma predeterminada en MySQL, y este comportamiento genera advertencias molestas cuando un usuario intenta guardar registros que tienen valores vacíos en algunos campos. A veces, los registros no se guardan / actualizan en absoluto y esto puede afectar el funcionamiento normal de un sitio web o una aplicación web.
La desactivación del modo MySQL estricto permite que las consultas se ejecuten con valores faltantes o no válidos, y en la mayoría de los casos es el comportamiento preferido de la mayoría de administradores de bases de datos. A veces, deshabilitar el modo MySQL estricto puede provocar un comportamiento inesperado, como:
Sin embargo, si está ejecutando varias aplicaciones de software, es necesario deshabilitar el modo estricto de MySQL. De lo contrario, cualquier comando de pegado dará como resultado un error como: “Campo ‘
En esta guía cubrimos los pasos para deshabilitar el MySQL predeterminado ‘STRICT_TRANS_TABLES’
Comportamiento.
Nota especial: consulte la página Best Linux Hosting Services o Best VPS Hosting de Hosting Más Barato para encontrar los mejores proveedores de alojamiento web en estas categorías.
Primero debemos determinar si el modo estricto está habilitado en el servidor MySQL. Para verificar esto, ingrese el siguiente comando en un servidor de terminal:
$ sudo mysql -u root -p
Ingrese la contraseña raíz de su base de datos MySQL y presione Ingresar.
Luego, debe ejecutar la siguiente consulta en el indicador de MySQl:
$ SHOW VARIABLES LIKE 'sql_mode';
Aparecerá una tabla en la pantalla con algunos valores sql_mode separados por comas como se muestra a continuación. Cuando encuentras un valor como “STRICT_TRANS_TABLES”
, entonces se activa el modo estricto de MySQL.
Utilice un editor nano para crear un nuevo archivo de configuración en el /etc/mysql/conf.d/ Directorio. El nuevo archivo de configuración sobrescribe el archivo de configuración predeterminado de MySQL.
Utilice el siguiente comando:
$ sudo nano /etc/mysql/conf.d/disable_strict_mode.cnf
Luego ingrese el siguiente texto en el editor de texto:
[mysqld] sql_mode=IGNORE_SPACE,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
prensa CTRL + X y sí para guardar los cambios.
Siempre que realice cambios en un directorio de configuración de MySQL, debe reiniciar el servicio MySQL con el siguiente comando para que los cambios surtan efecto:
$ sudo service mysql restart
Inicie sesión en su servidor MySQL nuevamente con el siguiente comando:
$ sudo mysql -u root -p
Ingrese su contraseña de root y presione Ingresar.
Ejecute la siguiente consulta nuevamente en el indicador de MySQl:
$ SHOW VARIABLES LIKE 'sql_mode';
Como puede ver en la captura de pantalla a continuación, el valor es ‘STRICT_TRANS_TABLES’
en la lista de valores sql_mode y esto significa que se ha desactivado con éxito.
Este es el procedimiento básico para deshabilitar el modo MySQL estricto en su servidor Ubuntu 18.04. Recuerde, es recomendable apagar el modo solo cuando tenga una aplicación que requiera el cambio. Esto se aplica a las aplicaciones que almacenan valores en una base de datos para columnas que toman valores vacíos sin valores predeterminados definidos.
Un caso común es uno ‘Dirección 2 ‘ Campo que está presente en la mayoría de los formularios de registro, pero que puede no ser obligatorio. Esperamos que esta guía le ayude a solucionar sus errores de MySQL.