Właśnie zainstalowałem MySQL 5.7 na maszynie wirtualnej z systemem Windows 2012. Próbuję utworzyć i uruchomić wiele instancji, ale jestem bardzo sfrustrowany, że tak prosta rzecz nie działa.
Zainstalowałem MySQL w C: \ Program Files \ MySQL \ MySQL Server 5.7, który jest domyślną lokalizacją, a następnie skopiowałem folder i zrobiłem kolejną jego kopię, aby utworzyć inną instancję (przypuszczam, że tak to działa?)
Oba wystąpienia MySQL pokazano na obrazku poniżej.
Ustawienia INI dla obu serwerów podano poniżej:
Serwer 1
server-id = 1
log-bin = "mysql-bin"
binlog-ignore-db = test
binlog-ignore-db = schemat_informacji
replicate-ignore-db = test
replicate-ignore-db = schemat_informacji
relay-log = "przekaźnik mysql -log "
auto-increment-increment = 2
auto-increment-offset = 1
Server2
server-id = 2
log-bin = "mysql-bin"
binlog-ignore-db = test
binlog-ignore-db = schemat_informacyjny
replicate-ignore-db = test
replicate-ignore-db =
schemat_informacyjny relay-log = "mysql- przekaźnik-log "
auto-increment-increment = 2
auto-increment-offset = 2
Korzystam z obu serwerów, otwierając wiersz polecenia i wpisując:
„C: \ Program Files \ MySQL \ MySQL Server 5.7 \ bin \ mysqld”
„C: \ Program Files \ MySQL \ MySQL Server 5.7 - 2 \ bin \ mysqld”
Wydaje się, że polecenie działa poprawnie, ponieważ nie jest wyświetlany żaden błąd, ale gdy patrzę na menedżera zadań, aby sprawdzić, czy są uruchomione jakieś procesy mysql, nie widzę żadnego.
Co ja robię źle?
źródło
Odpowiedzi:
Myślę, że próbowałeś uruchomić je na tym samym porcie.
Zmieniono numery portów tak, aby działały inaczej
źródło
Błąd, który popełniłem, polegał na skopiowaniu całego folderu instalacyjnego MySQL. Nie musisz kopiować tego folderu.
Oczywiście w każdym pliku ini musisz zdefiniować inny numer portu, jak wspomniano w @Anthony Fornito.
źródło
Utwórz nowy plik w katalogu danych o nazwie mysql-init.txt i dodaj pojedynczy wiersz, aby upewnić się, że ustawione jest hasło użytkownika root.
ALTER USER 'root'@'localhost' IDENTIFIED BY '[Enter Password]';
Edytuj plik my.ini, zmieniając nazwę portu, gniazda, datadir i nazwy pamięci współużytkowanej. Wszystkie muszą różnić się od innych instancji MySQL.
my.ini:
Z wiersza poleceń przejdź do ~ \ MySQL Server XY \ bin \ i uruchom
mysqld --install MySQL57-2 --defaults-file=E:\mysql2\data\my.ini --init-file=E:\mysql2\data\mysql-init.txt
Uruchom usługę
NET START MySQL57-2
Sprawdź, czy usługa została uruchomiona pomyślnie. Jeśli tak się nie stanie, możesz znaleźć dziennik błędów w folderze danych, w przeciwnym razie powinieneś iść.
źródło