Comment activer le support inno-db sur MySql 5 installé au-dessus de MySql 4?

StackOverflow https://stackoverflow.com/questions/112010

  •  02-07-2019
  •  | 
  •  

Question

Comment activer le support inno-db sur une instance installée de MySql?

J'ai installé mysql-5.0.67-win32. 'InnoDB' est 'DÉSACTIVÉ' lors de l'exécution de 'show engine'. Selon la documentation, MySql est compilé avec le support de inno-db (De la doc: une valeur de DISABLED est générée soit parce que le serveur a été démarré avec une option qui désactive le moteur, soit parce que toutes les options requises pour l'activer n'ont pas été fournies.)

Dans my.ini, j'ai commenté la ligne avec 'skip-innodb'. Cela n'a pas aidé. Toutes les autres variables liées à inno-db restent inchangées.

J'ai effectué une action inhabituelle avant de connaître la situation décrite. J'ai installé mysql-4.0.17-win. Je l'ai désinstallé et après cela, j'ai installé mysql-5.0.67-win32. Dans l'assistant d'installation, j'ai choisi uniquement le support MyISAM (pour autant que je sache, j'ai désactivé le support d'inno-db de cette manière. Lorsque j'ai essayé de réinstaller avec le support d'inno-db, j'avais des problèmes pour utiliser ma précédente base de données 'mysql' avec les informations de compte). .

La documentation de MySQL indique que je devrais utiliser mysqldump pour exporter des données, puis pour importer des données exportées en cours de mise à niveau. J'ai essayé de le faire, mais lors de l'importation de données, j'ai obtenu un message d'erreur de syntaxe (je pense que cela est lié à certaines incompatibilités de la 4ème et 5ème version de mysql)

Était-ce utile?

La solution 6

J'ai résolu le problème.

En bref: Je n’étais pas en mesure de vider les bases de données sur MySql4 et de les restaurer sur MySql5 en raison d’étranges erreurs de syntaxe lors de l’importation de données.

Après l’installation, j’ai essayé de remplacer les anciennes bases de données MySql5, y compris la base de données 'mysql'. Cela fonctionne bien mais je n'ai pas pu activer le support inno-db. (De cette manière, j’ai même pu utiliser la fonction PASSWORD pour les anciens mots de passe (au lieu de OLD_PASSWORD))

La structure de la base de données 'mysql' étant modifiée dans la version 5, j'ai essayé d'installer MySql5 à nouveau et j'ai copié mes anciennes bases de données, à l'exception de celle 'mysql'. Après cela, j'ai mis à jour la base de données 'mysql' avec la version corrigée des données exportées de 'mysql'. De cette manière, j'ai obtenu le fonctionnement de MySQL 5.

Après tout, j'ai également exécuté
mysqlcheck --all-database --auto-repair
mettre à jour mes tables.

P.S. Merci aux auteurs de toutes les réponses qui me font penser à la manière correcte de résoudre le problème.

Autres conseils

Devrait être activé par défaut. Dans certaines situations, des autorisations incorrectes sur le dossier MySQL lib entraînent l’aboiement d’InnoDB. Vérifiez votre journal d’erreurs MySQL pour les erreurs d’autorisation.

J'ai les options innodb suivantes dans my.ini. C'est une configuration très minimale, donc n'utilisez pas ces valeurs si vous voulez que mysql ait de bonnes performances. Veuillez redémarrer mysql après un changement de my.ini.

#*** INNODB Specific options ***
innodb_data_home_dir="C:/mysqldata/"
#skip-innodb
innodb_additional_mem_pool_size=120M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=16M
innodb_buffer_pool_size=10M
innodb_log_file_size=2M
innodb_thread_concurrency=8

Peut-être que vous avez inno-db désactivé dans le fichier de configuration globale. Sous Linux, cela ressemblerait à /etc/mysql/my.cnf - peut-être que Windows a un fichier conf global similaire.

Assurez-vous de changer le fichier my.ini approprié. Sous Windows, cela est lu à partir de nombreux endroits. La commande est la suivante:

  1. WINDIR \ my.ini, WINDIR \ my.cnf
  2. C: \ my.ini, C: \ my.cnf
  3. INSTALLDIR \ my.ini, INSTALLDIR \ my.cnf
  4. defaults-extra-file

Tapez mysql --help dans l'invite de commande pour afficher la commande réelle sur votre ordinateur, par exemple:

.
  

Les options par défaut sont lues à partir de   fichiers suivants dans l'ordre donné:   C: \ my.ini C: \ my.cnf C: \ WINDOWS \ my.ini   C: \ WINDOWS \ my.cnf C: \ Program   Fichiers \ MySQL \ M ySQL Server 5.0 \ my.ini   C: \ Program Files \ MySQL \ Serveur MySQL   5.0 \ my.cnf

avez-vous vérifié les paramètres de démarrage? peut-être que le script shell ou le fichier de commandes que vous utilisez pour démarrer le serveur désactive le moteur sur la ligne de commande. Les indicateurs de ligne de commande IIRC remplacent les paramètres .ini.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top