Withdata Software

Upsert data from CSV to MySQL table via command line on Linux

Want to upsert data from CSV file to existing MySQL table via command line on Linux (Ubuntu/RedHat/CentOS…)?

Using my-cmd, a Command-Line client for MySQL, you can upsert(merge) CSV/TSV/TXT data to MySQL (MariaDB, Percona) table easily and fast.

Support Windows, Linux, and MacOS.

Download my-cmd Linux version
my-cmd.linux-386.zip
my-cmd.linux-amd64.zip
my-cmd.linux-arm64.zip

No need to install MySQL client library.

Convenient to deploy to cloud. No need to run installation file, just uncompress and run, immediately.

Upsert/Merge CSV/TSV/TXT data into MySQL (MariaDB, Percona) table via command line on Linux

1. In interactive mode:

my-cmd> load loadtype=upsert
      > updatekey=id
      > table=media_messages 
      > datafile=/data/media_messages.csv 
      > delimiter=, 
      > quote=" 
      > header=y;

2. In batch mode:

my-cmd dsn="pan:withdata@192.168.0.102/test" task=load loadtype=upsert updatekey=id table=media_messages datafile=/data/media_messages.csv delimiter=, quote=" header=y quit=y

“loadtype=upsert” will update row in table if “updatekey” id exists, or insert new row.

See parameters detail.


More about my-cmdCommand-Line client for MySQL