Portál AbcLinuxu, 15. května 2024 12:07


Dotaz: Optimalizacia nastaveni MySQL

26.8.2008 03:44 Uncle Puncle
Optimalizacia nastaveni MySQL
Přečteno: 1501×
Odpovědět | Admin
Zdravim,

chcel by som vyladit MySQL databazu (MySQL 5 na FreeBSD 6.2), pretoze mam mensie problemy. Databaza MySQL je na /var, ktory ma vsak len 4 giga miesta. Toto miesto mi zacina dochadzat, kedze sa vytvaraju zrejme indexovacie subory. Tie su ulozene v /var/db/mysql a maju oznacenie nazov_servera-bin.000001 az po 000011. Zaberaju skoro 2GB miesta. Pred tyzdnom sa mi stalo, ze sa zaplnilo miesto v /var a padla databaza. Po zmazani tychto zrejme index suborov a naslednom restarte aj tak nenabehla, pretoze sa nemohol vytvorit sock.mysql, neviem kde bol problem, ale opravil mi to potom kamarat.

Preto by som chcel poprosit niekoho kto ma prehlad v MySQL a dokazal by poradit co a ako mam upravit v configu, aby MySQL vyuzivala viacej RAMku ako disk. HW konfiguracia servera je: Intel E6400, 3GB RAM, WD Raptor 10K RPM (mirror RAID).

Config my.cfg vyzera asi takto:
[mysqld]
bind-address    = 127.0.0.1
port		= 3306
socket		= /tmp/mysql.sock
skip-locking
key_buffer = 512M
max_allowed_packet = 16M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size = 32M
expire_logs_days = 4
thread_concurrency = 4
max_connections=1000

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

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

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

[mysqlhotcopy]
interactive-timeout
Tu je stav pamate:
nazov_servera# top
last pid: 22165;  load averages:  0.03,  0.08,  0.08                                                                                                               up 6+05:55:51  03:38:39
85 processes:  2 running, 82 sleeping, 1 zombie
CPU states:     % user,     % nice,     % system,     % interrupt,     % idle
Mem: 595M Active, 1995M Inact, 208M Wired, 162M Cache, 112M Buf, 23M Free
Swap: 4096M Total, 11M Used, 4085M Free
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

26.8.2008 08:38 noname
Rozbalit Rozbalit vše Re: Optimalizacia nastaveni MySQL
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zdravim, subory nazov_servera-bin.xxxxxx su binarne logy. Ak nepouzivate replikaciu, kludne ich mozete mazat. Alebo este lepsie nastavit parametre expire_logs_days(pocet dni logu) max_binlog_size(max. velkost kazdeho log suboru), pripadne ostatne "binlog" parametre podla manualu.
26.8.2008 09:21 FooBar
Rozbalit Rozbalit vše Re: Optimalizacia nastaveni MySQL
MySQL nijak aktivne nepouzivam -- nepouzivaji se nahodou binlogy i na recovery pripadnych poskozenych dat nad InnoDB?
26.8.2008 09:59 Vskutečnosti Saýc | skóre: 7
Rozbalit Rozbalit vše Re: Optimalizacia nastaveni MySQL
Pokud je mi znamo, tak k tomu jsou zvlast intent logy innodb (ac se jim mozna rika jinak).

Jinak, spis nez mazat je lepsi je asi vypnout, at je ten system vubec nevytvari.
29.8.2008 15:09 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Optimalizacia nastaveni MySQL
to je hlupost, binarne logy sa pouzivaju aj pri recovery a ja teba absolutne nedoporucujem ich vypinat! inak povedane, ak ich nebudes mat a nastane nejaky vypadok (napr. vypadok elektriny), pri ktorom sa natvrdo vypne aj server, tak ti data celkom iste zostanu v nekonzistentnom stave.
26.8.2008 14:39 Uncle Puncle
Rozbalit Rozbalit vše Re: Optimalizacia nastaveni MySQL
Dobre, vdaka, skusim to nastavit a uvidim. Este sa chcem spytat, ci je mozne nastavit, aby MySQL vyuzivala viacej RAMku, nakolko moja databaza ma nieco malicko pod 1GB a niekedy mam pocit, ze nacitanie vacsieho mnozstva dat z db trva aj par sekund, este horsie je to s vlozenim dat. Mam velke forum postavene na phpBB a pri odosielani prispevku to ide niekedy aj 5 sekund. Vytazenie servera je male, stranky idu bleskurychle, avsak pri odoslani prispevku to niekedy dost trva. Preto by som bol rad keby sa dalo nastavit, aby sa hoci aj cela db nacitala do pamate. Je to mozne? Snad som to dobre vysvetlil o co mi ide :)
Heron avatar 26.8.2008 15:23 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Optimalizacia nastaveni MySQL
V linuxových distrech jsou example configy od mikro až pro 4GB InnoDB (na základě toho jsem si zoptimalizoval své MySQL). Je to v /usr/doc/share/mysql-server*/.

Jo a binární logy můžeš doma v klidu vypnout (stačí zakomentovat řádek log-bin=...).

Heron avatar 26.8.2008 15:28 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Optimalizacia nastaveni MySQL
Přílohy:
Dávám ti je do přílohy.

28.8.2008 00:08 Uncle Puncle
Rozbalit Rozbalit vše Re: Optimalizacia nastaveni MySQL
Vdaka, vypol som tie logy a hned je to ine, uz sa nic neuklada, kleslo dokonca aj vytazenie pamate trosku a uvolnilo sa dost miesta, takze som rad, ze ste mi tu vsetci pomohli.

No teraz som si vsimol, ze MySQL nerobi logy. Mam nastavenu cestu pre tvorenie log suboru, avsak ten sa nerobi. Adresare existuju, subor nie, ale ten subor by sa mal predsa vytvorit automaticky. Nevie niekto kde by mohol byt problem?
Heron avatar 28.8.2008 07:43 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Optimalizacia nastaveni MySQL

Ach jo chlape, trochu čtení v manuálu by to chtělo. ;-)

log-error = /var/log/mysqld/error.log
log-slow-queries = /var/log/mysqld/slow.log
28.8.2008 16:50 Uncle Puncle
Rozbalit Rozbalit vše Re: Optimalizacia nastaveni MySQL
Ano, presne tak to mam nastavene a nic sa nedeje, neloguje to!
Heron avatar 28.8.2008 17:08 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Optimalizacia nastaveni MySQL
Má tam MySQL démon právo zápisu?

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.