Lokalizacja MySQL my.ini

91

Widziałem już http://dev.mysql.com/doc/refman/4.1/en/mysql-config-wizard-file-location.html

jak poznać lokalizację mysql my.cnf

i

http://dev.mysql.com/doc/refman/5.1/en/option-files.html

Ale wciąż jestem skazany na odwieczne pytanie! „Where is my.ini” Używam systemu Windows Server 2008 z mysql 5.5.28. Zainstalowałem usługę za pomocą mysqld --install i mogę korzystać z serwera mysql za pomocą sqlyog. Ale niestety nie jestem w stanie znaleźć my.ini w installation directorylub nie w c:\ani w, c:\windowsani w data_dirzapytaniu również show variables like "mysql_home"nic nie zwróciło.

Jakieś sugestie?

Sok roślinny
źródło
6
W MySQL 5.6 dane i my.inisą przechowywane (w moim przypadku przynajmniej)C:\ProgramData\MySQL\MySQL 5.6
Acute

Odpowiedzi:

34

Musisz zajrzeć do folderu, C:\Program Files\MySQL\MySQL Server 5.5ale jest problem. Podczas instalacji MySQL za pomocą MSI plik my.ini nie jest tworzony. W tym folderze będą przykładowe pliki .ini. Aby skorzystać z jednego z nich, powiedzmy my-medium.ini, musisz wykonać następujące czynności przed ponownym uruchomieniem MySQL:

cd C:\Program Files\MySQL\MySQL Server 5.5
copy my-medium.ini my.ini
net stop mysql
net start mysql

Kiedyś to zrobisz, my.inibędzie można przeczytać C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe.

RolandoMySQLDBA
źródło
1
więc z tego, co mówisz… Mój serwer nie używa żadnego my.ini, prawda? Wygląda na to, że tak jest, ponieważ właśnie zmieniłem nazwę wszystkich plików my- [rozmiar] .ini i mysql nadal działa poprawnie !!!
Sap
44
Jeśli używasz instalatora MSI, tworzy on my.ini w% PROGRAMDATA% \ MySQL \ MySQL Server XY \ i używa go. Więc to rozwiązanie nie będzie z nim działać.
NurShomik,
4
Aby uruchomić usługę MySQL z my.iniutworzonego pliku, trzeba zatrzymać bieżącą obsługę pierwszy net stop mysql, a następnie usunąć go: sc remove mysql. Następnie musisz zainstalować nową usługę: "C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe" --install newMySQL --defaults-file="C:\Program Files\MySQL\MySQL Server 5.7\my.ini" Teraz możesz uruchomić usługę za pomocą net start newmysqlpolecenia.
NurShomik
2
Chcę tylko poprawić komentarz, powinno to być „sc delete”, a nie „sc remove” w
systemie
6
W przypadku MySQL 5.7 w systemie Windows lokalizacja my.ini może znajdować się w „C: \ ProgramData \ MySQL \ MySQL Server 5.7 \ my.ini”
Mohsin Saeed
178

my.ini LOKALIZACJA W SYSTEMIE WINDOWS MYSQL 5.6 MSI (ZA POMOCĄ KREATORA INSTALACJI)

Otwórz powłokę poleceń systemu Windows i wpisz: echo %PROGRAMDATA%. W systemie Windows Vista powoduje to: C:\ProgramData.

Według http://dev.mysql.com/doc/refman/5.6/en/option-files.html , pierwsza lokalizacja, w której znajdzie się MySQL, to %PROGRAMDATA%\MySQL\MySQL Server 5.6\my.ini. W powłoce systemu Windows, jeśli to zrobisz ls "%PROGRAMDATA%\MySQL\MySQL Server 5.6\my.ini", zobaczysz, że plik tam jest.

W przeciwieństwie do większości sugestii, które można znaleźć w Stackoverflow i w Internecie, umieszczenie pliku C:\Program Files\MySQL\MySQL Server 5.6\my.iniNIE BĘDZIE DZIAŁAŁO. Ani jedno, ani drugie C:\Program Files (x86)\MySQL\MySQL Server 5.1. Powód podany w linku MySQL zamieszczonym powyżej:

W systemie Windows programy MySQL odczytują opcje uruchamiania z następujących plików w określonej kolejności (pierwsze pozycje są używane w pierwszej kolejności).

5,6 MSI Instalator ma tworzyć my.ini w najwyższym miejscu priorytetu, czyli nie inny plik zostanie kiedykolwiek znaleziono / używany, z wyjątkiem jednego utworzonego przez instalatora.

Rozwiązanie przyjęte powyżej nie będzie działać w przypadku instalacji opartych na MSI 5.6.

amatorski barista
źródło
3
Tak, mój był w środku %PROGRAMDATA%\MySQL\MySQL Server 5.6. Wolałbym jednak, żeby był w plikach programu ...
jurchiks
@ amateur-barista, czy wiesz, jak sprawić, by instalator używał pliku my.ini w Program Files zamiast tego w ProgramData? Poza tym, jak sprawić, aby MySQL Workbench używał tego, który udostępniam, zamiast tego utworzonego przez instalator?
NurShomik,
Całe zdanie brzmi: „W systemie Windows programy MySQL odczytują opcje uruchamiania z następujących plików w określonej kolejności (pierwsze pliki są odczytywane jako pierwsze, późniejsze pliki mają pierwszeństwo)”. Nie rozumiem, dlaczego jest to lokalizacja o najwyższym priorytecie?
StackExploded
Dlaczego więc do cholery nawet Środowisko pracy MySQL sugeruje w wielu miejscach, że używany jest ten z katalogu instalacyjnego? I dlaczego nie jest to wspomniane w dokumentach MySQL (link z my-default.ini). Jestem bardzo sfrustrowany :-(
Josef Sábl
96
  1. Wpisz „services.msc” w polu wyszukiwania w menu Start.
  2. Znajdź usługę MySQL w kolumnie Nazwa, na przykład MySQL56.
  3. Kliknij prawym przyciskiem myszy usługę MySQL i wybierz menu Właściwości.
  4. Poszukaj „Ścieżka do pliku wykonywalnego” na karcie Ogólne, a tam znajduje się Twój plik .ini, na przykład „C: \ Program Files (x86) \ MySQL \ MySQL Server 5.6 \ bin \ mysqld.exe” --defaults-file = „C: \ ProgramData \ MySQL \ MySQL Server 5.6 \ my.ini” MYSQL56
Bae Cheol Shin
źródło
30

Znalazłem swoje w

\ProgramData\MySQL\MySQL Server 8.0\

(To jest ukryty folder)

Możesz win+Rpisać i pisać, %PROGRAMDATA%aby uzyskać dostęp do tego folderu lub po prostu włączyć wyświetlanie ukrytego folderu.

Mangue Sutcliff
źródło
25

Uruchom MySQL Workbench, następnie Serwer -> Plik opcji i spójrz na dół okna; powie coś w stylu „Plik konfiguracyjny: C: \ ProgramData \ MySQL \ MySQL Server 5.6 \ my.ini”

(Zwróć też uwagę na subtelną różnicę między „ProgramData” a „Program Files” - łatwo to przemilczeć, jeśli szukasz szybkiej odpowiedzi.

Chirael
źródło
2
FWIW: W MySQL Workbench 6.1 w głównym menu nie ma pozycji Serwer, chyba że otworzysz bazę danych. Więc najpierw musisz otworzyć bazę danych localhost. Następnie możesz wybrać Serwer> Plik opcji. W moim systemie wywołało to okno dialogowe z informacją, że w C: \ Program Files \ MySQL \ MySQL Server 5.0 \ my.ini nie znaleziono żadnego pliku my.ini (ale jeden zostałby utworzony). Trochę zastanawiające, ponieważ używam późniejszej wersji MySQL i jest ona zainstalowana gdzie indziej. A więc nie do końca na samym dole tej tajemnicy.
gwideman
9

Plik my.ini można znaleźć w systemie Windows w tej lokalizacji - C: \ ProgramData \ MySQL \ MySQL Server 5.6

folder ProgramData jest folderem ukrytym, więc dokonaj odpowiednich ustawień, aby zobaczyć ten folder. Otwórz plik my.ini jako administrator, aby go edytować, a następnie zapisz.

anubhs
źródło
9

Odpowiedział tylko dla użytkowników MySQL Workbench,

wprowadź opis obrazu tutaj

MAX
źródło
4

W moim przypadku folder ProgramDatabył domyślnie ukryty w systemie Windows 7, więc nie mogłem znaleźć my.inipliku.

Po wybraniu Pokaż ukryte pliki i foldery opcję, udało mi się znaleźć my.iniplik w lokalizacji: C:\ProgramData\MySQL\MySQL Server 5.6.

Wyświetl ukryte pliki i foldery w systemie Windows 7:

  1. Kliknij prawym przyciskiem myszy przycisk logo Windows i wybierz Otwórz Eksploratora Windows.

  2. Kliknij Organizuj i wybierz Opcje folderów i wyszukiwania.

  3. Kliknij kartę Widok, wybierz opcję Pokaż ukryte pliki i foldery, a następnie wyczyść pole wyboru Ukryj chronione pliki operacyjne systemu.

  4. Kliknij Tak w ostrzeżeniu, a następnie kliknij OK.

Rahul Dave
źródło
2

tam w C: \ Program Files \ MySQL \ MySQL Server 5.5 znajdują się różne pliki .ini o małych, średnich i dużych nazwach. zwykle używany jest średni lub zależy to od twoich wymagań.

Raul
źródło
Ups ... Pomyślałem, że domyślnie powinien być używany plik my.ini. Masz rację co do tych wszystkich plików. Znajdują się w katalogu instalacyjnym. Jak możesz potwierdzić, który z nich jest używany? Cóż, po prostu tymczasowo przeniosę plik i zobaczę, czy usługa mysql uruchomi się ponownie, czy nie.
Sap
możesz użyć dowolnego z nich w zależności od swoich wymagań. crate my.ini, kopiując zawartość dowolnego z tych plików (postępuj zgodnie z poniższą odpowiedzią na polecenia), a następnie możesz użyć lub dostosować swój plik my.ini, a mysql również użyje tego pliku my.ini
Raul
2

programDatajest folderem ukrytym, więc musisz zmienić opcję z ustawienia, aby pokazać ukryty folder, a następnie wprowadzić zmianę w my.inipliku obecnym w tym.

Pamiętaj, aby zaktualizować poprawny my.iniplik, ponieważ możesz stracić dużo czasu, jeśli będziesz aktualizować niewłaściwy plik.

Możesz zajrzeć do usługi, aby zobaczyć, która my.inijest skonfigurowana w tej usłudze.

Pavan Gilda
źródło
2

Naciśnij klawisz Windows> wpisz services> naciśnij enter> Wyszukaj mysql na liście> kliknij prawym przyciskiem myszy> właściwości> Ścieżka do pliku wykonywalnego będzie miała lokalizację pliku domyślnego tuż pod nim (my.ini)

Mitchell K Mortensen
źródło
1

Otwórz konsolę uruchamiania typ: services.msc poszukaj: mysql kliknij prawym przyciskiem właściwości gdzie jest napisane "ścieżka do pliku wykonywalnego", kliknij i przesuń kursor w prawo, aż zobaczysz katalog my.ini, jest napisane "defaults-file- ”. aby dotrzeć do niego ręcznie w folderach eksploracji, musisz włączyć wizualizację ukrytych elementów (przeglądaj folder> górne menu> wizualizuj> wizualizuj ukryte elementy)

jak wyjaśniono w tym filmie

https://www.youtube.com/watch?v=SvCAa2XuQhg

Tms91
źródło
0

Napotkałem ten sam problem, gdy wykonałem instalację MySQL za pomocą MSI i nie było również plików my-medium.ini, gdy próbowałem wykonać powyższe kroki. Pomogło mi tylko zainstalowanie pliku ZIP MySQL. Dlatego sugeruję odinstalowanie folderu zainstalowanego MSI i ponowne zainstalowanie przy użyciu pliku ZIP.

Pabita Allada
źródło
0

w systemie Windows, jeśli MySQL jest zainstalowany jako usługa, możesz zmienić ścieżkę binpath usługi. Na przykład

sc config MySQL57 binPath= "\"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe\" --defaults-file=\"<myini path>" MySQL57"

ważna jest spacja po binpath. Musisz unikać podwójnych cudzysłowów

user3498126
źródło