sierra mac etc create cnf mysql database macos

mysql - etc - Ubicación del archivo my.cnf en macOS



mysql 8 my cnf (19)

Estoy tratando de seguir este tutorial para permitir el acceso remoto a MySQL. El problema es, ¿dónde debería estar my.cnf archivo my.cnf ? Estoy usando Mac OS X Lion.


Comprobé en macOS Sierra, el Homebrew instalado MySql 5.7.12

Los archivos de soporte se encuentran en

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

Simplemente copie my-default.cnf como /etc/my.cnf o /etc/mysql/my.cnf y la configuración se recuperará al reiniciar.


Copie /usr/local/opt/mysql/support-files/my-default.cnf como /etc/my.cnf o /etc/mysql/my.cnf y luego reinicie mysql.


Después de la versión 5.7.18 de MySQL, no proporciona el archivo de configuración predeterminado en el directorio de archivos de soporte. Entonces puede crear mi archivo .cnf manualmente en la ubicación donde MySQL leerá, como /etc/mysql/my.cnf, y agregar la configuración que desea agregar al archivo.


El paquete actual de MySQL para Mac OS X Mavericks (mysql-5.6.17-osx10.7-x86_64 en el momento de escribir esto) crea automáticamente un my.cnf durante la instalación.

Se encuentra en /usr/local/mysql-5.6.17-osx10.7-x86_64/my.cnf
Adapta tu camino de acuerdo a tu versión.


En el caso de Mac OS X Maverick cuando MySQL está instalado a través de Homebrew, se encuentra en /usr/local/opt/mysql/my.cnf


En general, en los sistemas tipo Unix y Unix, los programas MySQL / MariaDB leen los archivos de configuración / inicio en las siguientes ubicaciones (en el orden especificado):

  • /etc/my.cnf - Global
  • /etc/mysql/my.cnf - Global
  • SYSCONFDIR/my.cnf - Global

    SYSCONFDIR representa el directorio especificado con la opción SYSCONFDIR para CMake cuando se SYSCONFDIR MySQL. Por defecto, este es el directorio etc. ubicado bajo el directorio de instalación compilado.

  • $MYSQL_HOME/my.cnf - Específico del servidor (solo servidor)

    MYSQL_HOME es una variable de entorno que contiene la ruta al directorio en el que reside el archivo my.cnf específico del servidor. Si MYSQL_HOME no está configurado e inicia el servidor utilizando el programa mysqld_safe , mysqld_safe establece en BASEDIR , el directorio de instalación base de MySQL.

  • archivo especificado con --defaults-extra-file=path if any

  • ~/.my.cnf - específico del usuario
  • ~/.mylogin.cnf - ~/.mylogin.cnf usuario (solo clientes)

Fuente: Uso de archivos de opciones .

Nota: en las plataformas Unix, MySQL ignora los archivos de configuración que se pueden escribir en el mundo. Esto es intencional como una medida de seguridad.

Además, en Mac hay una manera simple de verificarlo.

  1. Ejecutar: sudo fs_usage | grep my.cnf sudo fs_usage | grep my.cnf

    Esto informará cualquier actividad del sistema de archivos en tiempo real relacionada con ese archivo.

  2. En otra Terminal, reinicie su MySQL / MariaDB, por ej.

    brew services restart mysql

    o:

    brew services restart mariadb

  3. En el terminal con fs_usage , se debe mostrar la ubicación correcta, por ejemplo

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

    Entonces, si el archivo no existe, crea uno.


En mi caso, el archivo no existía. En MySQL Workbench fui a OPTIONS FILE y encontré algunos valores predeterminados. Hice clic en aplicar. Pidió permiso. Luego creó el archivo my.cnf en / etc. Sin embargo, es muy importante tener en cuenta que la primera vez que hace clic en "aplicar", no realiza ningún cambio en la configuración predeterminada. Una vez que se haya creado el archivo, puede hacer cambios que se aplicarán cuando haga clic en "aplicar". De lo contrario, no se mostrará el botón Aplicar cuando realice cambios.


En mysql 5.6.22, que lo instalé de Homebrew, la ruta de my.cnf es

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


Entonces, ninguna de estas cosas funcionó para mí. Estoy usando la instalación dmg actual del servidor de la comunidad mysql. ps muestra que todos los parámetros más críticos normalmente en my.cnf se pasan en la línea de comando, y no pude averiguar de dónde provenía. Después de hacer una búsqueda de texto completo de mi cuadro, lo encontré en:

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

Así que puedes cambiarlos allí o sacarlos para que realmente respeten los que tienes en tu my.cnf donde sea que decidas ponerlos.

¡Disfrutar!


Estoy usando la versión 5.7.17 de mysql en MacOS High Sierra versión 10.13.3 y he encontrado el archivo de configuración de mysql aquí.

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


No sé qué versión de MySQL está usando, pero aquí están las posibles ubicaciones del archivo my.cnf para la versión 5.5 (tomada de here ) en Mac OS X:

  1. /etc/my.cnf
  2. /etc/mysql/my.cnf
  3. SYSCONFDIR/my.cnf
  4. $MYSQL_HOME/my.cnf
  5. defaults-extra-file (el archivo especificado con --defaults-extra-file=path , si corresponde)
  6. ~/.my.cnf

Para MAMP 3.5 Mac El Capitan, cree un archivo de configuración vacío por separado y escriba su configuración adicional para mysql

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

Y Agregar como esto

[mysqld] max_allowed_packet = 256M


Para Mac, lo que funcionó para mí es crear un archivo .my.cnf en mi ~ path. Espero que esto ayude.


Para MySQL 5.7 en Mac OS X El Capitán: /usr/local/mysql/etc/my.cnf

Copie la configuración predeterminada de /usr/local/mysql/support-files/my-default.cnf


Para mí en la versión sierra

copie la configuración predeterminada en:

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

a

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


Puede abrir una terminal y escribir locate my.cnf


Si está utilizando macOS Sierra y el archivo no existe, ejecute

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

para ver las posibles ubicaciones y la secuencia de carga / lectura de my.cnf para mysql, luego crea mi archivo .cnf en uno de los directorios sugeridos y luego agrega la siguiente línea

[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

Puede sudo touch /{preferred-path}/my.cnf luego edite el archivo para agregar el modo sql

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

Luego reinicia mysql, voilaah eres bueno para ir. feliz codificación


puede verificar el archivo /usr/local/bin/mysql.server y ver desde donde se lee my.conf. generalmente es de /etc/my.cnf o ~ / my.cnf


Este hilo en el foro de MySQL dice:

De manera predeterminada, la instalación de OS X no usa my.cnf, y MySQL solo usa los valores predeterminados. Para configurar su propio my.cnf, puede crear un archivo directamente en / etc.

OS X proporciona archivos de configuración de ejemplo en /usr/local/mysql/support-files/ .