Расположение MySQL my.ini

91

Я уже видел http://dev.mysql.com/doc/refman/4.1/en/mysql-config-wizard-file-location.html

как узнать местоположение mysql my.cnf

а также

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

Но я все еще не могу ответить на вопрос, который давно уже далёк! «Где мой my.ini?» Я использую Windows Server 2008 с mysql 5.5.28. Я установил службу с помощью mysqld --install и могу использовать сервер mysql с помощью sqlyog. Но , к сожалению , я не смог найти my.ini в installation directoryили нет в c:\ни в , c:\windowsни в data_dirзапросе show variables like "mysql_home"возвращается ничего , как хорошо.

Какие-либо предложения?

Сок
источник
6
В MySQL 5.6 данные и my.iniхранятся (по крайней мере, в моем случае)C:\ProgramData\MySQL\MySQL 5.6
Acute

Ответы:

34

Вы должны посмотреть папку, C:\Program Files\MySQL\MySQL Server 5.5но есть проблема. Когда вы выполняете установку MySQL с помощью MSI, файл my.ini не создается. В этой папке будут образцы файлов .ini. Например, чтобы использовать один из них, my-medium.iniперед перезапуском MySQL необходимо сделать следующее:

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

Как только вы это сделаете, его my.iniможно будет прочитать C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe.

RolandoMySQLDBA
источник
1
Итак, из того, что вы говорите ... Мой сервер не использует my.ini? Это также похоже на случай, потому что я только что переименовал все файлы my- [size] .ini, а mysql по-прежнему работает правильно !!!
Sap
44
Если вы используете установщик MSI, он создает my.ini в% PROGRAMDATA% \ MySQL \ MySQL Server XY \ и использует его. Так что это решение не сработает.
NurShomik
4
Для того, чтобы запустить службу MySQL с my.iniсозданным файлом, необходимо сначала остановить текущую службу , net stop mysqlа затем удалить его: sc remove mysql. Затем вам нужно установить новую службу: "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" Теперь вы можете запустить службу с помощью net start newmysqlкоманды.
NurShomik
2
Просто хочу улучшить комментарий, в Windows 10 должно быть «sc delete», а не «sc remove».
lsc
6
Для MySQL 5.7 в Windows расположение my.ini может быть в "C: \ ProgramData \ MySQL \ MySQL Server 5.7 \ my.ini"
Мохсин Саид,
178

РАСПОЛОЖЕНИЕ my.ini НА WINDOWS MYSQL 5.6 MSI (ИСПОЛЬЗОВАНИЕ МАСТЕРА УСТАНОВКИ)

Откройте командную оболочку Windows , и введите: echo %PROGRAMDATA%. В Windows Vista это приводит к: C:\ProgramData.

Согласно http://dev.mysql.com/doc/refman/5.6/en/option-files.html , первое место, где будет искать MySQL, - это %PROGRAMDATA%\MySQL\MySQL Server 5.6\my.ini. В вашей оболочке Windows, если вы это сделаете ls "%PROGRAMDATA%\MySQL\MySQL Server 5.6\my.ini", вы увидите, что файл там.

В отличие от большинства предложений, которые вы найдете в Stackoverflow и в Интернете, размещение файла в нем C:\Program Files\MySQL\MySQL Server 5.6\my.iniНЕ РАБОТАЕТ. И не будет C:\Program Files (x86)\MySQL\MySQL Server 5.1. Причина, указанная в ссылке MySQL, размещенной выше:

В Windows программы MySQL считывают параметры запуска из следующих файлов в указанном порядке (первыми используются верхние элементы).

MSI инсталлятор 5,6 делает создание my.ini в высоком приоритетном месте, не означает никакого другого файл никогда не будет найдено и б / у, для одного созданного установщика исключением.

Принятое выше решение не будет работать для установок 5.6 на основе MSI.

любительский бариста
источник
3
Ага, мой был внутри %PROGRAMDATA%\MySQL\MySQL Server 5.6. Я бы предпочел, чтобы это было в программных файлах ...
jurchiks 07
@ amateur-barista, вы знаете, как заставить программу установки использовать файл my.ini в Program Files вместо файла в ProgramData? Кроме того, как заставить MySQL Workbench использовать тот, который я предоставляю, вместо того, который создан установщиком?
NurShomik
Целое предложение гласит: «В Windows программы MySQL считывают параметры запуска из следующих файлов в указанном порядке (сначала читаются верхние файлы, более поздние файлы имеют приоритет)». Я не понимаю, почему это место наивысшего приоритета?
StackExploded
Тогда почему, черт возьми, даже рабочая среда MySQL предлагает во многих местах, что используется тот, который находится в каталоге установки? И почему это не упоминается в документации MySQL (ссылка на my-default.ini). Я очень расстроен :-(
Josef Sábl
96
  1. Введите "services.msc" в поле поиска меню "Пуск".
  2. Найдите службу MySQL в столбце Имя, например MySQL56.
  3. Щелкните правой кнопкой мыши службу MySQL и выберите меню «Свойства».
  4. Найдите «Путь к исполняемому файлу» на вкладке «Общие», и там находится ваш файл .ini, например, «C: \ Program Files (x86) \ MySQL \ MySQL Server 5.6 \ bin \ mysqld.exe» --defaults-file = "C: \ ProgramData \ MySQL \ MySQL Server 5.6 \ my.ini" MYSQL56
Пэ Чхоль Шин
источник
30

Я нашел свой в

\ProgramData\MySQL\MySQL Server 8.0\

(Это скрытая папка)

Вы можете вводить win+Rи писать, %PROGRAMDATA%чтобы получить доступ к этой папке, или просто включить показ скрытой папки.

Манге Сатклифф
источник
25

Запустите MySQL Workbench, затем Сервер -> Файл параметров и посмотрите на нижнюю часть окна; он скажет что-то вроде "Файл конфигурации: C: \ ProgramData \ MySQL \ MySQL Server 5.6 \ my.ini"

(И обратите внимание на тонкую разницу между «ProgramData» и «Program Files» - ее легко скрыть, если вы ищете быстрый ответ.)

Шираэль
источник
2
FWIW: в MySQL Workbench 6.1 в главном меню нет пункта «Сервер», если вы не открываете базу данных. Итак, сначала вам нужно открыть базу данных localhost. Затем вы можете выбрать Сервер> Файл параметров. В моей системе это вызвало диалоговое окно, в котором говорилось, что файл my.ini не был найден в C: \ Program Files \ MySQL \ MySQL Server 5.0 \ my.ini (но он будет создан). Немного озадачивает, поскольку я использую более позднюю версию MySQL, и она установлена ​​где-то еще. Так что не совсем в основе этой загадки.
gwideman
9

Вы можете найти файл my.ini в Windows по следующему адресу - C: \ ProgramData \ MySQL \ MySQL Server 5.6.

папка ProgramData - это скрытая папка, поэтому сделайте соответствующие настройки, чтобы увидеть эту папку. И откройте файл my.ini от имени администратора, чтобы отредактировать, а затем сохраните его.

анубхс
источник
9

Ответил только для пользователей MySQL Workbench,

введите описание изображения здесь

МАКСИМУМ
источник
4

В моем случае папка ProgramDataбыла скрыта по умолчанию в Windows 7, поэтому мне не удалось найтиmy.ini файл.

После выбора опции «Показать скрытые файлы и папки» я смог найти my.iniфайл в следующем месте:C:\ProgramData\MySQL\MySQL Server 5.6 .

Отображение скрытых файлов и папок в Windows 7:

  1. Щелкните правой кнопкой мыши кнопку с логотипом Windows и выберите «Открыть проводник Windows».

  2. Нажмите «Организовать» и выберите «Папка и параметры поиска».

  3. Щелкните вкладку «Просмотр», выберите «Показать скрытые файлы и папки», а затем снимите флажок «Скрыть защищенные системные операционные файлы».

  4. Щелкните Да в предупреждении, а затем щелкните ОК.

Рахул Дэйв
источник
2

он находится в C: \ Program Files \ MySQL \ MySQL Server 5.5, есть различные файлы .ini с маленькими, средними и большими именами. обычно используется среда или это зависит от ваших требований.

Рауль
источник
Упс ... Я думал, что по умолчанию нужно использовать my.ini. Вы правы насчет всех этих файлов. Они находятся в каталоге установки. Как бы вы подтвердили, какой из них используется? Что ж, я просто переместу файл временно и посмотрю, перезапустится ли служба mysql или нет.
Sap
вы можете использовать любой из них в зависимости от ваших требований. crate my.ini файл, скопировав содержимое из любого из этих файлов (следуйте приведенному ниже ответу для команд), тогда вы можете использовать или настроить свой my.ini, и mysql также будет использовать этот файл my.ini
Рауль
2

programDataявляется скрытой папкой, поэтому вам нужно изменить параметр с настройки на отображение скрытой папки, а затем внести изменения в my.iniфайл, присутствующий в ней.

Обязательно обновите правильный my.ini файл, потому что это может потратить много времени, если вы будете постоянно обновлять неправильный файл.

Вы можете заглянуть в службу, чтобы увидеть, что my.iniнастроено в этой службе.

Паван Гильда
источник
2

Нажмите клавишу Windows> введите службы> нажмите ввод> Найдите mysql в списке> щелкните правой кнопкой мыши> свойства> Путь к исполняемому файлу будет иметь расположение файла по умолчанию прямо под ним (my.ini)

Митчелл К. Мортенсен
источник
1

Откройте консоль запуска, введите: services.msc найдите: mysql щелкните правой кнопкой мыши свойства, где написано «путь к исполняемому файлу», щелкните и переместите курсор вправо, пока не увидите каталог my.ini, в нем написано «defaults-file- ". чтобы добраться до него вручную в ваших папках исследования, вы должны включить визуализацию скрытых элементов (папка исследования> верхнее меню> визуализировать> визуализировать скрытые элементы)

как объяснено в этом видео

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

Tms91
источник
0

Я столкнулся с той же проблемой, когда установил MySQL с помощью MSI, и когда я попробовал выполнить описанные выше шаги, также не было файлов my-medium.ini. Мне помогла только установка ZIP-файла MySQL. Итак, я предлагаю вам удалить установленную папку MSI и переустановить с помощью ZIP-файла.

Пабита Аллада
источник
0

в Windows, если MySQL установлен как служба, вы можете изменить путь к папке службы. Например

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

пробел после binpath важен. Вы должны избегать двойных кавычек

пользователь3498126
источник