OVH Community, your new community space.

Mis bases de datos se caen a los pocos dias


BoRoU
04/06/2008, 13:50
Ok, muchas gracias pues.

josu
04/06/2008, 13:28
Si no tienes intención de replicar tu base de datos puedes desactivarlos. Si me equivoco que alguien me corrija, pero yo es para lo único que los he utilizado.

Josu.

BoRoU
04/06/2008, 12:21
Vale, simplemente comentando la linea log-bin es suficiente...
Te recomiendo que hagas primero un RESET MASTER, luego comentes la linea...
#log-bin
y luego tienes que parar y volver a arrancar mysql para que se apliquen los cambios....

Con eso ya deshabilitamos los logs binarios, pero ahora pregunto eso de los logs vale para algo? lo digo por si es conveniente en lugar de deshabilitarlo cambiar la ruta donde lo guarda para que en lugar de que lo haga en / lo haga en /home....

BoRoU
03/06/2008, 10:03
Hola, al final conseguiste hacerlo funcionar?
Gracias a las respuestas que te han dado he llegado a solucionar el problema de lentitud que tenia el foro, y era porque tenia casi 2 gigas de espacio ocupado en /
Lo que he hecho a sido un RESET MASTER para limpiar los logs, pero lo que no se hacer el cambiar la configuración para que no me genere los logs esos.... alguien sabe como cambiar eso?
Os dejo como tengo el my.cnf
# /etc/mysql/my.cnf: The global mysql configuration file.
# $Header: /var/cvsroot/gentoo-x86/dev-db/mysql/files/my.cnf-4.1,v 1.3 2006/05/05 19:51:40 chtekk Exp $

# The following options will be passed to all MySQL clients
[client]
#password = your_password
port = 3306
socket = /var/run/mysqld/mysqld.sock
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[php-cgi]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysql]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysqladmin]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysqlcheck]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysqldump]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysqlimport]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[mysqlshow]
character-sets-dir=/usr/share/mysql/charsets
default-character-set=latin1

[myisamchk]
character-sets-dir=/usr/share/mysql/charsets

[myisampack]
character-sets-dir=/usr/share/mysql/charsets

# use [safe_mysqld] with mysql-3
[mysqld_safe]
err-log = /var/log/mysql/mysql.err

# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations
[mysqld]
character-set-server = latin1
init-connect='SET NAMES latin1'
default-character-set = latin1
user = mysql
port = 3306
socket = /var/run/mysqld/mysqld.sock
pid-file = /var/run/mysqld/mysqld.pid
log-error = /var/log/mysql/mysqld.err
basedir = /usr
datadir = /var/lib/mysql
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
language = /usr/share/mysql/english

# security:
# using "localhost" in connects uses sockets by default
skip-networking
bind-address = 127.0.0.1

log-bin
server-id = 1

# point the following paths to different dedicated disks
tmpdir = /tmp/
#log-update = /path-to-dedicated-directory/hostname

# you need the debug USE flag enabled to use the following directives,
# if needed, uncomment them, start the server and issue
# #tail -f /tmp/mysqld.sql /tmp/mysqld.trace
# this will show you *exactly* what's happening in your server

#log = /tmp/mysqld.sql
#gdb
#debug = d:t:i,/tmp/mysqld.trace
#one-thread

# uncomment the following directives if you are using BDB tables
#bdb_cache_size = 4M
#bdb_max_lock = 10000

# the following is the InnoDB configuration
# if you wish to disable innodb instead
# uncomment just the next line
skip-innodb
#
# the rest of the innodb config follows:
# don't eat too much memory, we're trying to be safe on 64Mb boxes
# you might want to bump this up a bit on boxes with more RAM
innodb_buffer_pool_size = 16M
# this is the default, increase it if you have lots of tables
innodb_additional_mem_pool_size = 2M
#
# i'd like to use /var/lib/mysql/innodb, but that is seen as a database :-(
# and upstream wants things to be under /var/lib/mysql/, so that's the route
# we have to take for the moment
#innodb_data_home_dir = /var/lib/mysql/
#innodb_log_arch_dir = /var/lib/mysql/
#innodb_log_group_home_dir = /var/lib/mysql/
# you may wish to change this size to be more suitable for your system
# the max is there to avoid run-away growth on your machine
innodb_data_file_path = ibdata1:10M:autoextend:max:128M
# we keep this at around 25% of of innodb_buffer_pool_size
# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size)
innodb_log_file_size = 5M
# this is the default, increase it if you have very large transactions going on
innodb_log_buffer_size = 8M
# this is the default and won't hurt you
# you shouldn't need to tweak it
set-variable = innodb_log_files_in_group=2
# see the innodb config docs, the other options are not always safe
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
# uncomment the next directive if you are not familiar with SQL
#safe-updates

[isamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout
Si comento la linea
log-bin
seria suficiente? o hay que hacerlo de otra forma?

Gracias.

djgondirect
26/05/2008, 20:11
Sigo sin conseguir ponerlo para que funcione como debe, alguien puede hecharme una mano ya que veo que el tema se ha dejado.

djgondirect
14/05/2008, 08:27
Cita Publicado inicialmente por Kilburn
Que no esté no significa que no puedas añadirlo

Prueba a meter esta línea debajo de la línea de "log = ...":

log-bin = /home/mysql/mysqld-bin
Pues el archivo sigue creciendo. Ahora haciendo un RESET MASTER consigo que vuelva al 54% igual que cuando reinicio el pc, sin embargo tengo que hacerlo todos los dias pues se colapsa. En 10 horas ha aumentado un 10% y ahora ocupa el 64%.

Como me comentas Killburn, he puesto de nuevo el log-bin server=1 (como venia por defecto) y he añadido esa linea que mencionas pero sigue igual. A ver si alguien puede hecharme una mano mas. Gracias anticipadas.

Kilburn
12/05/2008, 20:28
Que no esté no significa que no puedas añadirlo

Prueba a meter esta línea debajo de la línea de "log = ...":

log-bin = /home/mysql/mysqld-bin

djgondirect
12/05/2008, 17:48
Cita Publicado inicialmente por MarcosBL
La idea es que desactives esa funcionalidad o bien que muevas los ficheros de logs a /home/mysql por ejemplo, para que dejen de comerte espacio en /
Solo he encontrado lo que os he comentado antes de log-bin server-id =1 que ahora en lugar de 0 lo he borrado ( en el fichero /etc/mysql/my.conf) y he hecho el RESET MASTER, sin embargo creo que sigue todo igual que antes, es decir, sin solventar el problema.

MarcosBL
12/05/2008, 02:29
Mirate las variables que te dijo Josu en las paginas que te dije yo:

Variables: log-bin binlog-do-db binlog-ignore-db server-id
La idea es que desactives esa funcionalidad o bien que muevas los ficheros de logs a /home/mysql por ejemplo, para que dejen de comerte espacio en /

djgondirect
11/05/2008, 20:03
Muchas gracias por todo pero.... ¿que tengo que escribir o eliminar para desactivar el registro de binarios?

He modificado esto :

log-bin
server-id = 1

Por 0

Y también he hecho el RESET MASTER en phpmyadmin

Sin embargo no se si eso es lo correcto o faltan mas cosas, ¿una última ayuda?

Modifico :

He hecho esto y el espacio en / del manager sigue creciendo. En 3 horas ha crecido un 4% de 54% con el que inicia al reiniciar el servidor a 58% por el que va ahora mismo.
Lo extraño es que si reinicio el servidor se pone al 54% pero a mas contenido en el servidor antes llega al 100% y antes se caen las bases de datos

MarcosBL
07/05/2008, 09:21
Como te dice Josu, 551M en /var, esa carpeta crecerá cuando hagas actualizaciones, porque tienes activados los binarios de mysql, el registro binario contiene todas las sentencias que han actualizado datos o podrían haberlo hecho (por ejemplo, un DELETE que no encontró filas concordantes). Las sentencias se almacenan en la forma de “eventos” que describen las modificaciones. Más información en http://dev.mysql.com/doc/refman/5.0/es/binary-log.html

Si lo desactivas en el fichero my.cnf (normalmente en /etc/my.cnf o /etc/mysql/my.cnf), como te dice Josu, ese fichero dejará de crecer.

Para eliminar los que ya tienes de forma segura, desde la consola de mysql haz un "RESET MASTER". http://dev.mysql.com/doc/refman/5.0/es/reset.html

Si no entiendes algo de estas páginas, coméntanos, tranqui que de una forma u otra entre todos arreglaremos.

josu
06/05/2008, 23:05
Cita Publicado inicialmente por djgondirect
/var/run/mysqld/mysqld-bin.000001: 385M
Ahí tienes el problema. Mira a ver si tienes activado los logs binarios de mysql.

Archivo: my.cnf
Variables: log-bin binlog-do-db binlog-ignore-db server-id

Josu.

djgondirect
06/05/2008, 21:22
Pues aqui mis resultados Marcos

Al hacer el du -hs /* en root


6,7M /bin
6,3M /boot
96K /dev
4,2M /etc
43G /home
0 /httpd.conf
5,0M /lib
16K /lost+found
12K /mnt
4,0K /opt
0 /proc
56M /root
7,9M /sbin
0 /sys
5,0M /tmp
1,3G /usr
551M /var

Al buscar archivos de mas de 20 megas

'
/home/log/httpd/allthepo-access_log: 46M
/home/mysql/bellezas/g2_CacheMap.MYD: 55M
/home/mysql/bellezas/g2_Derivative.MYD: 33M
/home/mysql/bellezas/g2_SessionMap.MYD: 39M
/home/mysql/wallpaper/g2_CacheMap.MYD: 51M
/home/mysql/cars/g2_CacheMap.MYD: 34M
/home/mysql/xxx/g2_CacheMap.MYD: 104M
/home/mysql/siterip/g2_CacheMap.MYD: 21M
find: /proc/7168/task/7168/fd/4: No existe el fichero o el directorio
find: /proc/7168/task/7168/fdinfo/4: No existe el fichero o el directorio
find: /proc/7168/fd/4: No existe el fichero o el directorio
find: /proc/7168/fdinfo/4: No existe el fichero o el directorio
/root/patch-all.log: 55M
/var/cache/edb/remote_metadata.pickle: 45M
/var/run/mysqld/mysqld-bin.000001: 385M
/sys/devices/pci0000:00/0000:00:02.0/resource2: 512M

Me puse en contacto con soporte y me dicen que todo OK, sin embargo eso no es cierto, el servidor sigue creciendo y cuando añado mucho contenido en una actualización (por ejemplo 1 giga) aumenta el espacio en / y a las pocas horas tengo que reiniciar el servidor o se me caen todas las bases de datos.

Si puedes hecharme una mano Marcos, te estarias mas que agradecido. Gracias anticipadas por cierto.

MarcosBL
06/05/2008, 09:18
djgondirect, haz de nuevo el " du -hs / ", pero hazlo desde / , lo has hecho desde /root:

Por asegurarte simplemente:
cd /
du -hs /*

( Tardará un poco )

Te dará algo asi como:

6.7M /bin
5.9M /boot
96K /dev
5.6M /etc
109G /home
5.0M /lib
16K /lost+found
12K /mnt
311M /opt
0 /proc
201M /root
7.9M /sbin
0 /sys
1.1M /tmp
... etc ...
Tambien vendria bien que lanzases esto:

find / -type f -size +20000k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'

Ese comando te deberia encontrar todos los archivos que ocupen más de 20 Megas, y nos dará pistas de donde se va ese espacio. En mi caso sale un resultado tal que:

/home/cache/log/store.log.0: 42M
/home/cache/log/access.log.0: 48M
/home/cache/log/store.log.1: 49M
/home/cache/log/access.log.1: 61M
... etc ...

djgondirect
05/05/2008, 23:34
Cita Publicado inicialmente por Reox
¿Tienes activada la generación de binarios?
Ando perdido en ese tema, si me indicas que es eso y donde está te comento. Gracias por cierto.

Edito :Si es la de MYSQL me acaba de decir esto :

Fatal error: Allowed memory size of 52428800 bytes exhausted (tried to allocate 9559 bytes) in /home/ovh/www/phpMyAdmin-2.8.0.4/libraries/dbi/mysql.dbi.lib.php on line 103

Edito nuevamente :

He reiniciado el servidor para evitar que deje de funcionar y he hecho el log binary de mysql, los resultados ahora son estos :

Nombre con el cual se registró Posición Tipo de evento ID del servidor Posición original Información
mysqld-bin.000001 4 Format_desc 1 98 Server ver: 5.0.44-log, Binlog ver: 4
mysqld-bin.000001 98 Query 1 269 use `bellezas`; UPDATE g2_ItemAttributesMap SET g_...
mysqld-bin.000001 269 Query 1 20059 use `bellezas`; UPDATE g2_CacheMap SET g_value='\\...
mysqld-bin.000001 20059 Query 1 39847 use `bellezas`; INSERT INTO g2_CacheMap (g_key, g_...
mysqld-bin.000001 39847 Query 1 50057 use `bellezas`; UPDATE g2_CacheMap SET g_value='\\...
mysqld-bin.000001 50057 Query 1 59746 use `bellezas`; UPDATE g2_CacheMap SET g_value='\\...
mysqld-bin.000001 59746 Query 1 69435 use `bellezas`; UPDATE g2_CacheMap SET g_value='\\...
mysqld-bin.000001 69435 Query 1 79643 use `bellezas`; INSERT INTO g2_CacheMap (g_key, g_...
mysqld-bin.000001 79643 Query 1 79762 use `siterip`; DELETE FROM g2_CacheMap WHERE g_ite...
mysqld-bin.000001 79762 Query 1 79939 use `siterip`; UPDATE g2_Entity SET g_modification...
mysqld-bin.000001 79939 Query 1 80067 use `siterip`; UPDATE g2_Derivative SET g_derivati...
mysqld-bin.000001 80067 Query 1 80238 use `bellezas`; UPDATE g2_ItemAttributesMap SET g_...

djgondirect
05/05/2008, 23:32
El mensaje que me enviaron desde Soporte:

Buenos días

En general, un uso normal de un servidor no necesita más de 2 GB en la partición de sistema, habida cuenta que todo lo que ocupa realmente espacio está en la partición de /home, como por ejemplo los datos de los clientes, las bases de datos (en /home/mysql/), los logs (en /home/log), etc...

Si hay una aplicación que necesite más espacio y que sobrecargue la partición raíz, lo ideal es localizar la aplicación y, o bien mover el directorio que utilice a /home junto con el resto de directorios críticos, o bien dejar de utilizarla.

En la Release2 (en las aplicaciones por defecto) no hay ningún directorio crítico (en cuanto a espacio se refiere) que esté en la partición raíz.

Debe de ser una aplicación que haya instalado usted o que se haya modificado posteriormente.

Para localizar el directorio lo mejor es hacer un "du -hs /*" para poder saber qué directorio es el culpable (y así poder moverlo).


Cordialmente, Rubén Vidal
Departamento técnico

Y aqui el du -a que hice al servidor dio estos resultados :

4 ./.ssh/authorized_keys2
8 ./.ssh
4 ./.pdb
4 ./.mdg
4 ./.bash_profile
4 ./.bashrc
0 ./.keep
4 ./.lesshst
4 ./patch-all.sh
4 ./.p
4 ./.bash_history
4 ./.email
4 ./patch-n-log.sh
56328 ./patch-all.log
652 ./patch-all.err
4 ./patch-all-release-2.sh
4 ./patch-2.00-2.01.sh
4 ./patch-2.01-2.02.sh
4 ./patch-2.02-2.03.sh
4 ./patch-2.03-2.04.sh
12 ./patch-2.04-2.05.sh
8 ./.spamassassin/auto-whitelist
12 ./.spamassassin
12 ./patch-2.05-2.06.sh
4 ./patch-2.06-2.07.sh
4 ./patch-2.07-2.08.sh
4 ./patch-2.08-2.09.sh

A mi sinceramente me extraña que el archivo patch-all.log ocupe 56328, lo veo excesivo y creo que ese puede ser el causante de los problemas, sin embargo prefiero que algun experto me comente el tema si es posible. Gracias de antemano.

djgondirect
05/05/2008, 18:26
Cita Publicado inicialmente por MarcosBL

¿ Puedes decirnos en qué partición están las bds de mysql, y que tamaño total tiene esa partición ?
/dev/sda1 Tamaño 3GB # Usados 2.3. USO=> 81% en /
/dev/sda2 Tamaño 685 GB # USados 43 USO => 7% /home

Segun he leido en el post que comentas dicen que tendria que formatear y poner mas espacio en /, sin embargo ya tengo mas de 43 gigas en ese disco duro y.... reinstalar todo me llevaria mas de 1 mes de trabajo.
Si sabeis de alguna opcion os la agradeceria.

Muchas gracias por la ayuda Marcos y a todo/a que me heche una mano, es mi primer dedicado y ando algo verde.

Reox
05/05/2008, 04:27
¿Tienes activada la generación de binarios?

MarcosBL
04/05/2008, 14:57
djgondirect, yo he optado por ir pagando cada 3 meses y migrar a maquinas superiores, el menos mientras OVH siga haciendo esas ampliaciones, es incómodo, claro que si, pero bueno, es una incomodidad que viene de una mejora de servicio, y que además es "opcional", podemos quedarnos con la maquina que tenemos.

Respecto al tema de llenado de / , se ha tratado muchas veces ya aqui, dale un ojo por ejemplo a http://foros.ovh.es/showthread.php?p=6365

El tema es que la partición / que da por defecto OVH es un poco pequeña, sobre todo si tienes tus bases de datos, logs, etc en esa partición.. una solución es mover todas esas cosas que "crecen" a /home , que es la partición más grande del servidor.

Sin embargo, me descoloca un poco lo de los 42 GB de datos... me parece mucho para la partición / que te da OVH, y tampoco parece muy lógico que por reiniciar "adelgazen" temporalmente las bds.

¿ Puedes decirnos en qué partición están las bds de mysql, y que tamaño total tiene esa partición ?

djgondirect
04/05/2008, 13:27
Hola que tal.
Llevo varios meses usando los servicios de la empresa OVH.Tengo un dedicado MG LARGE + con las características propias del mismo (que por cierto veo que ya no se comercializa) y el cual pagué durante 1 año hace 1 mes.

Mi duda es que tengo una web que crece bastante tanto en contenidos como en visitas e intentamos que lo siga haciendo pero (asi es, hay un pero) resulta que cada pocos dias TODAS las bases de datos se caen.
Después de mucho mirar, me di cuenta de que esto se produce cuando el espacio en manager de / llega al 100% todo deja de funcionar y la web se cae hasta que procedo a reiniciar el servidor manualmente (hay que estar delante para hacerlo).

Una vez me di cuenta procedo a reiniciar el servidor antes de que este llegue al 100% y cuando está cerca del mismo lo reinicio, sin embargo no siempre es posible y por tanto la web se cae.

A dia de hoy tengo 42 GB de datos y va creciendo una media de 1 GB aproximadamente semanal y hasta los 750 que contraté aun queda bastante, sin embargo al crecer la web se cae antes.

Uso wordpress y Gallery principalmente y necesitaria urgentemente una ayuda, sobre todo para evitar tener que reiniciar el servidor.

Esperando la contestación de algun alma caritativa. Muchas gracias de antemano.

Por cierto, la distribución es CentOS.

Ya para terminar, reseñar que este servidor no se comercializa, sin embargo no nos han mejorado a nuevas características a la os usuarios que ya teníamos esos servidores, por lo tanto lo veo como una falta de respeto hacia los mismos ya que nosotros pagando el servicio tenemos un quad core y los nuevos clientes por 30€ menos mensuales ahora tienen un Xeon quad core con 250gb mas de capacidad y 4 gb mas de memoria ram.