Een groot SQL-dumpbestand openen op Mac (zonder crash)

Je dubbelklikt op een export van 20–50 GB in .sql en je editor draait, bevriest en crasht. Je krijgt het bestand niet eens open — laat staan dat je één opgeblazen tabel verwijdert. Dit is waarom editors vastlopen, de command-line-oplossingen, en een snellere manier.

Een dump van een productiedatabase kan makkelijk tientallen gigabytes bereiken. Op het moment dat je die probeert te openen in een normale teksteditor, gaat de ventilator van je Mac aan, verschijnt het draaiende strandbal-icoon, en uiteindelijk sluit de app af — soms met verlies van onopgeslagen werk in andere vensters.

Waarom editors vastlopen op grote dumps

VS Code, TextEdit, Sublime Text en consorten zijn ontworpen om het hele bestand in het geheugen te laden, zodat ze direct kunnen scrollen, zoeken en highlighten. Dat is prima voor een bronbestand van 2 MB. Voor een dump van 40 GB betekent het dat de editor probeert 40 GB (plus overhead voor zijn interne datastructuren) in RAM te reserveren.

Je Mac heeft 16 of 32 GB. Lang voordat het bestand volledig geladen is, raakt het systeem door zijn fysieke geheugen heen, begint het naar schijf te swappen en komt het tot stilstand. De meeste editors weigeren ook botweg: VS Code beperkt bestanden tot ongeveer 50 MB voor de volledige editor en schakelt over naar een uitgeklede modus, TextEdit blijft simpelweg hangen, en Sublime blijft geheugen reserveren tot het crasht. Zelfs als je het bestand openkrijgt, herscannen syntax-highlighting en zoeken gigabytes bij elke toetsaanslag.

Het kernprobleem: deze tools gaan uit van willekeurige toegang tot het hele document. Een dump heeft dat niet nodig — het is een sequentiële lijst van statements. Je hoeft er alleen doorheen te streamen.

De command-line-manier

De Unix-tools op je Mac streamen al, dus ze laden nooit het hele bestand. Ze zijn het klassieke eerste redmiddel:

# Bekijk de eerste en laatste regels zonder het hele bestand te openen
head -n 50 dump.sql
tail -n 50 dump.sql

# Splits de dump in stukken van 100 MB met de naam part_aa, part_ab, ...
split -b 100m dump.sql part_

# Haal het blok van één tabel eruit tussen twee markeringen
sed -n '/CREATE TABLE `users`/,/UNLOCK TABLES/p' dump.sql > users.sql

Dit werkt, maar het is fragiel en omslachtig. split -b knipt op ruwe bytegrenzen, dus het snijdt dwars door het midden van een INSERT-statement — de resulterende stukken zijn op zichzelf geen geldige SQL. De sed-truc met bereiken hangt af van de exacte markeringen die een specifieke dump-tool toevallig produceert; verander de MySQL-versie of stap over op PostgreSQL en het patroon matcht niet meer. En niets ervan geeft je zicht op wat er daadwerkelijk in het bestand zit — je gokt welke tabel die van 30 GB is voordat je die überhaupt kunt aanpakken.

Openen en filteren met DumpCleaner

DumpCleaner is precies voor deze bestandsgrootte gebouwd. Het streamt de dump zoals de command line dat doet, maar het begrijpt SQL-structuur, dus je krijgt een echte tabellenlijst en veilige, statement-bewuste uitvoer:

  1. Sleep het bestand erin. DumpCleaner opent de dump door die in stukken van ~1 MB te streamen — een bestand van 50 GB opent met ruwweg 50 MB RAM, dus niets bevriest.
  2. Bekijk elke tabel. Het scant de dump en toont elke tabel met zijn grootte, zodat je meteen ziet welke het bestand opblaast.
  3. Deselecteer wat je niet nodig hebt. Vink de gigantische log-, sessie- of analytics-tabellen uit. DumpCleaner houdt hele statements intact — geen half doorgesneden INSERTs.
  4. Exporteer. Schrijf een nieuw, kleiner .sql-bestand dat eindelijk vlot opent en importeert. Je originele bestand wordt nooit gewijzigd.

Omdat het dumps van 50 GB en groter verwerkt met constant geheugengebruik, hoef je helemaal niet over het RAM van je Mac na te denken. En omdat het de bron leest en een aparte uitvoer schrijft, blijft de dump waarmee je begon precies zoals die was.

Dumps openen die je editor niet aankan

DumpCleaner streamt SQL-dumps van elke grootte met constant geheugengebruik — geen crash, geen swap, geen wachten. Sleep een bestand van 50 GB erin, laat de tabellen weg die je niet nodig hebt, en exporteer een kleinere. Native macOS- & iPadOS-app, eenmalige aankoop.

Downloaden in de App Store

Veelgestelde vragen

Hoe groot mag een SQL-dump zijn die DumpCleaner aankan?

Er is geen vaste limiet. Het verwerkt het bestand als een stream in kleine stukken, dus dumps van 50 GB en groter werken net als kleine — de grootte wordt begrensd door je schijf, niet je RAM.

Laadt DumpCleaner het hele bestand in RAM?

Nee. Anders dan een teksteditor leest het de dump in kleine stukken en houdt het geheugengebruik ongeveer constant rond 50 MB, of het bestand nu 200 MB of 50 GB is.

Kan ik een dump per tabel splitsen?

Ja. In plaats van dat split blind op bytegrenzen knipt, begrijpt DumpCleaner de tabelstructuur. Deselecteer de tabellen die je niet wilt en exporteer een schoon bestand met alleen de tabellen die je behoudt.

Wijzigt DumpCleaner mijn originele bestand?

Nee. De bron-dump wordt alleen gelezen — DumpCleaner schrijft altijd een nieuw bestand, dus je origineel blijft onaangeroerd.

Stop met vechten tegen je editor

Sleep de enorme dump erin, laat de tabellen weg die je niet nodig hebt, en exporteer een bestand dat echt opent. DumpCleaner verwerkt elke grootte met constant geheugengebruik.

Downloaden in de App Store