Want to export data from MySQL table to JSON lines (JSONL / NDJSON / LDJSON)?
Try Withdata DBToFile, Support Windows, Linux, and macOS, Export MySQL data to JSON lines (JSONL / NDJSON / LDJSON), Easy and Fast.
- Can run in GUI mode, Step by Step, just a few mouse clicks.
- Can run in Command line, for Scheduled Tasks and Streams.
- Support Windows, Linux, and macOS.
Download Withdata DBToFile
Windows 64 bit
Windows 32 bit
Linux .deb (For Debian, Ubuntu) 64 bit
Linux .rpm (For Red Hat, Fedora, SUSE) 64 bit
MacOS 64 bit
JSON Lines text format (JSONL), also called Newline-delimited JSON (NDJSON), or Line-delimited JSON (LDJSON). JSON Lines files may be saved with the file extension .jsonl, *.ndjson, *.ldjson.
Export data from MySQL table to JSON lines (JSONL / NDJSON / LDJSON)
Login to MySQL -> Choose MySQL table -> Set JSON lines file options -> Export MySQL to JSON lines (JSONL / NDJSON / LDJSON)
Choose MySQL and logon.
“Export From Table” for “MySQL to JSON lines (JSONL / NDJSON / LDJSON)”.
Select JSON file type.
1. Choose MySQL table.
2. Set JSON lines (JSONL / NDJSON / LDJSON) file options.
3. Set rows options.
4. Export MySQL data to JSON lines (JSONL / NDJSON / LDJSON) table.
After exporting, you can view output JSON lines (JSONL / NDJSON / LDJSON) file.
More tools for JSONL / NDJSON / LDJSON.
Download Withdata DBToFile
Windows 64 bit
Windows 32 bit
Linux .deb (For Debian, Ubuntu) 64 bit
Linux .rpm (For Red Hat, Fedora, SUSE) 64 bit
MacOS 64 bit
MySQL → JSON Lines reference
Type mapping
| Value kind | in MySQL | in JSON Lines |
|---|---|---|
| Int | INT | 1234 (number) |
| Bigint | BIGINT | 9007199254740993 |
| Decimal | DECIMAL(p,s) | 1234.56 (number) |
| Float | DOUBLE | 1.234e10 (number) |
| Text | VARCHAR(n) | "text" (string) |
| Long text | LONGTEXT | "multi-line\ntext" |
| Date | DATE | "2026-09-18" (string) |
| Datetime | DATETIME | "2026-09-18T14:30:00Z" (string) |
| Binary | LONGBLOB | "base64:..." (string) |
| Boolean | TINYINT(1) | true / false (boolean) |
| JSON | JSON | nested object on the same line |
Dialect differences
MySQL is a database server and JSON Lines is a file format, so the gap is wider than a dialect difference - the rows below are where values and structure stop lining up.
| Property | in MySQL | in JSON Lines |
|---|---|---|
| port | 3306 | — |
| identifiers | `backtick` | Double quotes; backslash escapes (a newline inside a string... |
| row limit | LIMIT n | — |
| dates | DATETIME, TIMESTAMP, DATE, TIME | No date type: dates arrive as strings |
| long text | TINYTEXT / TEXT / MEDIUMTEXT / LONGTEXT | — |
| binary | BLOB / TINYBLOB / LONGBLOB | Not supported natively - base64 inside a string |
| separator | — | Newline between records |
| encoding | — | UTF-8 by definition |
| typing | — | Same as JSON, but records cannot nest across lines |
| shape | Tables of rows and columns | Flat stream |
| ceiling | — | Streams, so it scales past what a single JSON document can ... |
Command line
| Side | Command |
|---|---|
| MySQL | mysqldump, or mysql -e "SELECT ..." > out.csv |
| MySQL (load) | mysqlimport, or LOAD DATA INFILE |
Convert your data online, free
Free in-browser converters for CSV, Excel, JSON, XML and SQL: Withdata Online Data Conversion. Large files, batch conversion or scheduling? See the offline desktop apps, or browse all data conversion tools.