Jak snížit zátěž na serveru - my.cnf

fotka

  • ***
  • 216
    • Zobrazit profil
    • Linux forum
    • E-mail
Jak snížit zátěž na serveru - my.cnf
« kdy: 03. 02. 2011, 14:34:07 »
Mám hodně procesů ve stavu locked u mého adresáře článků. Je to web stránka, katalog článků a běží na wordpressu, je tam asi 100,000 článků.

Server load 4.42 (8 CPUs)
Memory Used 27.77% (2289780 of 8245744)
Swap Used 12.49% (131292 of 1051064)

Někdy jde load až na 20.0 (8 CPUs) takže jsou stránky nedostupné.

Prosím jak byste mi navrhli zhruba změnit nastavení mysql tak aby se snížil load?

NYNÍ:
Citace
[mysqld]
socket = /var/lib/mysql/mysql.sock
safe-show-database
old-password=1
set-variable = max_connections=500
interactive_timeout=100
wait_timeout=600
connect_timeout=30
thread_cache_size=8
key_buffer=32M
join_buffer=8M
max_allowed_packet=512M
table_cache=1024
sort_buffer=32M
record_buffer=8M
thread_cache_size=128
max_user_connections=100

thread_concurrency=4


děkuji
Linux nováček - CeskeForum.com


kingdave

Re:Jak snížit zátěž na serveru - my.cnf
« Odpověď #1 kdy: 02. 03. 2012, 15:12:59 »
http://www.linuxweblog.com/tune-my.cnf , sice je to anglicky, ale je tam napsaný vzorec na vypočítání zátěže..

Re:Jak snížit zátěž na serveru - my.cnf
« Odpověď #2 kdy: 02. 03. 2012, 15:54:35 »
Já na ladění mysql používám
http://mysqltuner.pl/

Mirek

Re:Jak snížit zátěž na serveru - my.cnf
« Odpověď #3 kdy: 02. 03. 2012, 18:38:44 »
thread_concurrency je doporučováno 2x počet jader, pak pokud je využití paměti jen 28% tak povolit víc paměti - jde jen o to najít nejužší místo, kde tu paměť přidat
a ověřit, jestli jsou vhodné indexy, tady hledat dotazy, co dlouho trvají - viz možnost jejich logování

Mirek

Re:Jak snížit zátěž na serveru - my.cnf
« Odpověď #4 kdy: 02. 03. 2012, 18:42:40 »
a ještě v phpMyAdminovi je stránka STAV, kde je přehled proměnných MySQL serveru a upozornění na hodnoty, které jsou velké včetně návrhu, čím to zlepšit


Mirek

Re:Jak snížit zátěž na serveru - my.cnf
« Odpověď #5 kdy: 02. 03. 2012, 18:45:35 »


Lupex

Re:Jak snížit zátěž na serveru - my.cnf
« Odpověď #7 kdy: 03. 03. 2012, 10:51:29 »
A je opravdu jediným úzkým hrdle  mysql ? Bylo by možné udělat top screenshot při tom zatížení?

Re:Jak snížit zátěž na serveru - my.cnf
« Odpověď #8 kdy: 17. 03. 2012, 07:58:48 »
na prvni pohled
thread_concurrency=8  misto 4  a
key_buffer 32M
je dost blbost, melo by tam byt podstatne vic (mam tam 512MB a to jde o 2GB RAM na VPS)

nejlip na to asi funguje vyse zminovany mysqltuner a taky nepatrne lepsi

https://launchpad.net/mysql-tuning-primer
zbytek se takhle odhadem urcite delat neda

Re:Jak snížit zátěž na serveru - my.cnf
« Odpověď #9 kdy: 24. 04. 2012, 03:33:16 »
v putty napíšu veduci toto:

1: " find / -name 'my-huge.cnf' "
2: "cp /etc/my.cnf /etc/my.cnf.old"
3: "cp /usr/share/mysql/my-huge.cnf /etc/my.cnf"
4: "/etc/init.d/mysqld restart"

v treťom bode "/usr/share/mysql/my-huge.cnf" sa tento path môže líšiť, záleží na tom kde máš inštalované MYSQL filesy.

Podľa tvojho postu vidím, že používaš len málo RAMky, preto máš vysoký LOAD. Servere treba točiť do "červeného" v tomto prípade aby práve RAM mala dostatok priestoru riešiť všetky "poptávky" - sorry keď píšem ako sedlák....
Po reštartovaní MYSQL /4tý bod, by mala RAMka vybehnuť cez 50 percent...aspoň 57, ak sa tak nestane, vymeň hosting lebo nestojí za veľa 8)..../
V podstate každý server má v sebe my-huge.cnf len niektoré spoločnosti ho nemájú až tak "huge"...
a až potom sa začni hrať s http://www.day32.com/MySQL/ - tuning primer

No a nemáš za čo.

Pekný deň