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.

Optimización del Servidor

Tema en 'Servidores Dedicados' iniciado por Adsl5mb, 9 Mar 2008.

  1. Adsl5mb

    Adsl5mb Usuario activo

    Hola a Todos!

    Busco optimizar los servicios de mi servidor MySQL, Apache y PHP para obtener más rendimiento.

    El servidor tiene 2 GB de RAM es un CentOS con PHP 5.2.5, Apache 2 y MySQL 5, PHP tiene puesto eAccelerator y Zend Optimizer.

    Generalmente maneja muchos usuarios online al mismo tiempo al igual que usa mucho MySQL ya que es un foro.

    En el my.conf tengo los siguientes valores
    CODE, HTML o PHP Insertado:
    [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
    en el httpd.conf no he tocado nada asi que esta como por defecto al igual que PHP.

    Agradeceria que me puedan orientar que puedo agregar para ganar en rendimiento.

    Muchas Gracias. :)
     
  2.  
  3. En eAccelerator ponle caché de 512mb de ram, la predefinida es de 16mb notaras una mayor rápidez de carga en los scripts.
     
  4. Datacenter1

    Datacenter1 Usuario activo

    Para ayudarte es necesario conocer más acerca del uso que tiene tu servidor, para esto utilizo un script llamado mysqlreport el cual nos muestra el uso en un formato fácil de comprender

    Para instalarlo basta copiar y pegar estos comandos como root en tu servidor (asumiendo que es Linux):

    CODE, HTML o PHP Insertado:
    cd /usr/local/sbin
    wget hackmysql.com/scripts/mysqlreport
    chmod 755 mysqlreport
    cd /
    
    Luego para ejecutarlo
    mysqlreport --all o mysqlreport --all --user root --password
    cambia passoword por el password de root de mysql

    Copia y pega los resultados de este script
     
  5. Adsl5mb

    Adsl5mb Usuario activo

    Al intentar ejecutar con uno o el otro me da este error:

    Can't locate DBI.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl/5.8.7 /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /usr/local/sbin/mysqlreport line 24.
    BEGIN failed--compilation aborted at /usr/local/sbin/mysqlreport line 24.

    Muchas Gracias por la ayuda
     
  6. Datacenter1

    Datacenter1 Usuario activo

    Humm falta el módulo Perl DBI

    Si tienes experiencia con módulos perl puedes instalarlo vía cpan
    cpan
    install DBI

    Si no puedes instalar el módulo, basta con que publiques la salida de
    CODE, HTML o PHP Insertado:
     mysqladmin extended-status
     
  7. Adsl5mb

    Adsl5mb Usuario activo

    Muchas Gracias, no me animo a instalar los PERL ya que no tengo muchos conocimientos en Linux, al intentar hacer eso de mysqladmin extend-status me dice:

    mysqladmin: connect to server at 'localhost' failed
    error: 'Access denied for user 'root'@'localhost' (using password: NO)'

    De que forma debo poner el password ya que por lo que veo toma como si no hubiera password.
     
  8. Datacenter1

    Datacenter1 Usuario activo

    mysql -u user -p password extended-status
     
  9. Adsl5mb

    Adsl5mb Usuario activo

    Me da estos resultados:

    Variables (--variable-name=value)
    and boolean options {FALSE|TRUE} Value (after reading options)
    --------------------------------- -----------------------------
    auto-rehash TRUE
    character-sets-dir (No default value)
    default-character-set latin1
    compress FALSE
    database (No default value)
    delimiter ;
    vertical FALSE
    force FALSE
    named-commands FALSE
    local-infile FALSE
    no-beep FALSE
    host (No default value)
    html FALSE
    xml FALSE
    line-numbers TRUE
    unbuffered FALSE
    column-names TRUE
    sigint-ignore FALSE
    port 0
    prompt mysql>
    quick FALSE
    raw FALSE
    reconnect TRUE
    socket (No default value)
    table FALSE
    debug-info FALSE
    user root
    safe-updates FALSE
    i-am-a-dummy FALSE
    connect_timeout 0
    max_allowed_packet 16777216
    net_buffer_length 16384
    select_limit 1000
    max_join_size 1000000
    secure-auth FALSE
    show-warnings FALSE

    Muchas Gracias por la ayuda
     
  10. Datacenter1

    Datacenter1 Usuario activo

    Mis disculpas por no haber sido lo suficiente claro y específico

    mysql -u root -p password extended-status y cambia password por el password de root de mysql
     
  11. Adsl5mb

    Adsl5mb Usuario activo

    He hecho lo que haz dicho primero y lo he entendido bien arriba postee los resultados.
     
  12. Datacenter1

    Datacenter1 Usuario activo

    Hay un error en el comando, mis disculpas, me pasa por escribir los comandos directos de memoria
    el comando correcto debe ser
    mysqladmin -uroot -pxxxxx extended-status xxxxx es el password root de mysql
     
  13. Adsl5mb

    Adsl5mb Usuario activo

    El password es el mismo del root? que se usa para acceder a SSH?, es que me da password incorrecto.

    Muchas Gracias 800-HELP.com :-D
     
  14. Datacenter1

    Datacenter1 Usuario activo

    No es el mismo,

    prueba con cat ~mysql/.my.cnf es probable que este grabado ahí
     
  15. Adsl5mb

    Adsl5mb Usuario activo

    No lo he podido encontrar, me dice que no existe también he probado con whereis .my.cnf y no lo encuentra, igualmente no importa por lo que veo ha andado muy bien el MySQL con las optimizaciones que he puesto anteriormente.

    Muchas Gracias
     


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


    
    
    
    
Blog · Sitios amigos: GuiaHosting · Unidominios · Interalta ·