web-dev-qa-db-fra.com

Comment trouver et désactiver le mode strict MySQL?

Bonjour tout le monde, je voulais trouver ce mode strict mysql et le désactiver mais je n’ai pas eu de progrès Je suis un novice tellement sry si je ne mentionne pas autre chose Quelqu'un peut-il m'aider? __. Je travaille sur WHM/Cpanel

7
Hamed Atae

Pour activer (ou activer) l'accès strict mysql à partir de cpanel.

1, recherchez 'phpmyadmin', dans le champ de recherche, cliquez dessus

2, une fois que phpmyadmin est chargé, cliquez sur l'onglet 'variables'

3, recherche 'mode SQL'

puis

activer le mode strict sur enter

STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION

pour désactiver le mode strict, entrez

NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Si vous avez le contrôle du script que vous utiliserez, il est judicieux de laisser le mode strict activé, il vous alertera de tous les bugs dans votre code avant qu'ils ne deviennent un problème en fin de ligne.

8
Coz

J'exécute actuellement un serveur Centos 6.9 avec MariaDB et une configuration multi-panneaux, de sorte que les clients ne pouvaient pas désactiver strict eux-mêmes sans erreur d'erreur. Voici comment vous le désactivez globalement:

Ouvrez SSH/Console et vérifiez le mode actuel:

# mysql -e "SELECT @@sql_mode;"

+----------------------------------------------------------------------+
| @@sql_mode                                                           |
+----------------------------------------------------------------------+
|STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, |
|NO_ENGINE_SUBSTITUTION                                                |
+----------------------------------------------------------------------+

Recherchez et modifiez le fichier "my.cnf"

vim /etc/my.cnf

Recherchez et modifiez ce qui suit ou ajoutez la ligne si elle n'est pas présente

Mode strict Activé :

sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Mode strict Désactivé :

sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Redémarrez le service MySQL

/etc/init.d/mysql restart

Vérifiez que le mode strict a été désactivé:

# mysql -e "SELECT @@sql_mode;"

+--------------------------------------------+
| @@sql_mode                                 |
+--------------------------------------------+
| NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+--------------------------------------------+

Terminé :)

5
Shane Dolim

Ouvrez le fichier my-default.ini et supprimez le paramètre STRICT_TRANS_TABLES de la valeur sql_mode.

[Ex: Dans localhost xampp le fichier se trouve à xampp/mysql/my-default.ini]

la valeur par défaut de sql_mode est la suivante 

sql_mode=STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

changez le en 

 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

Cela désactivera le mode strict dans MYSQL

0
Shirishkumar Bari

Tout d'abord, pour désactiver le mode strict MySQL, vous devez disposer d'un accès racine au serveur. Si vous ne l'avez pas, vous ne pouvez pas le faire. Si vous ne disposez que d'un accès cPanel, cela signifie que vous n'êtes pas l'administrateur de ce serveur ou que vous n'avez pas d'accès root.

Pour éditer votre fichier de configuration mysql my.cnf, vous devez accéder à votre serveur via SSH (avec un accès root ou un accès Sudo), éditer le fichier /etc/my.cnf et ajouter la ligne suivante s'il n'est pas présent:

[mysqld]

sql_mode = "TRADITIONAL, NO_AUTO_CREATE_USER"

Après avoir édité ce fichier, enregistrez-le et redémarrez le service mysql. Encore une fois, vous devez avoir un accès root complet pour votre serveur pour changer cela.

0
Kailash Aghera