sql >> Database >  >> RDS >> Mysql

Hoe om te gaan met enorme lijnlengtes gemaakt door mysqldump

Standaard, mysqldump genereert slechts één INSERT commando per tafel , wat resulteert in een (zeer lange) regel met ingevoegde gegevens voor elke tabel die is gedumpt. Dit komt in wezen omdat de "batch"-inserts veel sneller zijn dan wanneer het een afzonderlijke INSERT zou genereren query voor elk record in elke tabel.

Het is dus niet dat mysqldump heeft willekeurig lange lijnen gemaakt en u kunt gewoon een andere afkaplengte opleggen. De rijen zijn niet voor niets lang.

Als het echt belangrijk is om de INSERT . te krijgen s opgesplitst in meerdere regels, kunt u dat aangeven met:

mysqldump --extended-insert=FALSE --complete-insert=TRUE ...

Houd er echter rekening mee dat het herstellen van tabellen in dit formaat langer duurt.



  1. Een databasetabel partitioneren in MySQL

  2. SQLException:Protocolschending. Probleem met Oracle JDBC-stuurprogramma

  3. Fout bij het maken van een extensie zonder accent op PostgreSQL

  4. De geparametriseerde query verwacht de parameter die niet is opgegeven