SPIP ecureuil




Thème de ce forum :

comment résoudre le problème de l’étape 4 "échec à la création des tables"



Serge
comment résoudre le problème de l’étape 4 "échec à la création des tables"
22 septembre 2007 12:42

Bonjour à toutes et à tous,

je viens d’installer spip v 1.9.2 sur mon serveur perso chez moi, équipé de :
- apache 2.2-4
- php 5.2.4
- mysql 5.0

Tout marche bien jusqu’à l’étape 4, qui plante en me disant "Création des tables de la base l’opération a échoué" alors que les tables sont bien crées. J’ai eu beau googéliser le problème, j’ai rarement vu une réponse aussi cachée... Alors je me permets de la remettre en évidence, en espérant que les administrateurs du site l’intègrent dans une FAQ. En tout cas, je ne l’ai pas vue sur ce forum :-(

Le pb est que MySQL5 est très restrictif sur les champs ’Not Null’. Le pb est que spip crée une table avec des champs qui sont déclarés ’not null’ mais qui le sont à la création !!! Ce que Mysql5 ne laisse pas passer. Une manière de résoudre est d’éditer le fichier my.ini, et de faire les changements suivants :

# Set the SQL mode to strict # mettre un # pour SPIP #sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" # rajouter pour spip :

sql-mode="MYSQL40"

Puis de relancer le service... Et là, ça marche. Mais je n’aime pas du tout cette manière de résoudre le pb.. Merci !

Rechercher dans les forums:
 

wafoo
24 septembre 2007 03:20
comment résoudre le problème de l’étape 4 "échec à la création des tables"

Merci Serge pour cette astuce pour installer spip, car moi-même j’étais bloqué dans la même situation. Peut-être qu’après l’installation on peut revenir à la config sql par défaut, je ne sais pas encore.

Si des administrateurs spip pouvaient répondre à ta question, et régler définitivement le problème, on vous serait tous reconnaissant.

wafoo
24 septembre 2007 04:25
comment résoudre le problème de l’étape 4 "échec à la création des tables"

En fait, il faut télécharger et installer plutôt la version 1.9.2c qui corrige des bugs avec MySql5...

fwoehl
26 septembre 2007 23:01
comment résoudre le problème de l’étape 4 "échec à la création des tables"

Le workaround cité est necessaire meme avec SPIP 1.9.2c si vous avez mySQl 5.X...

donc : my.ini # Set the SQL mode to strict # sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" sql-mode="MYSQL40"

FRED

Salva
1er octobre 2007 02:10
comment résoudre le problème de l’étape 4 "échec à la création des tables"

comment faire si l’on ne peut pas accéder à ce fichier my.ini. Mon hébergeur a bien voulu le modifier temporairement pour voir si cela fonctionnait, en effet l’installation à pu se faire. Mais il n’est pas d’accord de le laisser ainsi. Par conséquent , j’ai à présent une version 1.9.2c installée (les tables sont donc créées) mais je ne peut plus créer de nouvel article, auteur, etc. Que dois-je changer dans les tables existantes pour que cela fonctionne ? Merci Salva

Pierre
2 octobre 2007 15:16
comment résoudre le problème de l’étape 4 "échec à la création des tables"

Bonjour,

Mon site hébergé (Linux, Apache) va passer en PHP5 et MySQL5. Par anticipation, et pour préparer la migration, je suis passé sur mon PC (Windows XP, IIS) aux mêmes éléments, et donc à SPIP 1.9.2c

Mêmes symptômes que les autres messages postés, même correction, mais même interrogation : c’est certainement l’hébergeur qui gère mysql.ini

Comment s’en sortir proprement ?

Salva
2 octobre 2007 18:03
comment résoudre le problème de l’étape 4 "échec à la création des tables"

Bon après moultes recherches et réflexions. Comme rien ne semble encore complétement résolu du coté du développement voici la solution que j’ai trouvé et qui a l’air de fonctionner :
- installé spip et les squelettes sur hébergement avec Mysql4
- export de la DB depuis PHPmyadmin
- lancement de spip_loader sur le nouvel hébergement avec MySql5 = installation s’arrête à la création des table mais les fichiers sont téléchargés
- importation des tables dans la nouvelle DB avec MS5
- modif du fichier \ecrire\base\db_mysql.php ligne 225 à commenter afin que le mode d’écriture contourne les nouvelles sécutité de mysql5 qui empêche la création de record si incohérence dans les champs NOT NULL dans lesquels aucune données n’est rentrée :

// if (defined('_MYSQL_SQL_MODE_TEXT_NOT_NULL'))

mysql_query("set sql_mode=");

Apparemment cette erreur est prévue mais impossible de trouver l’endroit ou la variable _MYSQL_SQL_MODE_TEXT_NOT_NULL est définie donc décidé de commenter la condition if

- copié manuellement le fichier : \befl\config\connect.php

<?php if (!defined("_ECRIRE_INC_VERSION")) return; $GLOBALS['spip_connect_version'] = 0.4; spip_connect_db('localhost',,'{username}','{passw}','{db_name}'); ?>

Ensuite j’ai pu me loguer dans l’interface privée et l’utiliser sans pb pour le moment.

bonne chance !!
Salva

Prélude
27 décembre 2007 22:53
comment résoudre le problème de l’étape 4 "échec à la création des tables"

Je comptais installer SPIP sur mon serveur (je l’utilise déjà sur 2 sites, mais sur des serveurs mutualisés).
Pourquoi ne pas prendre en compte ce problème "grâve" ?! Pourquoi laisser ce genre d’erreur traîner ?! Alors qu’il serait si simple de corriger ?!
Est-ce volontaire ? Est-ce que les développeurs comptent faire leur boulot ?!
En attendant, je suis obligé de voir d’autres système de publication, j’en suis bien dégoûté.
Et je ne peux plus proposer SPIP à mes clients.

stefano
1er janvier 2008 11:36
comment résoudre le problème de l’étape 4 "échec à la création des tables"

salut, je suis italien et je suis en train d’essaier spip. et j’ai le meme pb. les tables sont cre’es mais ne passe pas a’ la 5’ e’tape. dans la reponse donne’ je n’ai pas trouver le fichier \befl\config\connect.php je n’ai pas \befl\. merci et bon annee

salva
1er janvier 2008 12:11
comment résoudre le problème de l’étape 4 "échec à la création des tables"

Bonjour et bonne année ! C’est normal de ne pas avoir le dossier befl, en fait c’est MON dossier personnel dans lequel j’ai installé SPIP donc il faut aller dans le dossier "config" de ton installation.

Attention pour :

<?php if (!defined("_ECRIRE_INC_VERSION")) return; $GLOBALS['spip_connect_version'] = 0.4; spip_connect_db('localhost',,'{username}','{passw}','{db_name}'); ?>

Il faut bien entendu remplacer "username" et "passw" pour ceux définis par vous lors de l’installation

Belle première journée 2008 !
S :

stefano
2 janvier 2008 10:50
comment résoudre le problème de l’étape 4 "échec à la création des tables"

merci beaucoup da ta vitesse !! maintenant j’ai fait comme tu dis et puis j’ai cre’e un ecrivain sur la base des donnees, mais je ne sais comme fait le divener administrator. est-ce que vous me puovez ecrire la ligne de la base de donness avec le information de votre access ? (sans le mot de passe :) ) je la utilizerais pour creer un ecrivain par moi parce que l’istallation ne fait moi pas permetre. merci

Stanislas
2 janvier 2008 17:10
comment résoudre le problème de l’étape 4 "échec à la création des tables"

Tu peux tester SPIP ici : http ://demo.spip.org/spip.php?article35

Salva
3 janvier 2008 03:35
comment résoudre le problème de l’étape 4 "échec à la création des tables"

Est-ce que c’est ok Stefano ?

5 janvier 2008 22:05
comment résoudre le problème de l’étape 4 "échec à la création des tables"

salut. ok je connais le demo, merci. je voulais savoir si vous pouvez lire la ligne de votre amministrator sur la base de donnes dan la table paip_author. merci

stefano
6 janvier 2008 17:12
comment résoudre le problème de l’étape 4 "échec à la création des tables"

l’author de le dernier message etais moi. Maintenant j’ai un problem avec l’aggiornamento . je fais l’authentication ftp (mais je suis en locale avec spip) et puis ne fait plus rien, ou je peux trouver pour la procedure ? merci. estce qu’il peut faire manuelment ?

Salva
7 janvier 2008 13:22
comment résoudre le problème de l’étape 4 "échec à la création des tables"

Ta question n’est pas très claire. que veux-tu faire exactement mis à jour du site en local ?? S :

RSS






squelette