Withdata Software

Export data from MySQL to JSON via command line on Windows

Want to export MySQL data to JSON Lines (JSONL) file via Command Line Interface (CLI) on Windows?

Using my-cmd, Command Line Interface (CLI) client for MySQL, you can unload MySQL (MariaDB, Percona) data to JSON easily and fast. Direct Interaction or Scripting and Automation.

Download my-cmd Windows version
my-cmd.windows-386.zip
my-cmd.windows-amd64.zip

Export MySQL (MariaDB, Percona) data to JSON via command line on Windows

1. Unload Table.

1) In interactive mode:

my-cmd> unload table=jobs datafile=e:\temp\tables\jobs.json filetype=json;

2) In batch mode:

my-cmd dsn="pan:withdata@192.168.0.102/test" task=unload table=jobs datafile=e:\temp\tables\jobs.json filetype=json quit=y

2. Unload Query.

1) In interactive mode:

my-cmd> unload query="select job_id,job_title from jobs"
     >  datafile=e:\temp\tables\jobs_part.json
     >  filetype=json;

2) In batch mode:

my-cmd dsn="pan:withdata@192.168.0.102/test" task=unload query="select job_id,job_title from jobs" datafile=e:\temp\tables\jobs_part.json filetype=json quit=y

3. Unload All Tables.

1) In interactive mode:

my-cmd> unload table=all folder=e:\temp\tables filetype=json;

2) In batch mode:

my-cmd dsn="pan:withdata@192.168.0.102/test" task=unload table=all folder=e:\temp\tables filetype=json quit=y

See parameters detail.


More about my-cmd – Command Line Interface (CLI) tool for MySQL

Download my-cmd Windows version
my-cmd.windows-386.zip
my-cmd.windows-amd64.zip

MySQL → JSON reference

Type mapping

Value kindin MySQLin JSON
IntINT1234 (number)
BigintBIGINT9007199254740993
DecimalDECIMAL(p,s)1234.56 (number)
FloatDOUBLE1.234e10 (number)
TextVARCHAR(n)"text" (string)
Long textLONGTEXT"multi-line\ntext" (escaped newline inside a string)
DateDATE"2026-09-18" (string)
DatetimeDATETIME"2026-09-18T14:30:00Z" (string)
BinaryLONGBLOB"base64:..." (string)
BooleanTINYINT(1)true / false (boolean)
JSONJSONnested object or array, kept as structure

Dialect differences

MySQL is a database server and JSON is a file format, so the gap is wider than a dialect difference - the rows below are where values and structure stop lining up.

Propertyin MySQLin JSON
port3306—
identifiers`backtick`Double quotes; backslash escapes
row limitLIMIT n—
datesDATETIME, TIMESTAMP, DATE, TIMENo date type: dates arrive as strings and the reader must p...
long textTINYTEXT / TEXT / MEDIUMTEXT / LONGTEXT—
binaryBLOB / TINYBLOB / LONGBLOBNot supported natively - base64 inside a string
separator—Braces and commas
encoding—UTF-8 by definition
typing—string, number, boolean, null, object, array - no date type
shapeTables of rows and columnsNested objects and arrays
ceiling—Whole document is usually parsed into memory

Command line

SideCommand
MySQLmysqldump, 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.