ďťż
 
optymalizacja pracy bazy mysql ďťż
 
optymalizacja pracy bazy mysql
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

optymalizacja pracy bazy mysql



RT - 26-11-2005 22:29
optymalizacja pracy bazy mysql
  Witam

Od dłuższego czasu kombinuję jak zoptymalizować pracę bazy danych mysql.
Mam na serwerze na slacku postawionego apacha 1.3.34 oraz mysqla 4.1.14.
Sprzęt to P4 z jądrem skompilowanym pod P4 HT (linux widzi 2 procesory) do
tego 2G ramu oraz dyski SATA.

Korzystam z galerii 4images w której jest 25,000 plików+ phpadsnew

dziennie jest około 250,000-300,000 odsłon.

Serwer praktycznie cały czas jest obciążony (load 1) wieczorami jeszcze
bardziej.
Procesor obciąża głównie baza mysql, pamięć również baza mysql.
Jako konfiga mysqla mam my-large.cnf (config file for large systems)

W jaki sposób mogę zoptymalizować bazę danych? żeby jednak trochę mniej
męczyła serwer.

Pozdrawiam
Radek

--
www.rotfl.ltd.pl - Humor w sieci





Wojtek pBT (lapt) - 26-11-2005 22:29

  Dnia 2005-11-25 12:10, Użytkownik RT napisał:
> Witam
>
> Od dłuższego czasu kombinuję jak zoptymalizować pracę bazy danych mysql.
> Mam na serwerze na slacku postawionego apacha 1.3.34 oraz mysqla 4.1.14.
> Sprzęt to P4 z jądrem skompilowanym pod P4 HT (linux widzi 2 procesory)
> do tego 2G ramu oraz dyski SATA.

ile ten proc ma keszu?

>
> Korzystam z galerii 4images w której jest 25,000 plików+ phpadsnew

nie wiem do końca co to za cuda, złaszcza "phpadsnew".

>
> dziennie jest około 250,000-300,000 odsłon.

przelicz to na zapytania, zobacz w jaki sposób wykonywane jest
połączenie z BD. Przy tej ilości zapytań, to pconnect powinno zachowywać
się przewidywalnie

> W jaki sposób mogę zoptymalizować bazę danych? żeby jednak trochę mniej
> męczyła serwer.

Pobierać z bazy mniej miniaturek, a poza tym to:

1) właściwe indeksy. Ale nie wiem, jaki masz schemat bazy danych.
Zwłaszcza na primary key tabeli

2) Wypadało by, aby miniaturki były keszowane i pobierane bezpośrednio z
dysku, bez pośrednictwa z BD. No ew. baza pyta się czy to jest właściwa
niniaturka:

SELECT data_modyfikacji, ext FROM tab WHERE id=$id;

header(własciwy nagłówek dla własciwego rozszerzenia);

if(file_exists(md5($id.$data_modyfikacji).".".$ext ))
readfile(md5($id.$data_modyfikacji).".".$ext);
else
zapisz_plik_na_dysku_i_wyslij_userowi($id);

ew. Jeżeli uda Ci się przekonać Apacza i mod_rewrite, aby jeżli plik
istnieje to nic by nie robił, a jeżeli nie, to wywołal PHP z własciwymi
parametrami.

pBT




kropka - 26-11-2005 22:29

  Użytkownik "Wojtek pBT (lapt)" <bato3@WirtualanPolskap.pl> napisał w
wiadomości news:dm7kug$4gc$1@news.dialog.net.pl...
> Dnia 2005-11-25 12:10, Użytkownik RT napisał:
>> Witam
>>
>> Od dłuższego czasu kombinuję jak zoptymalizować pracę bazy danych mysql.
>> Mam na serwerze na slacku postawionego apacha 1.3.34 oraz mysqla 4.1.14.
>> Sprzęt to P4 z jądrem skompilowanym pod P4 HT (linux widzi 2 procesory)
>> do tego 2G ramu oraz dyski SATA.
>
> ile ten proc ma keszu?
>

oto dane proca:
root@quino:/# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 15
model : 4
model name : Intel(R) Pentium(R) 4 CPU 3.00GHz
stepping : 1
cpu MHz : 3006.943
cache size : 1024 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 5
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni monitor ds_cpl
cid
bogomips : 6003.09

processor : 1
vendor_id : GenuineIntel
cpu family : 15
model : 4
model name : Intel(R) Pentium(R) 4 CPU 3.00GHz
stepping : 1
cpu MHz : 3006.943
cache size : 1024 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 5
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni monitor ds_cpl
cid
bogomips : 6003.09

>>
>> Korzystam z galerii 4images w której jest 25,000 plików+ phpadsnew
>
> nie wiem do końca co to za cuda, złaszcza "phpadsnew".
>

phpadsnew jest to system wymiany banerów i reklam na stronie
http://phpadsnew.com/two/

4images:
http://www.4images.net/

>> dziennie jest około 250,000-300,000 odsłon.
>
> przelicz to na zapytania, zobacz w jaki sposób wykonywane jest połączenie
> z BD. Przy tej ilości zapytań, to pconnect powinno zachowywać się
> przewidywalnie
>
Zapytań jest dużo - kilka na 1 odsłonę strony

- stałe połączenie w phpadsnew faktycznie pomogło

będę musiał przerobić 4images :(

>> W jaki sposób mogę zoptymalizować bazę danych? żeby jednak trochę mniej
>> męczyła serwer.
>
> Pobierać z bazy mniej miniaturek, a poza tym to:
>
> 1) właściwe indeksy. Ale nie wiem, jaki masz schemat bazy danych.
> Zwłaszcza na primary key tabeli
>
> 2) Wypadało by, aby miniaturki były keszowane i pobierane bezpośrednio z
> dysku, bez pośrednictwa z BD. No ew. baza pyta się czy to jest właściwa
> niniaturka:
>
>
> SELECT data_modyfikacji, ext FROM tab WHERE id=$id;
>
> header(własciwy nagłówek dla własciwego rozszerzenia);
>
> if(file_exists(md5($id.$data_modyfikacji).".".$ext ))
> readfile(md5($id.$data_modyfikacji).".".$ext);
> else
> zapisz_plik_na_dysku_i_wyslij_userowi($id);
>
>
> ew. Jeżeli uda Ci się przekonać Apacza i mod_rewrite, aby jeżli plik
> istnieje to nic by nie robił, a jeżeli nie, to wywołal PHP z własciwymi
> parametrami.
>
4images ma własny system cache - muszę go dokładniej potestować bo narazie
nie zauważyłem zeby jakoś mniej obciążał serwer

Tak czy inaczej wielkie dzięki za wskazówki, będę walczył dalej i tak już
wydaje się być lepiej

Radek
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [mysql] =?ISO-8859-2?Q?Za=E6mienie=2E=2E=2E_jak_wy=B6wietli=E6?==?ISO-8859-2?Q?=2E=2E=2E?= [MySQL] =?ISO-8859-2?Q?Wy=B6wietlenie_kolejnej_pozycji=2C_?==?ISO-8859-2?Q?jak=B1_mia=B3by_dany_rekord=2C_gdybym_czyta=B3 _?==?ISO-8859-2?Q?wg_konkretnych_kryteri=F3w=2E_Da_si=EA_=3F?= [mysql 4.0.x] przenoszenie kolum =?ISO-8859-2?Q?mi=EAdzy_bazam?==?ISO-8859-2?Q?i_cd_=2E=2E=2E_?= [MySQL] =?ISO-8859-2?Q?z=B3=B1czenie_tabeli_u=BFytkownik_i?==?ISO-8859-2?Q?_zdj=EAcia_z_wyborem_zdj=EAcia_domy=B6lnego?= [MySQL] Jak =?ISO-8859-2?Q?wpisa=E6_do_tabeli_pozycje_dl?==?ISO-8859-2?Q?a_wierszy_gdybym_te_wiersze_wybiera=B3_w_ok?== ?ISO-8859-2?Q?re=B6lonej_kolejno=B6ci_=3F?= Gdzie MySQL 4.1, a gdzie 5.0? [MySQL 4.0...4.1] zabezpieczenie przed =?ISO-8859-2?Q?jednoczesn?==?ISO-8859-2?Q?=B1_edycj=B1?= [MS SQL] "set names" (mySQL) w MS SQL [mysql 5.x] jak =?ISO-8859-2?Q?zrealizowa=E6_zapytanie=3F_cz?==?ISO-8859-2?Q?yli_podzapytanie_i_wi=EAcej_ni=BF_jeden_rz=B1? ==?ISO-8859-2?Q?d_wynik=F3w?= MySQL - jak =?ISO-8859-2?Q?wyeksportowa=E6_zawarto=B6=E6_wie?==?ISO-8859-2?Q?lkiej_tabeli?=
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • oefg.opx.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com