![]() |
Har efter mycket jobb fått ordning på min bråkande Mysql server som givetvis berodde på dålig kod och annat egenomtänkt (Köpte ett script som jag jobbat vidare på själv).
Den enda sak som mysql inte verkar släppa igenom är följande fråga: Kod:
select usertable.name, usertable.category from usertable, imagetable WHERE usertable.category = 'Tjejer' AND usertable.age >= '17' AND usertable.age <= '24' GROUP BY usertable.name ORDER BY usertable.name LIMIT 25 Om mysql får den så står den helt still tills jag dödar frågan eller startar om mysqld´n. Jag har två frågor. 1.) Vad är det för fel på frågan? 2.) Hur får jag mysql att döda frågor som tar mer än X antal sekunder? Trodde att det var: set-variable = wait_timeout=10 i my.cnf, men det var det visst inte, kan utan problem få denna fråga att ta flera tusen sekunder utan att den avbryts. |
Citat:
Thomas |
Citat:
(Var dock tvungen att göra det ännu en gång för att vara helt säker) Finns det något sätt att se så att mysql servern verkligen läser rätt configfil? |
Citat:
/Zoran |
Fabian, du har väl inte glömt att indexera alla fälten du gör sökningar i? Sen så "kan" det nog vara dumt att göra '' runt heltal.
|
Testa kör REPAIR och sedan OPTIMIZE.
Vilken verision av MySQL kör du? 4.1-serien är fortfarande mycket buggig. Jag har åkt på 3 buggar än så länge. 2 är fixade i 4.1.8 och igår hittade jag den tredje. Citat:
|
Citat:
Namn på den som äger bilden URL till bilden Kategori bilden ligger i Din senaste 10 poängen bilden fått Dom senaste 5 IP addresser som röstat på bilden Bildens poäng etc. etc. Citat:
Har provat att ta bort citationstecknerna runt heltalen, men fortfarande samma problem. Citat:
Citat:
Några andra idéer? |
Citat:
|
Citat:
Prova istället att använda följande: Kod:
select usertable.name, usertable.category from usertable WHERE usertable.category = 'Tjejer' AND usertable.age >= '17' AND usertable.age <= '24' GROUP BY usertable.name ORDER BY usertable.name LIMIT 25 Kod:
select usertable.name, usertable.category from usertable, imagetable WHERE usertable.category = 'Tjejer' AND usertable.age >= '17' AND usertable.age <= '24' AND usertable.id = imagetable.userid GROUP BY usertable.name ORDER BY usertable.name LIMIT 25 Testa och återkom, men det där borde fixat.. |
Citat:
|
Om du skall göra en join på två tabeller så måste du ha ett värde för länkar dem tillsammans. T.ex. skall din usertable ha ett user id och din imagetable ett user id. User id i imagetable talar om vilken user i usertable som en image eller flera image tillhör. En korrekt SQL-fråga skulle då vara:
Kod:
SELECT usertable.name FROM usertable, imagetable Att länka två tabeller utan att ange vad de har gemensamt kommer att returnera alla tänkbara möjligheter som finns mellan tabellerna. Ett exempel på detta är om en tabell innehåller två rader med värdena 1 och 2 och en anna tabell innehåller två rader med värdena a och b skulle en länkning utan att ange vad de har gemensamt ge resultatet: 1 a 1 b 2 a 2 b Detta kallas för Cartesian join. I princip blir resultatet antal rader i tabell_1 * antal rader i tabell_2. Har du två tabeller med 100 rader i varje blir resultatet 10.000 rader. Så två tabeller med 1.000 rader blir 1 miljon rader i retur. Klart att din server får problem. Det vore kanske bättre om du angav vad du vill ha för resultat, så att en korrekt fråga kan utformas. Jag har en känsla av att du inte får det resultat du vill ha rent logiskt även om resultatet kan se ut att vara riktigt. |
Citat:
För att bättre förstå vad jag vill ha ut, kolla på sny gga st. nak en.o rg/s ear ch.php (Fast ta bort dom onödiga mellanslagen) Det är inte jag som kodat sajten, utan det är ett köpt script, så jag har nog inte 100% koll på exakt vad det är jag vill ha ut av sökningen, och den är absolut inte optimerad. För att se hur söksidan ser ut så har ni sourcen här: sn ygg as t. na ke n. org /s ea rc h. ph p.txt s nygg ast. nake n.or g/se arch resu lts .php .tx t Har ni tips på övriga förbättringar i den så är ni varmt välkomna, jag är newbie. |
Citat:
Exempel: hedkandi.kullervo. se/class.phpmailer.phps |
Citat:
|
Citat:
Kod:
AddType application/x-httpd-php-source .phps |
Citat:
Har gjort om båda filerna till phps nu. |
Alla tider är GMT +2. Klockan är nu 18:46. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson