sql >> Databasteknik >  >> RDS >> Mysql

lagra TEXT/BLOB i samma tabell eller inte?

Uppdatering:Barracuda är standardfilformatet för InnoDB sedan version 5.7.

Om tillgängligt på din MySQL-version, använd InnoDB Barracuda-filformatet med

innodb_file_format=barracuda

i din MySQL-konfiguration och ställ in dina tabeller med ROW_FORMAT=Dynamic (eller Compressed ) för att faktiskt använda den.

Detta kommer att få InnoDB att lagra BLOB, TEXT och större VARCHAR utanför radsidorna och därmed göra det mycket mer effektivt. Se denna MySQLperformanceblog.com bloggartikel för mer information.

Så vitt jag förstår det kommer användningen av Barracuda-formatet att göra lagring av TEXT/BLOB/VARCHAR i separata tabeller ogiltig längre av prestandaskäl. Jag tror dock att det alltid är bra att ha korrekt databasnormalisering i åtanke.



  1. Skriv ett tal med två decimaler SQL Server

  2. Vilka metoder kan användas för att hantera olika versioner av redan existerande databaser?

  3. MySQL trigger ställ in värden för NY rad och uppdatera en annan i samma tabell

  4. Emacs och MySQL på Mac