Mostrando entradas con la etiqueta Mysql. Mostrar todas las entradas
Mostrando entradas con la etiqueta Mysql. Mostrar todas las entradas

lunes, 14 de marzo de 2011

MySQL - Skip DNS


Aún no sabemos el motivo... pero en un momento dado mysql ha dejado de atender peticiones principalmente por algún error en la zona inversa dns. Analizando mediante strace hemos podido ver que el socket realmente se abría pero el cliente se mantenía a la espera de servidor hasta el timeout del cliente. 
Una de las fast-solutions que hemos aplicado es desactivar la resoulción que aplica mysql-server a la hora de establecer una conexion (muerto el perro muerta la rabia). 

Para desactivar la resolución del mysql-server hay que editar el fichero /etc/my.cnf  y añadir:

skip-name-resolve 

reiniciamos el servicio mysql-server y ha funcionado correctamente.

jueves, 22 de abril de 2010

MySQL: Lost connection to MySQL server at 'reading initial communication packet'

En FreeBSD /etc/hosts.allow
mysqld: ALL: allow 

En non-FreeBSD Unix /etc/hosts.allow
mysqld: ALL

Vigilar también que no esté en /etc/hosts.deny

http://www.bramschoenmakers.nl/en/node/595

sábado, 16 de enero de 2010

MySQL password de root

/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h svfwspam01.pandora.nv password 'new-password'

martes, 30 de junio de 2009

Bayes en Mysql + Mailscanner

Dependencias: perl-DBI and perl-DBD-MySQL

Datos:
SpamAssassin Bayes Database Name: sa_bayes
SpamAssassin
Bayes Database UserName: sa_user
SpamAssassin
Bayes Database Password: sa_password
Your database server’s real name: local_fqdn


Crear tabla bayes y usuario bayes desde phpmyadmin o consola
# mysql -u root -p #(some distros like redhat and clones have no password set by default.)
mysql> create database sa_bayes;
mysql> GRANT ALL ON sa_bayes.* TO sa_user@localhost IDENTIFIED BY 'sa_password';
mysql> GRANT ALL ON sa_bayes.* TO sa_user@local_fqdn IDENTIFIED BY 'sa_password';
mysql> GRANT ALL ON sa_bayes.* TO sa_user@remote_fqdn IDENTIFIED BY 'sa_password';
mysql> flush privileges;

Localizar el fichero bayes_mysql.sql

En sistemas RED HAT /usr/share/doc/spamassassin-%version%/sql/bayes_mysql.sql
Para Otros: find / -name bayes_mysql.sql

# mysql -u sa_user -p sa_bayes < /path/to/bayes_mysql.sql

Backup
sa-learn -p /path/to/spam.assassin.prefs.conf --backup > sa_bayes_backup.txt

Limpieza
sa-learn -p /path/to/spam.assassin.prefs.conf --clear #(entirely optional, incase you want to rollback)

cambios en spam.sassassin.prefs.conf
bayes_store_module Mail::SpamAssassin::BayesStore::SQL
bayes_sql_dsn DBI:mysql:**sa_bayes**:**localhost**
bayes_sql_username **sa_user**
bayes_sql_password **sa_password**
bayes_sql_override_username root

comentar
bayes_path /etc/MailScanner/bayes/bayes
bayes_file_mode 0660

Pasar el backup al mysql
# sa-learn -p /path/to/spam.assassin.prefs.conf --restore sa_bayes_backup.txt

Comprobar
# spamassassin -x -D -p /path/to/spam.assassin.prefs.conf --lint

parar y arrancar mailscanner

añadir cron
minute hour * * * /path/to/sa-learn --force-expire --sync -p /path/to/spam.assassin.prefs.conf

martes, 14 de abril de 2009

Backup & Recovery MySQL -mysqldump

Backup
mysqldump db_name > backup-file.sql


Restore
mysql db_name < backup-file.sql

jueves, 18 de diciembre de 2008

Aumentar el tamaño de buffer del MYSQL

Me encontré una vez un cliente que utilizaban una aplicación LAMP para registrar incidencias informáticas donde los usuarios podian subir imagenes para mostrar sus pantallazos de error.

Un buen día esta aplicación la tuve que migrar a un nuevo servidor y cuando todo parecía ir bien, los ficheros de más de dos MB no había manera de subirlos. Urgando en el código de la aplicación vi que el fichero se almacenaba binariamente en un campo de una tabla y ya me hizo sospechar que MYSQL tendria alguna variable para restringir el tamaño de buffer.

la susodicha variable es max_allowed_packet y controla el tamaño máximo del buffer de comunicación. Para establecer el valor de la variable max_allowed_packet de mysql en 16MB, use cualquiera de los siguientes comandos:

shell> mysql --max_allowed_packet=16777216
shell> mysql --max_allowed_packet=16M

El primer comando especifica el valor en bytes. El segundo especifica el valor en megabytes. Los valores de las variables pueden tener un sufijo K, M, o G (ya sea en mayúsculas o minúsculas) para indicar la unidad, que puede ser kilobytes, megabytes, o gigabytes.

En un fichero de opciones, la variable se coloca sin precederla con dos guiones:

[mysql]
max_allowed_packet=16777216

O bien:

[mysql]
max_allowed_packet=16M