sql >> Base de Datos >  >> RDS >> Mysql

MySQL:configuración de sql_mode permanentemente

MySQL sql_mode "TRADITIONAL" , también conocido como "modo estricto", está definido por los documentos de MySQL como:

Aquí se explica cómo asegurarse de que su sql_mode esté configurado en "TRADITIONAL" .

Primero, comprueba tu configuración actual:

mysql
mysql> SELECT @@GLOBAL.sql_mode;
+-------------------+
| @@GLOBAL.sql_mode |
+-------------------+
|                   |
+-------------------+
1 row in set (0.00 sec)

Esto devolvió en blanco, el valor predeterminado, eso es malo:su sql_mode no está configurado en "TRADICIONAL".

Así que edite el archivo de configuración:

sudo vim /etc/mysql/my.cnf

Agregue esta línea en la sección etiquetada [mysqld] :sql_mode="TRADITIONAL" (como señaló fancyPants)

Luego reinicie el servidor:

sudo service mysql restart

Luego verifique de nuevo:

mysql
mysql> SELECT @@GLOBAL.sql_mode;
+------------------------------------------------------------------------------------------------------------------------------------------------------+
| @@GLOBAL.sql_mode                                                                                                                                    |
+------------------------------------------------------------------------------------------------------------------------------------------------------+
| STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

¡Éxito! Eres dorado ahora.