sql >> Database >  >> RDS >> Mysql

TEKST/BLOB in dezelfde tabel opslaan of niet?

Update:Barracuda is de standaard InnoDB-bestandsindeling sinds versie 5.7.

Gebruik, indien beschikbaar op uw MySQL-versie, het InnoDB Barracuda-bestandsformaat met

innodb_file_format=barracuda

in uw MySQL-configuratie en stel uw tabellen in met ROW_FORMAT=Dynamic (of Compressed ) om het daadwerkelijk te gebruiken.

Hierdoor kan InnoDB BLOB's, TEXT's en grotere VARCHAR's buiten de rijpagina's opslaan en wordt het dus een stuk efficiënter. Zie dit MySQLperformanceblog.com blogartikel voor meer informatie.

Voor zover ik het begrijp, maakt het gebruik van het Barracuda-formaat het opslaan van TEXT/BLOB/VARCHAR's in afzonderlijke tabellen om prestatieredenen niet meer geldig. Ik denk echter dat het altijd goed is om de juiste databasenormalisatie in gedachten te houden.



  1. Hoe een lijst met tabellen te krijgen zonder primaire sleutelbeperking in alle databases van SQL Server-instantie - SQL Server / TSQL-zelfstudie, deel 62

  2. Op zoek naar een viewer voor SQL-transactielogboekbestanden

  3. Verander unieke sleutel samen in mysql

  4. MariaDB installeren en beveiligen op Debian 9