web-dev-qa-db-fra.com

Impossible d'ouvrir la table mysql.plugin. S'il vous plaît lancer mysql_upgrade pour le créer

J'ai téléchargé mysql Zip à partir d'ici https://dev.mysql.com/downloads/file/?id=467269

Puis extrait, renommé my-default.ini en my.ini, définissez 

basedir = D:\Apps\MySQL\mysql-5.7.17-winx64
datadir = D:\Apps\MySQL\data5717

alors commencé 

mysqld --console

sous privilèges administrateur. Tout a été décrit ici: http://dev.mysql.com/doc/refman/5.7/en/windows-install-archive.html

Malheureusement, il imprime ce qui suit dans la console:

[ERREUR] Impossible d'ouvrir la table mysql.plugin. Veuillez lancer mysql_upgrade sur le créer.

et ne fonctionne pas.

7
Dims

Vous avez probablement mal compris/ignoré le point 4 de votre liste, Initialize MySQL. Cela signifie soit de copier un répertoire de données existant ou de créer un nouveau, voir Initialisation manuelle du répertoire de données avec mysqld .

Pour initialiser un nouveau répertoire de données, vous devez (après avoir défini votre fichier de configuration) simplement exécuter:

bin\mysqld --initialize

ou 

bin\mysqld --initialize-insecure

Ce dernier définira un mot de passe root vide.

19
Solarflare

Si vous définissez datadir sur un emplacement autre que basedir, comme nous, vous devez alors COPIER, et non pas déplacer, les bases de données basedir également . Apparemment, mysqld recherche certains de ses propres éléments au mauvais endroit. Après la copie, vous devez changer le propriétaire et le groupe de tout ce que vous avez copié dans mysql.

Sudo cp -R/usr/local/mysql/data/* /your/own/data/placeSudo chown -R mysql: mysql/your/own/data/place

En passant, vous ne pouvez pas simplement changer le basedir pour qu'il corresponde au nouveau datadir après la copie.

1
Kelly MacInnis