WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   MySQL - kluster eller inte? (https://www.wn.se/forum/showthread.php?t=9497)

Westman 2005-08-23 16:15

Jag är inte speciellt insatt i MySQL så det är lika bra att fråga innan det blir för mycket "trial and error".

Jag har två maskiner som ska ha samma funktioner (redundant system) och eftersom de kommer att köra mambo på dem så är det MySQL-datat som ska vara detsamma på båda maskinerna. Replikering kan man väl utesluta då det blir gammalt data så då är det väl bara kluster kvar? Hur pass svårt är det att ordna till ett sådant?

:blink:

grazzy 2005-08-23 16:50

1) Köp snabbare burk
2) Köp flera burkar, separera applikation, databas, proxy
3) Optimera
4) Optimera
...
98) Optimera mera
99) Kluster / replikering.

Ungefär i den ordningen skulle jag nog implementera kluster/replikering ;)

kullervo 2005-08-23 17:52

Nu var syftet inte att få bättre prestanda utan att systemet ska bli redundant.

jimmie 2005-08-23 18:14

Om du har lust att förklara vad du menar med denna mening så kan du få lite mer hjälp

"Replikering kan man väl utesluta då det blir gammalt data så då är det väl bara kluster kvar?"

Robert 2005-08-23 18:25

Citat:

Originally posted by jimmie@Aug 23 2005, 18:14
Om du har lust att förklara vad du menar med denna mening så kan du få lite mer hjälp

"Replikering kan man väl utesluta då det blir gammalt data så då är det väl bara kluster kvar?"

Han menar nog att replikering är schemalagd. Han vill ha någon typ av spegling...

kullervo 2005-08-23 18:45

Men i mysql-sammanhang så är väl replikering samma sak som att koppla ihop en master och en slave? Slaven uppdateras i realtid och kan avlasta mastern från SELECT-frågor. Rätta mig om jag har fel.

jimmie 2005-08-23 18:51

Öhh så är det inte alls. (<-- Syftar på svar Robert, ej till kullervo) (jag var för seg när jag skrev :) )

Så här funkar replikation i MySQL 4.0

1. Klienten anropar master med query
2. Master parsar och kör queryn
3. Mastern sparar queryn i binärloggen
4. Slavens IO-tråd läser queryn från mastern och lägger till den till relay-loggen
5. Slavens IO-tråd uppdaterar master.info filen
6. Slavens SQL-tråd läser queryn från relay-loggen
7. Slavens SQL-tråd kör en "sanitets-kontroll" på queryn, om sanitets-kontrollen misslyckas avbryts replikationen.
8. Slavens sql-tråd uppdaterar relay-log.info filen
9. Slavens sql-tråd väntar på nästa query, när det kommer en hoppar den till 6:an.

I 3.23 är det bara en tråd som sköter allt detta, i 4.0 så finns det två trådar vilket leder till att det är mycket mindre risk att slaven hamnar efter.

Infot ovan är från boken "High-Performance MySQL" från O'Rilley

Westman 2005-08-24 08:17

Tack för svaren!

Precis som Robert skrev så trodde jag (och tror tills jag ser annat) att replikering är schemalagd. Jag ska dock läsa på ordentligt och försöka få tag i boken som Jimmie hänvisar till.

Får jag det inte att fungera så får jag väl hyra in jimmie för att fixa det. :D

kullervo 2005-08-24 11:04

Citat:

Originally posted by Westman@Aug 24 2005, 07:17
Tack för svaren!

Precis som Robert skrev så trodde jag (och tror tills jag ser annat) att replikering är schemalagd. Jag ska dock läsa på ordentligt och försöka få tag i boken som Jimmie hänvisar till.

Får jag det inte att fungera så får jag väl hyra in jimmie för att fixa det. :D

Det är inget fel på mysqls manual. Tvärs om. Den är grymt bra.
dev.mysql.com/doc/mysql/en/replication.html

Robert 2005-08-24 12:01

Hehe, jag får be om ursäkt för min "gissning", men replikering brukar allt som oftast stå för något helt annat. (jag är MS människa) :)


Alla tider är GMT +2. Klockan är nu 12:19.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson