81 votos

Dónde está mi registro de mysql en mac OS X?

He comprobado el archivo /var/log /como / usr/local/mysql y me parece que no puede encontrar el registro. Estoy tratando de solucionar un error al establecer una conexión de base de datos con una función de php.

100voto

Bruno Bronosky Puntos 2469

Como Chealion se mencionó, existen varias maneras en las que sus mysql podría haber sido instalado. Cada una de las cuales tendrá lugar los datos de directorios y/o registros en diferentes lugares. El siguiente comando le dará a usted (y a nosotros) una buena indicación de dónde buscar.

ps auxww|grep [m]ysqld

Puedes publicar el resultado de ese comando de aquí, por favor? La mina se parece a esto:

_mysql     101   0.0  0.3   112104  13268   ??  S    12:30AM   0:13.20 /opt/local/libexec/mysqld --basedir=/opt/local --datadir=/opt/local/var/db/mysql --user=mysql --pid-file=/opt/local/var/db/mysql/rbronosky-mbp.pid
root        76   0.0  0.0   600172    688   ??  S    12:30AM   0:00.02 /bin/sh /opt/local/lib/mysql/bin/mysqld_safe --datadir=/opt/local/var/db/mysql --pid-file=/opt/local/var/db/mysql/rbronosky-mbp.pid

Desde que se puede ver claramente que mi datadir /opt/local/var/db/mysql (porque he instalado a través de MacPorts). Vamos a tomar esta lección un poco más...

Desde la primera línea que usted puede ver mi demonio es /opt/local/libexec/mysqld. El mysqld puede ser llamado con --verbose --help para obtener una lista de todas las opciones de línea de comandos (y aquí es importante/parte valiosa!) seguido por los valores que se utilizaría si estuviera lanzando mysqld en lugar de simplemente comprobar el resultado de ayuda. Los valores son el resultado de la compilación en tiempo de configuración, mi.cnf archivo y opciones de línea de comandos. Puedo aprovechar esta característica para saber EXACTAMENTE donde mis archivos de registro, como así?

/opt/local/libexec/mysqld --verbose --help|grep '^log'

La mina se parece a esto:

log                               /tmp/mysql.log
log-bin                           /tmp/mysql-bin
log-bin-index                     (No default value)
log-bin-trust-function-creators   FALSE
log-bin-trust-routine-creators    FALSE
log-error                         /tmp/mysql.error.log
log-isam                          myisam.log
log-queries-not-using-indexes     FALSE
log-short-format                  FALSE
log-slave-updates                 FALSE
log-slow-admin-statements         FALSE
log-slow-queries                  (No default value)
log-tc                            tc.log
log-tc-size                       24576
log-update                        (No default value)
log-warnings                      1

HE AQUÍ! todos los consejos en el mundo no iba a ayudar a mí, porque mi archivo de registro se mantiene completamente en una ubicación no estándar! Guardo en /tmp/ porque en mi laptop, no me importa (en realidad prefiero) a perder todos mis registros en el reinicio.

Vamos a poner a todos juntos y hacer un oneliner:

$(ps auxww|sed -n '/sed -n/d;/mysqld /{s/.* \([^ ]*mysqld\) .*/\1/;p;}') --verbose --help|grep '^log'

Ejecuta un comando y obtendrá una lista de todos los registros de su instancia de ejecución de mysql.

¡A disfrutar!

Esta Bash-Fu traído a usted de forma gratuita por mi compromiso con todas las cosas de Fuente Abierta.

11voto

tobym Puntos 778

Otra manera de encontrar esta información es para uso lsof.

  1. Utilizar el Monitor de Actividad para buscar el PID de mysql, o el uso de ps -ef | grep mysqld a encontrarlo.

  2. sudo lsof -p PID_OF_MYSQLD y ver los archivos que MySQL se ha abierto.

4voto

Steven Murawski Puntos 6665

De forma predeterminada, todos los archivos de registro se crean en el mysqld directorio de datos.

Fuente: Documentación De MySQL

Usted puede utilizar mysqlbinlog leer el log binario de archivos en /usr/local/mysql/data/ (en mi instalación no todos fueron binario). Algunos errores son simplemente dirigido a stderr así que es posible que desee comprobar /var/log/system.log como bueno.

0voto

Arjan Puntos 354

La carpeta en la que sostiene que log puede no ser accesible sin el uso de sudo:

sudo ls -l "/usr/local/mysql-5.0.51a-osx10.5-x86"
[..]
drwxr-x---   4 _mysql  wheel    136 Jul 10 23:06 data

Si por casualidad usted encuentra un gran archivo de registro y cuando usted está utilizando la Máquina del Tiempo, es posible que desee leer ¿Qué es el Tiempo de la Máquina de hacer? en el Servidor Falla.

-2voto

morgant Puntos 1079

/Library/Logs/MySQL.registro de

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: