1. ¡OFERTA! con cupón "DIRVPS": hosting por $0,01 y también VPS Linux y Windows por $0,01 el primer mes por Interserver ← publi
    Descartar aviso
Descartar aviso
Al usar este sitio web, aceptas que nosotros y nuestros socios podamos establecer cookies para fines tales como personalizar el contenido y la publicidad. Más información.

Optimizar MySQL

Tema en 'Servidores Dedicados' iniciado por frankxd, 20 Oct 2007.

  1. Datacenter1

    Datacenter1 Usuario activo

    En [safe_mysqld] debe ser 'err-log=/var/log/mysqld.log'

    En mi primer bloque de comandos, cometí el error de ponerlo en la sección [mysqld], pero debe ser tal como aparece en el segundo bloque de comandos, de hecho la configuración la he probado en un vps corriendo bajo mysql 4 y ha funcionando sin problemas, lamentablemente creo que frank no probó usar la segunda configuración y reiniciar completamente el vps
     
  2. frankxd

    frankxd Usuario activo

    rayos, me sigue saliendo el error al reiniciar el MYSQL

    CODE, HTML o PHP Insertado:
     ERROR! MySQL PID file could not be found!
    Starting MySQL................................... ERROR!
    
    
    a que se puede deber esto, que parece como si no pudiese editar para nada el my.cnf

    log: tail -50 /var/log/mysql.log

    CODE, HTML o PHP Insertado:
    
    071020 20:01:24 [Note] /usr/sbin/mysqld: Shutdown complete
    
    071020 20:01:24  mysqld ended
    
    071020 20:02:07  mysqld started
    071020 20:02:07 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use
    071020 20:02:07 [ERROR] Do you already have another mysqld server running on port: 3306 ?
    071020 20:02:07 [ERROR] Aborting
    
    071020 20:02:07 [Note] /usr/sbin/mysqld: Shutdown complete
    
    071020 20:02:07  mysqld ended
    
    071020 20:03:45  mysqld started
    071020 20:03:45 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use
    071020 20:03:45 [ERROR] Do you already have another mysqld server running on port: 3306 ?
    071020 20:03:45 [ERROR] Aborting
    
    071020 20:03:45 [Note] /usr/sbin/mysqld: Shutdown complete
    
    071020 20:03:45  mysqld ended
    
    071020 20:12:26  mysqld started
    071020 20:12:26 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use
    071020 20:12:26 [ERROR] Do you already have another mysqld server running on port: 3306 ?
    071020 20:12:26 [ERROR] Aborting
    
    071020 20:12:26 [Note] /usr/sbin/mysqld: Shutdown complete
    
    071020 20:12:26  mysqld ended
    
    071020 20:13:12  mysqld started
    071020 20:13:12 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use
    071020 20:13:12 [ERROR] Do you already have another mysqld server running on port: 3306 ?
    071020 20:13:12 [ERROR] Aborting
    
    071020 20:13:12 [Note] /usr/sbin/mysqld: Shutdown complete
    
    071020 20:13:12  mysqld ended
    
    071020 20:13:52  mysqld started
    071020 20:13:52 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use
    071020 20:13:52 [ERROR] Do you already have another mysqld server running on port: 3306 ?
    071020 20:13:52 [ERROR] Aborting
    
    071020 20:13:52 [Note] /usr/sbin/mysqld: Shutdown complete
    
    071020 20:13:52  mysqld ended
    
    
    
    alguna idea?
     
  3. frankxd

    frankxd Usuario activo

    Datacenter1
    el que yo estoy usando es el último bloque que pusiste:

    CODE, HTML o PHP Insertado:
    mv /etc/my.cnf /etc/my.cnf.backup2
    touch /etc/my.cnf
    touch /var/log/mysql.log
    chown mysql:mysql /var/log/mysql.log
    cat<<EOF>> /etc/my.cnf
    [mysqld]
    socket=/var/lib/mysql/mysql.sock
    datadir=/var/lib/mysql
    local-infile
    old-passwords
    safe-show-database
    low-priority-updates
    symbolic-links
    skip-locking
    skip-innodb
    key_buffer_size=16M
    query_cache_size=256M
    query_cache_limit=8M
    query_cache_type=1
    table_cache=2048
    join_buffer_size=2M
    open_files_limit=6144
    thread_cache_size=64
    concurrent_insert=2
    read_buffer_size=4M
    tmp_table_size=128M
    max_heap_table_size=64M
    max_connections=200
    max_user_connections=30
    interactive_timeout=20
    wait_timeout=20
    connect_timeout=6
    pid-file=/var/run/mysqld/mysqld.pid
    open_files_limit=8192
    
    [safe_mysqld]
    err-log=/var/log/mysql.log
    pid-file=/var/run/mysqld/mysqld.pid
    EOF
    service mysql restart
    
    Ahora reiniciare el VPS, haber que pasa
    Salu2
     
  4. frankxd

    frankxd Usuario activo

    El problema ya ha sido resuelto,
    Gracias a Datacenter1 y todos que estuvieron dando su tiempo por ayudarme, muchas Gracias.

    Saludos :aprueba:
     
  5. Datacenter1

    Datacenter1 Usuario activo

    La solución fue comentar las lineas

    #socket=/var/lib/mysql/mysql.sock
    #datadir=/var/lib/mysql

    que a pesar de que las rutas estaban correctas, por alguna razón mysql se negaba a arrancar.

    Se aprovechó para optimizar un poco httpd e instalar eaccelerator

    Gracias a WebTech por su asistencia durante esta optimización

    frankxd, espero que estés contento con los resultados
     
  6. ideasmultiples

    ideasmultiples Usuario activo

    No debes de anular esas líneas, tendrás problemas....
     
  7. Datacenter1

    Datacenter1 Usuario activo

    Saludos.

    De que hablas? que tipo de problemas puede tener? puedes ser más específico?
     
  8. ideasmultiples

    ideasmultiples Usuario activo

    En esas dos líneas estás configurando la ruta donde están los datos y el socket de mysql

    #socket=/var/lib/mysql/mysql.sock
    #datadir=/var/lib/mysql

    Si no te funciona con ellas quiere decir que se ha tocado algo que no se debía o que se han asignado permisos incorrectos, por lo que tarde o temprano fallará.

    MySQL TIENE que arrancar con esas lineas como parte de su configuración, si no lo hace no se puede contestar " por alguna razón mysql se negaba a arrancar" hay que averiguar por que no arranca, muy probablemente por que por algún motivo se está llamando 2 veces al "arranque de mysql".

    Revisa nuevamente todo, comprueba que no estén duplicadas en la configuración.

    Por cierto, lo que se debe de aconsejar en estos casos es que si no funciona la configuración hay que recuperar INMEDIATAMENTE la anterior y comprobar que funcione el servicio correctamente, a partir de eso se empiezan a añadir los valores modificados

    Además para aconsejar una configuración de MySQL PRIMERO se debe conocer la configración REAL del servidor no lo que marca el top, en una VPS no tiene por que ser lo real, como dije en un principio en una VPS con 1GB real no debe de tener NINGUN problema con el Mysql, con los acceso que tiene usando la configuración básica, que precisamente es la que MENOS memoria consume.
     
  9. Datacenter1

    Datacenter1 Usuario activo

    Verifica la información que manejas: MySQL NO crea ni necesita los valores en el archivo de configuración, puedes incluso borrar el archivo de configuración y MySQL igualmente funcionará, de hecho cuando instalas mysql desde rpms o fuentes, mysql no establece esos valores en el my.cnf

    En el caso específico del usuario que solicitó ayuda, había un error en la configuración inicial (my bad) sumado a un problema con el proceso y el pid

    Por lo que la solución fue establecer la configuración y hacer un reboot, luego se afinó un poco.

    Concuerdo contigo en lo de comenzar con la configuración inicial, de hecho mis rutinas de optimización mysql las comienzo con un my.cnf en blanco, en este caso debido a la inexperiencia de frank, hubo que hacerlo de otra manera.

    Los valores del vps son reales, el usuario me contactó vía correo electrónico y me pidió como favor que ingresará a sus servidor y me encargará de hacerlo yo mismo, por supuesto lo ayudé e hicimos algunos cosas tareas de optimización extras. (optimización http, instalación de un acelerador de php, etc)

    Creo que de aquí se pueden desprender algunas buenas lecciones:

    1- Intentar una optimización sin los conocimientos necesarios es buscarse problemas.

    2- Cada servidor es diferente, lo que funciona para uno seguro NO funcionará para otro.

    Frank: Puedes estar tranquilo, la configuración que he realizado para ti funcionará sin problemas.
     
  10. ideasmultiples

    ideasmultiples Usuario activo

    Solo un comentario,
    Esas lineas "no son necesarias" por que están establecidas por defecto en la compilación de MySQL, pero son utilizadas por algunos paneles de control y programas de monitorización para su propia configuración y al no estar fallarán, o si se instala otra RPM de Mysql en una actualización del nodo, en la que cambie la configuración por defecto tambien fallará.

    Concretamente son las únicas establecidas en la configuración base de un VPS por defecto, ten en cuenta que en las VPS pasan cosas que no pasan en los servidores normales, como actualizar su s.o. sin preguntar nada a nadie.

    Y por cierto si el MySQL no arranca con con esas líneas en el config quiere decir QUE TIENES ALGO QUE FUNCIONA MAL, no le des mas vueltas :)
     
  11. Adsl5mb

    Adsl5mb Usuario activo

    He utilizado lo que ha recomendado 800-Help.com en el primer post y me ha funcionado perfecto, el segundo no me funciono daba el mismo problema de PID y no podia iniciar.

    La verdad que noto que esta consumiendo menos en el top comparado con antes.

    Ahora solo me resta optimizar apache y php

    Muchas Gracias
     
  12. Datacenter1

    Datacenter1 Usuario activo

    Me alegra que te haya servido, sin embargo debes tener en cuenta que los valores que recomendé eran para la situación en particular que presentaba el otro usuario y pueden o no pueden ayudar en tu caso particular.

    Consejo, abre otro tema solicitando consejo para tu optimización, publica tus valores y con gusto te daré una mano.

    Otro opción es:
    wget http://www.day32.com/MySQL/tuning-primer.sh
    chmod 700 tuning-primer.sh
    ./tuning-primer.sh

    Te dará algunas recomendaciones importantes
     
  13. Adsl5mb

    Adsl5mb Usuario activo

    Abrire otro tema, aunque igual mi archivo my.cnf estaba vacio asi que no tenia ningún valor en ese caso.
     


Alojamiento web, Hosting Reseller, Servidores Dedicados - All in Hosting


    
    
    
    
Blog · Sitios amigos: GuiaHosting · Unidominios · Interalta ·