Изменения в my.ini не сохраняются при использовании MySQL

#mysql #mariadb

#mysql #mariadb

Вопрос:

Я пытаюсь обновить некоторые переменные для моего MySQL сервера базы данных; Я запускаю Maria версию 10.3.12 на Windows 10 64-bit ноутбуке. Я попытался обновить my.ini файл, расположенный здесь:

 C:Program FilesMariaDB 10.3datamy.ini
  

Я добавляю следующие строки в довольно простой my.ini

 max_allowed_packet=64M
interactive_timeout=86400
wait_timeout=86400
  

Я сохранил изменения в my.ini; но когда я перезапускаю сервер базы данных с помощью mysqld restart командной консоли, а затем снова вхожу в клиент, я ожидаю увидеть свои изменения с помощью SHOW VARIABLES LIKE 'max%' , и в итоге я вижу значение по умолчанию. Значение по умолчанию для max_allowed_packet составляет около 16M, а для двух других — 28800.

Существует множество статей, которые касаются этого; просмотрев их, я знаю, как использовать SET команду для обновления их изнутри клиента. Однако моя цель — внести постоянные изменения.

Я не сомневаюсь, что что-то упустил из виду; приветствуется любая обратная связь.

Комментарии:

1. В каком разделе конфигурационного файла находятся эти настройки?

Ответ №1:

Вы можете определить путь к файлу конфигурации, просмотрев сервисы:

  • Откройте службы и найдите экземпляр службы MariaDB
  • Щелкните правой кнопкой мыши и выберите Свойства
  • Вы должны увидеть что-то вроде "C:pathtoexe" --defaults-file="c:path-to-inimy.ini"

затем вы можете отредактировать правильный файл конфигурации

Комментарии:

1. Я проверил это, но, к сожалению, это только подтверждает, что я использую правильный: "C:Program FilesMariaDB 10.3binmysqld.exe" "--defaults-file=C:Program FilesMariaDB 10.3datamy.ini" "MySQL"

2. смотрите расположение файлов параметров my.ini для windoes в Windows по адресу mariadb.com/kb/en/library/configuring-mariadb-with-option-files

3. Спасибо за публикацию этого; Я в своем предыдущем исследовании нашел эту страницу и просмотрел эти местоположения. Я просмотрел их во второй раз, чтобы перепроверить, и ни одно из вспомогательных местоположений не отразило дополнительного my.ini , а общий поиск Windows не выявил ничего, о чем я еще не знал.

4. затем вы можете проверить глобальные местоположения, которые просматривает mariadb, по ссылке, предоставленной @BerndBuffen

Ответ №2:

Я нашел решение. После внесения изменений, отмеченных в моем сообщении, я пытался перезапустить MySQL daemon с помощью командной строки Windows и следующей команды:

 C:Usersdavid>mysqld restart
2019-03-14 21:05:48 0 [Note] mysqld (mysqld 10.3.12-MariaDB) starting as process 8548 ...
  

Результаты можно увидеть ниже команды, которая mysqld restart

Поскольку MySQL установлен и запущен как служба, очевидно, что перезапускать его было не нужно; поэтому я перезапустил его с помощью Services.msc :

  1. Ввод Services.msc в строку поиска
  2. Выбор Services
  3. В Services приложении найдите MySQL
  4. Щелчок правой кнопкой мыши MySQL и выбор Перезапустить

Это привело к перечитыванию my.ini файла.