Расположение файла my.cnf на macOS

Я пытаюсь следовать этому руководству, чтобы включить удаленный доступ к MySQL. Проблема в том, где должен находиться файл my.cnf? Я использую Mac OS X Lion.

Ответ 1

Эта тема на форуме MySQL гласит:

По умолчанию установка OS X не использует my.cnf, а MySQL просто использует значения по умолчанию. Чтобы создать свой собственный my.cnf, вы можете просто создать файл прямо в /etc.

OS X предоставляет примеры файлов конфигурации в /usr/local/mysql/support-files/.

И если вы не можете найти их там, MySQLWorkbench может создать их для вас:

  1. Открытие соединения
  2. Выбрав "Файл опций" в разделе "INSTANCE" в меню.
  3. MySQLWorkbench будет искать my.cnf и, если он не сможет его найти, он создаст его для вас

Ответ 2

В случае Mac OS X Maverick, когда MySQL устанавливается через Homebrew, он находится в /usr/local/opt/mysql/my.cnf

Ответ 3

В целом, в Unix и Unix-подобных системах программы MySQL/MariaDB считывают файлы конфигурации/запуска в следующих местах (в указанном порядке):

  • /etc/my.cnf - Global
  • /etc/mysql/my.cnf - Глобальный
  • SYSCONFDIR/my.cnf - глобальный

    SYSCONFDIR представляет каталог, указанный с параметром SYSCONFDIR для CMake при SYSCONFDIR MySQL. По умолчанию это каталог etc, расположенный в скомпилированном каталоге установки.

  • $MYSQL_HOME/my.cnf - для сервера (только для сервера)

    MYSQL_HOME - это переменная среды, содержащая путь к каталогу, в котором находится серверный файл my.cnf. Если MYSQL_HOME не установлен и вы запускаете сервер с помощью программы mysqld_safe, mysqld_safe устанавливает для него значение BASEDIR, каталог базовой установки MySQL.

  • файл, указанный с помощью --defaults-extra-file=path если есть

  • ~/.my.cnf - пользовательский
  • ~/.mylogin.cnf - для пользователя (только для клиентов)

Источник: Использование файлов опций.

Примечание. На платформах Unix MySQL игнорирует конфигурационные файлы, доступные для записи. Это намеренно как мера безопасности.


Кроме того, на Mac есть простой способ проверить это.

  1. Выполнить: sudo fs_usage | grep my.cnf sudo fs_usage | grep my.cnf

    Это сообщит о любой активности файловой системы в режиме реального времени, связанной с этим файлом.

  2. В другом терминале перезапустите MySQL/MariaDB, например

    brew services restart mysql
    

    или же:

    brew services restart mariadb
    
  3. На терминале с fs_usage должно быть указано правильное местоположение, например

    15:52:22  access            /usr/local/Cellar/mariadb/10.1.14/my.cnf                                         0.000002   sh          
    

    Так что, если файл не существует, создайте его.

Ответ 4

Я не знаю, какую версию MySQL вы используете, но вот возможные местоположения файла my.cnf для версии 5.5 (взяты из здесь) в Mac OS X:

  • /etc/my.cnf
  • /etc/mysql/my.cnf
  • SYSCONFDIR/my.cnf
  • $MYSQL_HOME/my.cnf
  • defaults-extra-file (файл указан с --defaults-extra-file=path, если есть)
  • ~/.my.cnf

Ответ 5

Для MySQL 5.7 в Mac OS X El Capitan: /usr/local/mysql/etc/my.cnf

Скопировать конфигурацию по умолчанию из /usr/local/mysql/support-files/my-default.cnf

Ответ 6

текущий пакет MySQL для Mac OS X Mavericks (mysql-5.6.17-osx10.7-x86_64 на момент написания этой статьи) автоматически создает my.cnf во время установки.

Он находится в /usr/local/mysql-5.6.17-osx10.7-x86_64/my.cnf
Адаптируйте свой путь в соответствии с вашей версией.

Ответ 7

Если вы используете macOS Sierra и файл не существует, запустите

mysql --help or mysql --help | grep my.cnf

чтобы увидеть возможные местоположения и последовательность загрузки/чтения файла my.cnf для mysql, создайте файл my.cnf в одном из предложенных каталогов и добавьте следующую строку

[mysqld] sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Вы можете sudo touch/{preferred-path}/my.cnf затем отредактировать файл для добавления режима sql:

sudo nano/{preferred-path}/my.cnf

Затем перезапустите MySQL, вуаля, вы готовы идти. счастливое кодирование

Ответ 8

В mysql 5.6.22, который я установил из Homebrew, путь my.cnf

/usr/local/opt/mysql/my.cnf 

Ответ 9

Вы можете открыть терминал и набрать locate my.cnf

Ответ 10

Таким образом, ни одна из этих вещей не работала для меня. Я использую текущую установку сервера mysql для dmg. ps показывает, что все наиболее важные параметры, обычно в my.cnf, передаются в командной строке, и я не мог понять, откуда это происходит. После полнотекстового поиска моего окна я нашел его в:

/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

Итак, вы можете либо изменить их там, либо вытащить их, чтобы они действительно уважали те, которые у вас есть в my.cnf, где бы вы ни решили.

Наслаждайтесь!

Ответ 11

вы можете проверить файл /usr/local/bin/mysql.server и посмотреть, откуда читается my.conf. обычно это от /etc/my.cnf или ~/my.cnf

Ответ 12

macOs sierra 10.12.6 mysql версия: 5.7.18_1 Я запускаю locate my.cnf и путь

/usr/local/etc/my.cnf

надеюсь, это поможет.

Ответ 13

Для MAMP 3.5 Mac El Capitan создайте отдельный пустой конфигурационный файл и напишите дополнительные параметры для mysql

sudo vim /Applications/MAMP/Library/my.cnf

И добавьте как это

[mysqld]
max_allowed_packet = 256M

Ответ 14

Я проверил в macOS Sierra, установленный homebrew MySql 5.7.12

Файлы поддержки расположены в

/usr/local/opt/mysql/support-files

Просто скопируйте my-default.cnf как /etc/my.cnf или /etc/mysql/my.cnf, и конфигурация будет перезагружена.

Ответ 15

macOS High Sierra версия 10.13.6

mysql Ver 14.14 Distrib 5.7.22, для osx10.13 (x86_64) с использованием оболочки EditLine Copyright (c) 2000, 2018, Oracle и/или ее ветки. Все права защищены

Параметры по умолчанию читаются из следующих файлов в указанном порядке:

/etc/my.cnf 
/etc/mysql/my.cnf 
/usr/local/etc/my.cnf 
~/.my.cnf

Ответ 16

Я использую mysql версии 5.7.17 в macOS High Sierra версии 10.13.3, и я нашел файл конфигурации mysql здесь.

cd /usr/local/mysql/support-files/my-default.cnf

Ответ 17

Для Mac то, что сработало для меня, создает файл .my.cnf в моем ~ пути. Надеюсь, это поможет.

Ответ 18

Скопируйте/usr/local/opt/mysql/support-files/my-default.cnf как /etc/my.cnf или/etc/mysql/my.cnf, а затем перезапустите mysql.

Ответ 19

Для меня в версии sierra

скопируйте конфигурацию по умолчанию:

/usr/local/Cellar/mysql/5.6.27/support-files/my-default.cnf

к

/usr/local/Cellar/mysql/5.6.27/my.cnf

Ответ 20

В моем случае файл не существует. В MySQL Workbench я пошел в OPTIONS FILE и нашел некоторые значения по умолчанию. Я нажал применить. Он попросил разрешения. Затем он создал файл my.cnf в /etc. Однако очень важно помнить, что при первом нажатии кнопки "Применить" вы не вносите никаких изменений в конфигурацию по умолчанию. После создания файла вы можете внести изменения, которые будут применены, когда вы нажмете "Применить". В противном случае вы не увидите кнопку "Применить" при внесении изменений.

Ответ 21

После версии MySQL 5.7.18 он не предоставляет файл конфигурации по умолчанию в каталоге support-files. Таким образом, вы можете создать файл my.cnf вручную в месте, где будет читаться MySQL, например /etc/mysql/my.cnf, и добавить конфигурацию, которую вы хотите добавить в файл.

Ответ 22

Параметры rDefault читаются из следующих файлов в указанном порядке: /etc/my.cnf/etc/mysql/my.cnf/usr/local/mysql/etc/my.cnf ~/.my.cnf

Ответ 23

Откройте терминал и используйте следующую команду:

sudo find / -name my.cnf

Ответ 24

Вы можете создать свой файл в любом каталоге. После создания вы можете "указать" путь к конфигу mysql:

enter image description here

Ответ 25

Обычно он должен быть в /usr/local/etc на Mac, если вы его не нашли, вы можете создать его