[mysql] Reparar todas las tablas dañas ‘ marked as crashed ‘

A veces un apagón repentino o la muerte de nuestro proceso de mysql puede provocar errores de tablas mal cerradas. Sobretodo en tablas de sesiones, logins, etc..mysqld[2978]: 100318 7:34:27 [ERROR] /usr/sbin/mysqld: Incorrect key file for table ‘./home/tlr_boards.MYI’; try to repair it

mysqld[2978]: 100318 16:44:46 [ERROR] /usr/sbin/mysqld: Table ‘./home/tlr_sessions’ is marked as crashed and last (automatic?) repair failed

A veces lanzar un mysqlcheck -A no es suficiente, pero con este script sí conseguimos reparar todas las tablas :

for database in $(mysql --skip-column-names -uadmin -p`cat /etc/psa/.psa.shadow` -e "show databases" ); do echo "bd: $database"; for table in $(mysql --skip-column-names -uadmin -p`cat /etc/psa/.psa.shadow` -e "show tables" $database ); do echo "reparando $table " ; mysqlcheck -uadmin -p`cat /etc/psa/.psa.shadow` -r $database $table ; done ; done ;

Tras la reparación en el log podremos ver algo como esto:mysqld[2978]: 100318 16:45:49 [Note] Found 1821 of 295 rows when repairing ‘./home/tlr_messages’
mysqld[2978]: 100318 16:45:50 [Note] Found 222 of 1 rows when repairing ‘./home/tlr_sessions’

Mar 13 05:40:51 HORDE [emergency] [horde] DB Error: connect failed: [nativecode=Too many connections] ** Array [on line 1637 of “/usr/share/psa-horde/lib/Horde/DataTree/sql.php”]

El error lo podemos localizar en /var/log/psa-horde/psa-horde.log. Al igual que todos los errores de Horde van a este log. En este caso consiste en que la base de datos no admite más conexiones. Bien puedes usar una herramienta para optimizar la configuración de la base de datos o si tienes una configuración por defecto y te urge ( 400 por poner una cantidad bastante alta ) :

max_connections = 400
max_user_connections = 400

en el fichero /etc/my.conf y reiniciar el demonio.

[drweb] desactivar notificaciones ( actualizado )

Una de las cosas más tediosas del antivirus drweb para Plesk, son las notificaciones. Con los cambios recientes en Plesk, todos los correos para el administrador ahora sí son enviados a la cuenta de administrador del panel.

Uno de los mensajes más reptitivos es el aviso de caducidad de la licencia. Si usted tiene un panel de Plesk puede que esté recibiendo este email de forma reiterada:

Dear Administrator,
Your Dr.Web license key file /opt/drweb/drweb32.key will expire in 13 days !
The Dr.Web daemon will not work after this period if you have not another valid keys.
Key info: ...

La forma de desactivarlo es la siguiente:

  • Edita el fichero /etc/drweb/drweb32.ini
  • Localiza la variable NotifyPeriod y asignala el valor 0 de esta forma NotifyPeriod = 0
  • Reinicia drweb /etc/init.d/drweb restart

Otras notificaciones constantes son las de notificaciones de virus. Para desactivarlas :

  • Edita el fichero /etc/drweb/drweb_qmail.conf
  • Localiza y modifica las variables de forma que queden de la siguiente forma: [VirusNotifications]
    SenderNotify = no
    AdminNotify = no
    RcptsNotify = no
  • Reinicia drweb /etc/init.d/drwebd restart

Fuente de la información: rackerhacker.com y Plesk KB
disable DrWeb notifications when infected mail is found

ACTUALIZACION:
En la version Plesk 9.5 el fichero de configuración es /etc/drweb/drweb_handler.conf