/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
mySQL hastighed...
Fra : Lars Aagaard


Dato : 25-04-04 18:42

Hej,

Jeg har netop lagt 16.000 poster fra en Access database over i mySQL (4.0.18-nt)

Mod forventning er mine asp-sider blevet MEGET langsommere, end da de kørte
op mod Access-databasen, det var jo ikke lige planen...

- Kan det skyldes en opsætning af mySQL lokalt på min computer?

- Kan der evt. forventes mere speed når databasen lægges op på udbyders
database-server?

Tips til mySQL-hastighedsoptimering modtages med "kyshånd"

--
Med venlig hilsen
Lars Aagaard

Lystfisker Forum - Danmarks mest aktive forum for lystfiskere
http://www.123nu.dk/

Fangster.dk - Din personlige fangstjournal på nettet.
http://www.fangster.dk/



 
 
Morten Guldager (25-04-2004)
Kommentar
Fra : Morten Guldager


Dato : 25-04-04 19:13

Sun, 25 Apr 2004 at 17:42 GMT Lars Aagaard wrote
>
> Tips til mySQL-hastighedsoptimering modtages med "kyshånd"

Check om mysql bruger dine index'er som forventet med explain komandoen.



/Morten

Lars Aagaard (26-04-2004)
Kommentar
Fra : Lars Aagaard


Dato : 26-04-04 16:08

> Check om mysql bruger dine index'er som forventet med explain komandoen.

Hej Morten,

Explain fortæller mig at mine indexer er i brug...:
f.eks.: | possible_keys: antal | key: antal | o.s.v....

Jeg har forsøgt at "tune" min indexer yderligere, men det har
ikke givet mere hastighed...

De 16.000 poster fra Access blev konverteret til mySQL gennem
Access2mySQL. Dette program har kun lagt .frm-filer i database-mappen,
samt en 59 mb. ibdata1-fil i Data-mappen.

Bruges der normalt ikke 3 filer pr. tabel (.frm - .MYD - .MYI) ?

Ved ikke om det har nogen betydning?

/Lars



Morten Guldager (26-04-2004)
Kommentar
Fra : Morten Guldager


Dato : 26-04-04 16:58

Mon, 26 Apr 2004 at 15:07 GMT Lars Aagaard wrote
>> Check om mysql bruger dine index'er som forventet med explain komandoen.
>
> Explain fortæller mig at mine indexer er i brug...:
> f.eks.: | possible_keys: antal | key: antal | o.s.v....
>
> Jeg har forsøgt at "tune" min indexer yderligere, men det har
> ikke givet mere hastighed...

Spøjst. Jeg har ikke rigtig nogle gode ideer. Kan du konkretisere
problemstillingen yderligere?

Har du kontrol over hvordan applikationen gør når den benytter databasen?

> De 16.000 poster fra Access blev konverteret til mySQL gennem
> Access2mySQL. Dette program har kun lagt .frm-filer i database-mappen,
> samt en 59 mb. ibdata1-fil i Data-mappen.
>
> Bruges der normalt ikke 3 filer pr. tabel (.frm - .MYD - .MYI) ?

Du kører med innodb tabeller. Dem er jeg imponeret over hastigheden af.

> Ved ikke om det har nogen betydning?

Måske.


/Morten

Lars Aagaard (26-04-2004)
Kommentar
Fra : Lars Aagaard


Dato : 26-04-04 23:31

> Spøjst. Jeg har ikke rigtig nogle gode ideer. Kan du konkretisere
> problemstillingen yderligere?

Jeg har nogle ASP-sider med MANGE sql-forspørgelser på hver side.
Disse sider har kørt upåklageligt med en Access-database.
Med mySQL databasen er siderne blevet væsentligt langsommere.

Jeg har mistanke om at det er et "tunings-problem" af mySQL-serveren på min
computer (1,8 mhz. P3 - 256 ram - win2000 pro).
Harddisken arbejder arbejder voldsomt når der trækkes fra databasen....

Min "my.cnf" er sat op som: "my-huge"
Er der andre steder man kan optimere mySQL-serveren?

> Har du kontrol over hvordan applikationen gør når den benytter databasen?

Jeg Connetcer således:
Set Conn=server.CreateObject("Adodb.Connection")
Conn.Open "Driver={mySQL}; Server=localhost; OPTION=3; Database=xxxx; UID=xxxxx; PWD=xxxx"

En typisk SQL:
strSQL = "SELECT fangst, SUM(antal)AS antal2, SUM(totalvaegt) AS TOT FROM fangster Where antal > 0 And fangst <> '' group by fangst
Order By antal2 DESC LIMIT 20"

Set rs = Conn.Execute(strSQL)
Do Until rs.EOF

rs.MoveNext
Loop
rs.Close
Set Rs = Nothing
Conn.Close
Set Conn = Nothing

/Lars




Lars Aagaard (27-04-2004)
Kommentar
Fra : Lars Aagaard


Dato : 27-04-04 00:26

Tilføjede nedenstående til min my.ini:

innodb_data_file_path = ibdata1:10M:autoextend
set-variable = innodb_buffer_pool_size=90M
set-variable=key_buffer=100M

Så kom der fart over feltet....

/Lars



Kim Andersen (27-04-2004)
Kommentar
Fra : Kim Andersen


Dato : 27-04-04 12:48

"Lars Aagaard" <lars@123nu.dk> wrote in message
news:c6k611$2j0f$1@news.cybercity.dk...
> Tilføjede nedenstående til min my.ini:
>
> innodb_data_file_path = ibdata1:10M:autoextend
> set-variable = innodb_buffer_pool_size=90M
> set-variable=key_buffer=100M
>
> Så kom der fart over feltet....
>

Denne her har også sov effekt.

query_cache_size=24M

/Kim



Kim Andersen (27-04-2004)
Kommentar
Fra : Kim Andersen


Dato : 27-04-04 13:02

> Denne her har også sov effekt.
>
> query_cache_size=24M
>
> /Kim

sov => sjov




Troels Arvin (27-04-2004)
Kommentar
Fra : Troels Arvin


Dato : 27-04-04 06:54

On Tue, 27 Apr 2004 00:30:49 +0200, Lars Aagaard wrote:

> Min "my.cnf" er sat op som: "my-huge"

Har du overvejet _ikke_ at forsøge at "tune" den? Min erfaring er, at
MySQL langt hen ad vejen har en fornuftig default-optræden (svarende til
ingen eller en meget kort my.cnf fil), og at det kan give et
performance-problem, hvis man begynder at skrue på alverdens
konfigurationsparametre.

--
Greetings from Troels Arvin, Copenhagen, Denmark


Peter Brodersen (27-04-2004)
Kommentar
Fra : Peter Brodersen


Dato : 27-04-04 16:23

On Tue, 27 Apr 2004 07:54:24 +0200, Troels Arvin <troels@arvin.dk>
wrote:

>Min erfaring er, at
>MySQL langt hen ad vejen har en fornuftig default-optræden (svarende til
>ingen eller en meget kort my.cnf fil), og at det kan give et
>performance-problem, hvis man begynder at skrue på alverdens
>konfigurationsparametre.

Hvis ikke jeg husker meget galt, så er der ikke reserveret noget plads
til querycache'n (med query_cache_size) med default-konfigurationen.
Selv bare få MB kan gøre underværker for normale, små sites, der laver
langt flere selects end inserts.

Dog, "risikoen" ved at bruge querycachen er, at man (hvis man ikke har
styr på datastrukturering) kan have nogle absurd dårligt optimerede
queries, uden rigtigt at opdage det..

--
- Peter Brodersen

Ugens sprogtip: "Der er et yndigt land" (og ikke "Det er et yndigt land")

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste