copgy is a CLI utility tool for copying data between and executing SQL on PostgreSQL databases.
Employ the readonly user approach when engaging with production databases to prevent inadvertent data loss.
- copy data using a single query
- copy data using a script json file
- copy data & execute SQL using a script json file
cargo install copgy
copgy --source-db-url postgresql://host:5432/postgres --dest-db-url postgresql://host:5432/postgres single --source-sql 'select * from employees' --dest-table employees_tmp
copgy --source-db-url postgresql://host:5432/postgres --dest-db-url postgresql://host:5432/postgres script --file-path ~/Desktop/copgy.json
sample copgy.json
[
{
// execute on source db
"execute": {
"source_sql": "update employees set first_name = 'copgy' where emp_no = 0"
}
},
{
// execute on destination db
"execute": {
"dest_sql": "truncate employees_tmp"
}
},
{
// copy from source db to destination db
"copy": {
"source_sql": "select * from employees",
"dest_table": "employees_tmp"
}
}
]
Sample PostgreSQL connection string
postgresql://username:password@host:port/dbname