Sköta web-servern, MySQL

Konfiguration av nätverk, hur man använder Ubuntu som server, och håller sin dator säker
ycc
Inlägg: 1818
Blev medlem: 10 feb 2007, 04:08
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Kontakt:

Sköta web-servern, MySQL

Inlägg av ycc »

Min hemsida ligger oftast på en Ubuntu-dator hemma. För tillfället ligger den dock på ett web-hotell.

Sidan har två MySQL databaser, en för Drupal (5.2) och numera också en för en sökmotor (sphider.eu). Backup sker sporadiskt genom att ladda ner hela MySQL-filerna manuellt via phpMyAdmin.

Aktiviteten på sidan är ganska låg, men jag skulle gärna vilja veta vilka åtgärder som kan bli aktuella om aktiviteten ökar?

Jag antar t.ex. att MySQL-filerna till slut blir stora och otympliga. - Kanske både att använda på sidan och att backa upp? Hur kan man åtgärda detta? (Har MySQL t.ex. något system för att dela upp sina filer eller backa upp dem inkrementellt?) Finns det andra åtgärder man bör vidta om aktiviteten ökar?

(Drupal har tydlgen någon slags finess att man kan ta bort mindre viktiga delar från sidorna när serverbelastningen är som högst.)

Tack på förhand :)
andol
Inlägg: 3093
Blev medlem: 31 dec 2007, 00:19
OS: Ubuntu
Utgåva: 23.10 Mantic Minotaur

Re: Sköta web-servern, MySQL

Inlägg av andol »

Ökar aktiviteten så vill du antagligen se till att säkerhetskopiera mera regelbundet. Rätt vanligt är att man schemalägger nattlig säkerhetskopiering.

De databasfiler du laddar ner via phpMyAdmin antar jag att är så kallade databasdumpar? Det är alltså inte själva databasens binärfiler, utan textfiler innehållande SQL-stängar vilka kan användas för att återbygga databasen? Vill du automatisera skapandet utav dylika databasdumpar så är mysqldump ett kommando att titta närmare på.

I vilken omfattning din Drupaldatabas blir stor och otymplig beror förstås helt på vilken typ av site det gäller, etc. Som mätpunkt kan jag nämna att en okomprimerad databasdump utav ubuntu-se:s portal tar en sisådär 30Mb.

Drupal 4.x har ett problem med att dess sessions-tabell växer konstant. Hurtillvida detsamma är fallet för 5.x vet jag inte. Skulle så vara fallet kan det sålunda vara en bra idé att regelbundet köra en skript som rensar tabellen ifråga.

(Är förresten 5.2 verkligen en lämplig version utav 5.x att köra?)

Alternativa sätt att säkerhetskopiera MySQL kan du läsa om i referensmanualen.

http://dev.mysql.com/doc/refman/5.0/en/backup.html

För inkrementell säkerhetskopiering använder man i regel binärloggning. Vetisjutton dock hur tillämpbart det är på ett webbhotell.
ycc
Inlägg: 1818
Blev medlem: 10 feb 2007, 04:08
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Kontakt:

Re: Sköta web-servern, MySQL

Inlägg av ycc »

Då fick man lära sig lite igen då, tack :)

Jag hade inte ens provat att öppna de nedladdade back-up-filerna. Som du säger är det ascii-filer. De har extensionen ".sql". Jag skall utforska mysqldump.

Jag kör Drupal 5.2 eftersom jag råkade köra igång den för något år sedan. Alltså dags för mig att kolla efter uppdateringar. Jag kände t.ex. inte till problemet med sessionstabellen.

Du säger att portalen går att komprimera till så behändig storlek som 30 MB! Men då är väl inte forum inräknat? Här kan man ju nå trådar som är flera år gamla. Jag kan inget om phpBB, men jag gissar att forums databasfiler är ganska stora? (Många gånger större än jag någonsin kommer att vara i närheten av.) Går hela forum att ha i en enda databasfil? Man kan i alla fall tänka sig en databas där man får lägga in bilder och filmer etc. Jag har ingen erfarenhet av detta, men till slut måste man väl dela databasfilen, i alla fall om den överskrider diskens storlek? Eller skaffar man en större disk? Kommer RAID in i detta sammanhang?? (Jag vet inte vad RAID riktigt är.)

Kanske lite teoretiska frågor från perspektivet av min lilla hemsida, men det är alltid kul att veta hur det funkar och försöka köra så "proffsigt" man kan ;)

Det stod ju om inkrementell backup i MySQL manualen, jag hade missat det.

Stort tack för alla tipsen! :)
andol
Inlägg: 3093
Blev medlem: 31 dec 2007, 00:19
OS: Ubuntu
Utgåva: 23.10 Mantic Minotaur

Re: Sköta web-servern, MySQL

Inlägg av andol »

Vart många frågeställningar det där. Hoppas du klarar dig på lite löst sammanhängade fakta i punktform.
  • Portalens databasdump tar alltså sisådär 30mb i okomprimerat format. Databasdumpen för vårt forum tar omkring 175mb okomprimerat
  • Databasdumpar går ofta att komprimera i hög grad. Detta då deras format, såväl som många databasers innehåll, till relativt stor del består utav upprepad information. Testa gärna själv på dina egna databasdumpar.
  • Jovisst går hela forumets databasdump ner i en fil. Däremot så är själva den egentliga databasen uppdelad på flera filer. Se gärna på din egen server hur filstrukturen ser ut under /var/lib/mysql/databasnamn.
  • Notera att databaser för riktigt stora siter hanteras lite annorlunda. Där ligger datan i regel spridd på flertalet olika databasservrar, med olika inbördes relationer. Nyckelord är kluster alternativt replikering.
  • Visst kan man lagra bilder såväl som filmer i databaser. Frågan är dock om det inte är vanligare att dessa lagras i det vanliga filsystemet, och sen refereras till från databasen.
  • Att en enskild disk inte räcker till är en vanlig situation i större sammanhang, varesig det rör databaser eller ej. Om du är nyfiken, läs gärna vad wikipedia har säga om RAID såväl som Logical volume management.
ycc
Inlägg: 1818
Blev medlem: 10 feb 2007, 04:08
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Kontakt:

Re: Sköta web-servern, MySQL

Inlägg av ycc »

Största tack andol, mycket lärorikt. Mina sql-filer verkar direkt gå att komprimera till ung. 10-40%. (Beror väl inte på att min hemsida har tjatigt innehåll ;)) Nu vet jag dessutom hur jag kan kolla vidare. Tack för det uttömmande svaret. :)
Användarvisningsbild
Quakeile
Inlägg: 173
Blev medlem: 26 dec 2006, 23:23
OS: Ubuntu
Utgåva: 16.04 Xenial Xerus LTS
Ort: Vänersborg

Re: Sköta web-servern, MySQL

Inlägg av Quakeile »

När/om din sajt flyttar hem till din ubuntuburk så kan jag varmt rekommendera detta backup-script för mysqldatabaser:

http://sourceforge.net/projects/automysqlbackup/

Bara att lägga in scriptet i /etc/cron.daily, ställa in user, password och vart backuperna ska sparas.
Så fixar scriptet daglig, vecko och månadsbackup av alla databaser.
Skriv svar

Återgå till "Nätverk, säkerhet och servrar"