Je viens d'installer MySQL 5.7 sur Windows 2012 VM. J'essaie de créer et d'exécuter plusieurs instances, mais très frustré qu'une chose aussi simple ne fonctionne pas.
J'ai installé MySQL dans C: \ Program Files \ MySQL \ MySQL Server 5.7 qui est l'emplacement par défaut, puis j'ai copié le dossier et en ai fait une autre copie pour créer une autre instance (je suppose que c'est comme ça que ça marche?)
Les deux instances MySQL sont illustrées dans l'image ci-dessous.
Les paramètres INI pour les deux serveurs sont indiqués ci-dessous:
Server1
server-id = 1
log-bin = "mysql-bin"
binlog-ignore-db = test
binlog-ignore-db = information_schema
replicate-ignore-db = test
replicate-ignore-db = information_schema
relay-log = "mysql-relay -log "
auto-increment-increment = 2
auto-increment-offset = 1
Server2
id-serveur = 2
log-bin = "mysql-bin"
binlog-ignore-db = test
binlog-ignore-db = information_schema
replicate-ignore-db = test
replicate-ignore-db = information_schema
relay-log = "mysql- relay-log "
auto-increment-increment = 2
auto-increment-offset = 2
J'exécute les deux serveurs en ouvrant l'invite de commande et en tapant ce qui suit:
"C: \ Program Files \ MySQL \ MySQL Server 5.7 \ bin \ mysqld"
"C: \ Program Files \ MySQL \ MySQL Server 5.7 - 2 \ bin \ mysqld"
La commande semble s'exécuter correctement car aucune erreur n'est affichée, mais lorsque je regarde le gestionnaire de tâches pour voir si des processus mysql sont en cours d'exécution, je n'en vois aucun.
Qu'est-ce que je fais mal?
la source
Réponses:
Je pense que vous essayez de les exécuter sur le même port.
Changé les numéros de ports pour être différent est ce qui l'a fait fonctionner
la source
L'erreur que je faisais était de copier tout le dossier d'installation de MySQL. Vous n'avez pas besoin de copier ce dossier.
Bien sûr, dans chaque fichier ini, vous devez définir un numéro de port différent comme mentionné par @Anthony Fornito.
la source
Créez un nouveau fichier dans le répertoire de données appelé mysql-init.txt et ajoutez une seule ligne pour vous assurer que le mot de passe de l'utilisateur root est défini.
ALTER USER 'root'@'localhost' IDENTIFIED BY '[Enter Password]';
Modifiez le fichier my.ini en modifiant le port, le socket, le datadir et le nom de base de la mémoire partagée. Tout cela doit être différent des autres instances de MySQL.
my.ini:
Depuis la ligne de commande, accédez à ~ \ MySQL Server XY \ bin \ et exécutez
mysqld --install MySQL57-2 --defaults-file=E:\mysql2\data\my.ini --init-file=E:\mysql2\data\mysql-init.txt
Démarrez le service
NET START MySQL57-2
Vérifiez que le service a démarré correctement. Si ce n'est pas le cas, vous pouvez trouver un journal des erreurs dans le dossier de données, sinon vous devriez être prêt à partir.
la source