Hov. Du er ikke logget ind.
DU SKAL VÆRE LOGGET IND, FOR AT INTERAGERE PÅ DENNE SIDE

Problem med stor database

Side 1 ud af 2 (15 indlæg)
Tilmeldt 2. Dec 06
Indlæg ialt: 287
Skrevet kl. 01:05
Hvor mange stjerner giver du? :

Hej Aminoer,

Jeg har en hjemmeside som er programmeret i PHP Cake. Der er tilknyttet en database på ca. 200 MB, og websitet kan ikke loade når jeg kalder det frem (det bliver ved med at loade).

Hvordan finder jeg ud af om det er systemet (PHP Cake) eller min server som ikke kan følge med?

Hvilken Virtual Dedicated Server skal jeg have for at kunne køre sitet, har kigget på Hetzner.de?

Gode råd modtages med kyshånd...

God aften til alle!

/Shock

Tilmeldt 5. Jun 12
Indlæg ialt: 0
Skrevet kl. 01:47
Hvor mange stjerner giver du? :

Hej Shock.

Hvis du får en uendelig timeout kan du forsøge at "deaktivere" din database connection ved midlertidigt at kommentere det ud.

Der er flere måder hvorpå at måle tiden for udførelsen af dine database udtræk - en simpel og effektiv kan laves således:

$starttime = microtime();

$query = mysql_query("SELECT * FROM TABLE") or die(mysql_error());

$endtime = microtime();

$timespent = $starttime - $endtime;

echo "Time spent: ".$timespent;

Det lyder dog usansynligt at en 200mb database skulle køre din side i knæ - og angiveligt loader du ikke alt data fra alle tables på samme tid..

Tilmeldt 20. Apr 07
Indlæg ialt: 16014
30% af profil udfyldt
Skrevet kl. 08:00
Hvor mange stjerner giver du? :

Hej,

Jeg ville kigge på dine udtræk og se, om de kunne optimeres. For 200MB er ikke voldsomt overhovedet, men hvis der bliver bliver trukket meget data ud, som bliver behandlet på én eller anden måde, så tager det selvfølgelig noget tid.

Med venlig hilsen
Kim Bang

Tilmeldt 2. Dec 06
Indlæg ialt: 287
Skrevet kl. 13:19
Hvor mange stjerner giver du? :

Når jeg sætter den ned til kun 1000 rækker, så virker det fint. Lige så snart jeg igen prøver at køre sitet med de 200,000 rækker så går hele serveren ned (mine andre sites virker heller ikke før jeg restarter min VDS)...

Det må da være serveren?

/Shock

Tilmeldt 20. Apr 07
Indlæg ialt: 16014
30% af profil udfyldt
Skrevet kl. 13:22
Hvor mange stjerner giver du? :
Gennemsnit 2,0 stjerner givet af 1 person

Umiddelbart får serveren for meget at lave - tjek hvordan data'ene bliver behandlet på dit site - det er garanteret der du skal finde løsningen. :)

Tilmeldt 20. Apr 07
Indlæg ialt: 16014
30% af profil udfyldt
Skrevet kl. 17:01
Hvor mange stjerner giver du? :

Shock:

Når jeg sætter den ned til kun 1000 rækker, så virker det fint. Lige så snart jeg igen prøver at køre sitet med de 200,000 rækker så går hele serveren ned (mine andre sites virker heller ikke før jeg restarter min VDS)...

Det må da være serveren?



Hvilken storage engine kører du med? MyISAM eller Innodb? Har du optimeret MySQL?

Du burde jo kunne cache det mest i ram og afvikle derfra, så længe den ikke er større end 200MB, tænker jeg. 

Prøv at kør mysqltuner.pl og se, hvad den siger til dine nuværende indstillinger. Der kan godt være en eller anden indstilling som er helt skæv i forhold til setup og din datakonfiguration.

Fra DK- Struer
Tilmeldt 26. Dec 06
Indlæg ialt: 2831
Fra  Ifindu.dk Skrevet kl. 18:00
Hvor mange stjerner giver du? :

Shock:

Når jeg sætter den ned til kun 1000 rækker, så virker det fint. Lige så snart jeg igen prøver at køre sitet med de 200,000 rækker så går hele serveren ned (mine andre sites virker heller ikke før jeg restarter min VDS)...

Det må da være serveren?

Ja det er serveren der begrænser dit load af data ind i memory, men du skal jo heller ikke lave en sql-udtræk der henter alt din data ud på een gang - det er jo forkert programmering - hvis jeg læser det korrekt, prøver du at loade alt data ud fra db'en på een gang, det giver jo et memory-forbrug på minimum 200mb, og det tror jeg ikke du har tilstrækkelig med rettigheder til.

Hvordan ser den sql-sætning ud som du bruger til at trækee data ud med, altså den der får serveren til at gå ned?

Få hjælp til at det tekniske omkring Web og Grafisk -  https://icode.dk

Tilmeldt 10. Nov 09
Indlæg ialt: 0
Skrevet kl. 19:39
Hvor mange stjerner giver du? :

Ja, det lyder umiddelbart helt vildt at du skal hente 200.000 rækker fra databasen for at vise en side! Det kunne tyde på at dit applikationsdesign er gået lidt galt. Bruger du et tilpasset standard-system, eller er det 100% hjemmelavet?

Tilmeldt 2. Dec 06
Indlæg ialt: 287
Skrevet kl. 23:21
Hvor mange stjerner giver du? :

Forsiden laver en 'paging' med alle 200,000 rækker med 20 på hver side. Det er nok der den glipper Stick out tongue

Jeg prøver at lave en alfabetisk liste eller lignende for at se om det hjælper...

Tak for hjælpen allesammen, det er virkelig fedt at i gider bruge Jeres tid på at hjælpe andre Yes

/Shock

Fra DK- Struer
Tilmeldt 26. Dec 06
Indlæg ialt: 2831
Fra  Ifindu.dk Skrevet kl. 02:11
Hvor mange stjerner giver du? :

ja din sql skal kun hente 20 ad gangen og så skal din forrige - næste - link generere en ny sql til de 20 næste eller forrige afhængig af hvad man trykker på.

husk at lukke conn hver gang du har åbnet den, -

se et eksempel her:

http://www.roseindia.net/sql/mysql-example/pagination.shtml

eller søg selv på "sql pagination" php / asp

Få hjælp til at det tekniske omkring Web og Grafisk -  https://icode.dk

Side 1 ud af 2 (15 indlæg)