Execute OPTIMIZE TABLE para desfragmentar tabelas para melhor desempenho

10

Estou executando o sistema operacional Linux de 64 bits. Meu sintonizador mysql está dizendo as coisas abaixo:

-------- General Statistics --------------------------------------------------
[--] Skipped version check for MySQLTuner script
[OK] Currently running supported MySQL version 5.1.61-log
[OK] Operating on 64-bit architecture

-------- Storage Engine Statistics -------------------------------------------
[--] Status: -Archive -BDB -Federated +InnoDB -ISAM -NDBCluster
[--] Data in MyISAM tables: 1G (Tables: 1914)
[--] Data in InnoDB tables: 4M (Tables: 199)
[!!] Total fragmented tables: 296

-------- Security Recommendations  -------------------------------------------
[OK] All database users have passwords assigned

-------- Performance Metrics -------------------------------------------------
[--] Up for: 6s (7K q [1K qps], 142 conn, TX: 8M, RX: 701K)
[--] Reads / Writes: 97% / 3%
[--] Total buffers: 1.7G global + 13.2M per thread (384 max threads)
[OK] Maximum possible memory usage: 6.6G (42% of installed RAM)
[OK] Slow queries: 0% (0/7K)
[OK] Highest usage of available connections: 5% (20/384)
[OK] Key buffer size / total MyISAM indexes: 1.5G/2.7G
[OK] Key buffer hit rate: 97.4% (553K cached / 14K reads)
[OK] Query cache efficiency: 64.6% (4K cached / 6K selects)
[OK] Query cache prunes per day: 0
[OK] Sorts requiring temporary tables: 0% (2 temp sorts / 337 sorts)
[OK] Temporary tables created on disk: 8% (17 on disk / 198 total)
[OK] Thread cache hit rate: 85% (20 created / 142 connections)
[OK] Table cache hit rate: 98% (438 open / 445 opened)
[OK] Open file limit used: 10% (856/8K)
[OK] Table locks acquired immediately: 99% (2K immediate / 2K locks)
[OK] InnoDB data size / buffer pool: 4.2M/8.0M


-------- Recommendations -----------------------------------------------------
General recommendations:
    Run OPTIMIZE TABLE to defragment tables for better performance
    MySQL started within last 24 hours - recommendations may be inaccurate

Suas recomendações são executar OPTIMIZE TABLE para desfragmentar tabelas para melhor desempenho; Mas eu não sei como rodar via Putty.

Existe alguém que possa me dar o código como posso executá-lo via Putty?

    
por Barkat Ullah 26.04.2012 / 03:45

2 respostas

6

OPTIMIZE TABLE é uma instrução SQL - execute-a em um cliente MySQL.

Na linha de comando do servidor, você deve ter o cliente de linha de comando instalado; você pode se conectar ao seu banco de dados no cliente com mysql -u username -p .

Consulte a documentação sobre OPTIMIZE TABLE para obter mais informações.

    
por 26.04.2012 / 04:07
17

Você também pode tentar mysqlcheck -u username -p --auto-repair --optimize --all-databases no terminal.

No que diz respeito a "otimizar tabela", você pode iniciar o MySQL como este mysql -u username -p e a partir daí você pode executar comandos. Normalmente, o primeiro comando que eu uso é show databases; , mas você deve realmente encontrar um tutorial do MySQL primeiro. O primeiro que surgiu no Google: link

Se você está usando putty ou não é irrelevante. Você pode querer dizer "da linha de comando" em vez de "via Putty".

    
por 27.12.2012 / 19:30