autocommit de MYSQL

autocommit de MYSQL - SQL/NoSQL - Programmation

Marsh Posté le 19-09-2007 à 11:32:06    

Bonjour,  
 
J'ai installé Wamp6 qui contient :
  - Apache version 2.0.55
  - PHP version 5.1.2
  - MySQL version 5.0.18-nt
 
Au démarrage des services Apache et Mysql je voudrais mettre la variable "Autocommit" de mysql à 0. Par défaut elle est à 1.
Je suis passée par la console de Mysql et fait un "SET autocommit = 0", cela fonctionne mais dès que je ferme la console ou redémarre les services, l'autocommit se remet à 1.
 
J'ai un fichier my.ini qui contient la configuration de mysql.
J'ai éssayé de rajouter les commandes suivantes dedant et de redémarrer les services mais rien n'y fait :

Code :
  1. set autocommit = 0
  2. init-connect="SET AUTOCOMMIT=0"


 
Avez-vous une idée ?  
 
Merci

Reply

Marsh Posté le 19-09-2007 à 11:32:06   

Reply

Marsh Posté le 19-09-2007 à 11:44:55    

Reply

Marsh Posté le 19-09-2007 à 11:55:01    

Merci pour ta réponse
 
D'après ton lien j'ai rajouté cette commande dans le fichier my.ini
 
[mysqld]
init_connect='SET autocommit=0'
 
Le service Mysql démarre correctement mais quand je fais un "select @@autocommit;" dans la console Mysql, autocommit est toujours à 1.

Reply

Marsh Posté le 19-09-2007 à 11:56:27    

Bah... Ecrit à O'Reilly :D
 
Par contre, à propos de "mysqld", je crois (pas sûr) que sous Windows c'est un autre nom. T'as déjà cette section dans ton fichier ini ?
 
(PS : et tu ajoutes bien la ligne dans la section existante hein ? tu rajoutes pas ça à la barbare au milieu de ton fichier ?)


Message édité par MagicBuzz le 19-09-2007 à 11:57:40
Reply

Marsh Posté le 19-09-2007 à 12:08:08    

Pour "mysqld" en effet c'est plutot "wampmysqld"
 
Dans le fichier my.ini il n'y a que 2 sections [client] et [wampmysqld]
J'ai testé dans les 2 rien n'y fait.

Reply

Marsh Posté le 19-09-2007 à 12:10:30    

bah... essaie de chercher dans la doc officielle ce qu'ils disent à propos du paramètres init_connect
 
ps : t'es bien en innodb ? (parceque si t'es pas en innodb, logique que le paramètre soit ignoré, vu que ton tfs ne supportera pas les transactions de toute façon)


Message édité par MagicBuzz le 19-09-2007 à 12:10:51
Reply

Marsh Posté le 19-09-2007 à 12:13:48    

oui je suis bien en innodb

Reply

Marsh Posté le 19-09-2007 à 14:36:02    

D'après la doc sur internet, "init_connect n'est pas activée pour les utilisateurs ayant le droit de SUPER, afin de ne pas bloquer leur accès : ce sont les seuls qui pourront débloquer un script mal écrit! En cas d'échec de la commande init_connect (erreur de syntaxe), la connexion est refusée."
 
J'ai donc modifié les droits de l'utilisateur root pour qu'il ne soit plus en "ALL PRIVILEGES" et toujours impossible de modifier l'autocommit
 
Ce que je ne comprends pas c'est qu'en passant par la console si je fait la commande "SET autocommit = 0;" ça marche mis à part qu'il se réinitialise à lma fermeture de la console, mais quand je lance la commande à partir de phpmyadmin, il me dit que la requete s'est bien executée mais l'autocommit est toujours à 1

Reply

Marsh Posté le 19-09-2007 à 18:04:29    

Bon en fait ce que j'ai fait c'est que dans ma page php qui se connecte à la base mysql, je lance la requete SET AUTOCOMMIT = 0 juste après.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed