The CSV is too big for the usual import

DBLoader » Use cases » Import a huge CSV

Download DBLoader Free Trial »     Buy DBLoader Now »

The situation

Every convenient way in refuses. The database client's import wizard runs out of memory partway, the spreadsheet stops at its row limit, and the server-side bulk loader (MySQL's LOAD DATA INFILE, PostgreSQL's COPY) wants the file where the database can see it - and usually forbids that.

The CSV in question is plain, well-formed and has a header. It is just big: hundreds of megabytes to several gigabytes of text.

What you do

  1. Start an import and choose CSV/TSV/TXT as the source type. Point it at the file - DBLoader reads it from your machine, wherever it is.
  2. Check the preview: delimiter, header row and encoding. Set UTF-8 if the text has accents or non-Latin characters.
  3. Connect to the target database and map the columns. If the table does not exist, DBLoader can create it from the file's columns.
  4. Run. Rows are written to the table as they are read, and progress is shown while it runs.

Selecting a large CSV file as the import source in DBLoader

Nothing is uploaded anywhere - the file is read locally and the rows go to the database you name. If the run is interrupted, it can be repeated; what to do about the rows already loaded is your call (the tool does not silently skip or de-duplicate them).

What it will not do

Related

Many files instead of one: a folder into one table. The mode itself: file to table. Repeating it: sessions, command line. Formats accepted: help.