sql >> Databasteknik >  >> RDS >> Database

Databaskorruption

Databaskorruption kan stoppa onlineverksamheten och leda till förlorad data, tid och pengar. Nedan kommer vi att täcka hur du felsöker och löser MySQL-serverkorruption.

Felsökning av databaskorruption

1. Identifiera problemet. Problemen varierar beroende på din servermiljö. Finns det oförklarliga fel på din webbplats eller app? Ser du PHP-fel på sidor som inte ändras direkt? Även om felen är återkommande bör du lösa dem omedelbart. Offentliga fel delar ofta information som cyberangripare kan använda mot dig.

Innehållshanteringssystem (CMS) som använder MySQL-databaser, inklusive Drupal och Joomla, kan visa ett databasfelmeddelande i administratörsinstrumentpanelen inbyggt eller med tredjepartsintegrationer. WordPress har en specifik felkod för db-korruption:en tom offentlig sida som anger "Fel vid upprättande av en databasanslutning."

2. Samla information för att upptäcka den eller de troliga orsakerna. Vad var det sista du minns att du gjorde innan problemet började?

Installerade du en ny integration?

Uppgradera någon mjukvara?

Ta bort, flytta eller redigera en fil?

Ladda upp stora filer till din server?

Köra en antivirusskanner som kan placera misstänkta filer i karantän?

Uppdatera databasen medan servern eller MySQL-tjänsten startade om?

Notera alla möjligheter.

Kontrollera systemfelloggarna för ytterligare information om när problemet började och vad som kan orsaka det. PHP-program underhåller ibland en error_log-fil i rotkatalogen som kan underlätta felsökning.

3. Försök att återskapa felet. Om det var en felsida som visades slumpmässigt, försök att öppna flera flikar från samma webbplats inom några sekunder. Se webbplatsen i olika webbläsare för stationära och mobila enheter. Om felet började efter något du installerade, avinstallera och installera om det exakt enligt anvisningarna i den officiella dokumentationen.

4. Åtgärda problemet. Se först till att du har säkerhetskopior av databas från någon gång innan problemet uppstod. För trygghetens skull bör du skapa ytterligare en säkerhetskopia av databasen.

Kontrollera lagringsgränsen för din värdplan . Att överskrida gränserna för diskutrymme är ett vanligt symptom för fel vid maximala samtidiga anslutningar (max_user_connections). Du kan kontrollera detta med cPanel> Diskanvändning och df terminalkommando. Ta bort skräpfiler och gamla säkerhetskopior. Gör nödvändiga ändringar för att förhindra alltför många skräpfiler i framtiden.

Om du inte hittar något du kan ta bort bör du uppgradera din värdplan för bättre databasprestanda.

"Kontrollera och reparera databasen" är den vanliga snabblösningen med något av följande:

  • cPanel> MySQL®-databaser
  • phpMyAdmin
  • Inbyggda PHP-programvarufunktioner
  • MySQL Kommandoradsklient:
mysqlcheck --repair -u [USERNAME] -p [DATABASE]

Beroende på din PHP-applikation, eller om du inte använder en cPanel-server, kan du behöva använda olika alternativ för att reparera databaser. WordPress-användare med WP-CLI installerat kan kontrollera och reparera databaser med en kombination av två kommandon:

wp db check && wp db repair

WordPress kan konfigureras att göra detta automatiskt genom att lägga till ett kort kodblock i filen wp-config.php:

define (‘WP_ALLOW_REPAIR’, ‘true’);

Om det inte fungerar kontaktar du Live Support med problemet du har och vad du har försökt reparera databaskorruptionen. Våra systemadministratörer kanske kan reparera korrupta MySQL-databaser med InnoDB-funktioner och hjälpa till att undersöka orsaken till korruption.

Om alla metoder för databasreparation misslyckas måste du veta hur du återställer skadade MySQL-databaser med säkerhetskopior via phpMyAdmin eller SSH.

5. Dokumentera upplösningen. Om den här artikeln eller en extern webbsida hjälpte dig, bokmärk den med en titel du kommer ihåg. Om det var ett problem med koden, skriv in stegen du tog någonstans för förvaring.

Granska ditt säkerhetskopieringsschema för eventuella fördelar med att implementera differentiella eller inkrementella säkerhetskopieringar.

Njut av högpresterande, blixtsnabba servrar med ökad säkerhet och maximal drifttid med vår Managed VPS Hosting!
  1. underfrågan i FROM måste ha ett alias

  2. Procedur för att exportera tabell till flera csv-filer

  3. ORA-00942:Kan man välja från schema.table men inte tabell?

  4. Hur skapar man lagrade procedurer i SQL?