Для 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

как работающий.