Export data from PostgreSQL to JSON via command line on Linux

by

Want to export PostgreSQL data to JSON Lines (JSONL) file via Command Line Interface (CLI) on Linux (Ubuntu/RedHat/CentOS…)?

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

  • No need to install PostgreSQL client library.
  • Convenient to deploy to cloud. No need to run installation file, just uncompress and run, immediately.
  • Commands are entered into a terminal or command prompt, accessed from local or remote (like SSH).
  • Support Windows, Linux, and MacOS.

Download pg-cmd Linux version Download pg-cmd

JSON Lines text format, 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 PostgreSQL data to JSON via command line on Linux (Ubuntu/RedHat/CentOS…)

1. Unload Table.

1) In interactive mode:

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

2) In batch mode:

pg-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:

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

2) In batch mode:

pg-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:

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

2) In batch mode:

pg-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 pg-cmd – Command Line Interface (CLI) tool for PostgreSQL