Estoy ejecutando MySQL 5.0.45 en OS X 10.6.1 y no puedo hacer que MySQL registre nada. Estoy depurando una aplicación y necesito ver todas las consultas y errores.
Agregué a etc / my.cnf:
[mysqld]
bind-address = 127.0.0.1
log = /var/log/mysqld.log
log-error = /var/log/mysqld.error.log
Usé sudo para crear dos archivos de registro, establecí permisos en 644, luego reinicié MySQL.
Me referí a ¿Dónde está mi registro mysql en OS X? para solucionar problemas
Corriendo:
ps auxww|grep [m]ysqld
Devoluciones:
_mysql 71 0.0 0.8 646996 15996 ?? S 7:31PM 0:01.10 /usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --pid-file=/usr/local/mysql/var/Macintosh-41.local.pid
_mysql 46 0.0 0.0 600336 744 ?? Ss 7:30PM 0:00.03 /bin/sh /usr/local/mysql/bin/mysqld_safe
Y corriendo:
$(ps auxww|sed -n '/sed -n/d;/mysqld /{s/.* \([^ ]*mysqld\) .*/\1/;p;}') --verbose --help|grep '^log'
Devoluciones:
log /var/log/mysqld.log
log-bin (No default value)
log-bin-index (No default value)
log-bin-trust-function-creators FALSE
log-bin-trust-routine-creators FALSE
log-error /var/log/mysqld.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
Corriendo:
mysql> show variables like '%log%';
Devoluciones:
+---------------------------------+---------------------------+
| Variable_name | Value |
+---------------------------------+---------------------------+
| back_log | 50 |
| binlog_cache_size | 32768 |
| expire_logs_days | 0 |
| innodb_flush_log_at_trx_commit | 1 |
| innodb_locks_unsafe_for_binlog | OFF |
| innodb_log_arch_dir | |
| innodb_log_archive | OFF |
| innodb_log_buffer_size | 1048576 |
| innodb_log_file_size | 5242880 |
| innodb_log_files_in_group | 2 |
| innodb_log_group_home_dir | ./ |
| innodb_mirrored_log_groups | 1 |
| log | ON |
| log_bin | OFF |
| log_bin_trust_function_creators | OFF |
| log_error | /var/log/mysqld.error.log |
| log_queries_not_using_indexes | OFF |
| log_slave_updates | OFF |
| log_slow_queries | OFF |
| log_warnings | 1 |
| max_binlog_cache_size | 4294967295 |
| max_binlog_size | 1073741824 |
| max_relay_log_size | 0 |
| relay_log_purge | ON |
| relay_log_space_limit | 0 |
| sync_binlog | 0 |
+---------------------------------+---------------------------+
26 rows in set (0.00 sec)
¿Alguna ayuda sobre cómo puedo hacer que MySQL inicie sesión?
Para habilitar los archivos de registro, debe asegurarse de que una o más de las siguientes directivas estén en la
[mysqld]
sección del archivo de configuración principal de su servidor mysql (/etc/my.cnf
en el mío):Los registros se crearán, de manera predeterminada, en el mismo directorio de datos que contiene los subdirectorios de la base de datos (normalmente
/var/lib/mysql
) y los nombres de los archivos de registro predeterminados para el nombre de host seguido de un sufijo que coincide con los nombres de las directivas anteriores (por ejemplo, -bin, -slow -consultas, etc.).Para mantener sus registros en una ruta diferente, o usando diferentes nombres de archivo, especifique el nombre base siguiendo la
log=
directiva, y cualquier ruta y nombre de archivo que desee, por ejemplo:Debe reiniciar mysqld para que estos cambios surtan efecto.
fuente
Las respuestas anteriores estaban desactualizadas. Puede buscar el archivo de configuración en
/etc/my.cnf
o en Windows./mysql/my.ini
.En la
[mysqld]
sección agregarLa documentación para Windows indica que los registros se almacenan
ProgramData/MySQL/MySQL Server 5.6/
. Ignóralo porque es una mentira.Además, la
log
opción recomendada se deprecia y da como resultado el erroriniciando sesión
./mysql/data/host.err
y el demonio muriendo en silencio. La configuración correcta esgeneral-log
.Tampoco
log-slow-queries
es válido y causó el errorAsí que asegúrese de mantenerse alejado de eso también.
fuente
log=
opción y pude descubrir por qué. Finalmente alguien con una respuesta.general-log
Ingrese la línea de comando mysql con super privilegios y realice:
En mi caso, ¡no importaba si ya tenía esta variable configurada con el mismo valor! Además, cambié los permisos y el propietario del archivo como se menciona en las otras publicaciones.
fuente
Pruebe diferentes configuraciones de registro en my.cnf. En mi caso necesitaba:
fuente