Для homebrew mysql устанавливает, где my.cnf? Он устанавливает один?
Для homebrew mysql устанавливает, где my.cnf?
Ответ 1
По умолчанию my.cnf отсутствует. Таким образом, MySQL запускается со всеми настройками по умолчанию. Если вы хотите создать свой собственный my.cnf, чтобы переопределить все значения по умолчанию, поместите его в /etc/my.cnf.
Кроме того, вы можете запустить mysql --help
и просмотреть его для перечисленных адресов.
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf
The following groups are read: mysql client
The following options may be given as the first argument:
--print-defaults Print the program argument list and exit.
--no-defaults Don't read default options from any option file.
--defaults-file=# Only read default options from the given file #.
--defaults-extra-file=# Read this file after the global files are read.
Как вы можете видеть, есть также некоторые опции для обхода файлов conf или указания других файлов для чтения при вызове mysql в командной строке.
Ответ 2
Домашняя страница mysql содержит пример файлов конфигурации в папке с файлами поддержки установки.
ls $(brew --prefix mysql)/support-files/my-*
Если вам нужно изменить настройки по умолчанию, вы можете использовать одну из них в качестве отправной точки.
cp $(brew --prefix mysql)/support-files/my-default.cnf /usr/local/etc/my.cnf
Как указывает @rednaw, установка MySQL для доморощенного сервера, скорее всего, будет находиться в /usr/local
, поэтому файл my.cnf не должен быть добавлен в системную папку /etc
, поэтому Ive изменил эту команду, чтобы скопировать файл в /usr/local/etc
.
Если вы используете MariaDB, а не MySQL, используйте следующее:
cp $(brew --prefix mariadb)/support-files/my-small.cnf /usr/local/etc/my.cnf
Ответ 3
Один способ узнать:
sudo /usr/libexec/locate.updatedb
# wait a few minutes for it to finish
locate my.cnf
Ответ 4
Мне ничего не помогло - я не смог перезаписать настройки в файле /etc/my.cnf. Поэтому я искал, как предложил Джон fooobar.com/questions/30286/...
sudo /usr/libexec/locate.updatedb
# wait a few minutes for it to finish
locate my.cnf
Он нашел еще один my.cnf в
/usr/local/Cellar/mysql/5.6.21/my.cnf
изменение этого файла сработало для меня! Не забудьте перезапустить агент запуска:
launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Ответ 5
В вашем типе оболочки my_print_defaults --help
В нижней части результата вы должны увидеть файл, с которого сервер читает конфигурации. Он печатает что-то вроде этого:
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf
Ответ 6
Я считаю, что ответ отрицательный. Установка одного в ~/.my.cnf или /usr/local/etc представляется предпочтительным решением.
Ответ 7
Вы можете найти, где файл my.cnf
был предоставлен конкретным пакетом, например
brew list mysql # or: mariadb
В дополнение к проверке, читается ли этот файл, вы можете запустить:
sudo fs_usage | grep my.cnf
который покажет вам активность файловой системы в реальном времени, связанную с этим файлом.
Ответ 8
в моей системе было
nano /usr/local/etc/my.cnf.default
в качестве шаблона и
nano /usr/local/etc/my.cnf
как работающий.