sql >> Database >  >> RDS >> Mysql

Afbeeldingsbestanden of URL's opslaan in de MySQL-database? Wat is beter?

Persoonlijk raad ik aan om afbeeldingen op te slaan in de database. Het heeft natuurlijk zowel voor- als nadelen.

Voordelen van het opslaan van BLOB-gegevens in de database:

  • Het is gemakkelijker om de BLOB-gegevens gesynchroniseerd te houden met de overige items in de rij.
  • Van BLOB-gegevens wordt een back-up gemaakt met de database. Het hebben van één opslagsysteem kan het beheer vereenvoudigen.
  • BLOB-gegevens zijn toegankelijk via XML-ondersteuning in MySQL, die een basis 64-gecodeerde weergave van de gegevens in de XML-stroom kan retourneren.
  • MySQL Full Text Search (FTS)-bewerkingen kunnen worden uitgevoerd op kolommen die tekens met een vaste of variabele lengte (inclusief Unicode) bevatten. U kunt ook FTS-bewerkingen uitvoeren op opgemaakte tekstgebaseerde gegevens in afbeeldingsvelden, bijvoorbeeld Microsoft Word- of Microsoft Excel-documenten.

Nadelen van het opslaan van BLOB-gegevens in de database:

Overweeg zorgvuldig welke bronnen beter op het bestandssysteem kunnen worden opgeslagen dan in een database. Goede voorbeelden zijn afbeeldingen waarnaar doorgaans wordt verwezen via HTTP HREF. Dit komt omdat:

  • Het ophalen van een afbeelding uit een database brengt aanzienlijke overhead met zich mee in vergelijking met het gebruik van het bestandssysteem.
  • Schijfopslag op database-SAN's is doorgaans duurder dan opslag op schijven die worden gebruikt in webserverfarms.


  1. Kan het Postgres-gegevenstype NUMERIC ondertekende waarden opslaan?

  2. Hoe installeer ik Haproxy en Keepalive

  3. Hoe unicode-tekens filteren (of vervangen) die meer dan 3 bytes in UTF-8 in beslag nemen?

  4. Hoe los je een MySQL Incorrect key file-fout op als je de tabel niet kunt repareren?