Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/neondatabase/pg-import
A CLI tool for importing data from one PostgreSQL database to another.
https://github.com/neondatabase/pg-import
backup database-import databases libpq postgres postgres-migration postgresql
Last synced: 2 months ago
JSON representation
A CLI tool for importing data from one PostgreSQL database to another.
- Host: GitHub
- URL: https://github.com/neondatabase/pg-import
- Owner: neondatabase
- License: other
- Created: 2024-05-27T06:31:20.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-06-03T19:07:06.000Z (7 months ago)
- Last Synced: 2024-10-07T17:37:59.371Z (3 months ago)
- Topics: backup, database-import, databases, libpq, postgres, postgres-migration, postgresql
- Language: JavaScript
- Homepage: https://npmjs.com/package/@neondatabase/pg-import
- Size: 104 KB
- Stars: 5
- Watchers: 7
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
# Migrate between Postgres databases
A CLI tool for **migrating data from one PostgreSQL database to another**.
> [!NOTE]
> **This project is experimental.**
>
> There may be bugs, and the API is subject to change. While we cannot provide professional support for experimental projects, we welcome your feedback.## Usage
```sh
npx @neondatabase/pg-import@latest --silent false --accept-all false --source="pg-string" --destination="pg-string"
```### Flags and Options
- `--source `: The connection string for the source PostgreSQL database. This is **optional**.
- Example: `--source "postgres://user:password@localhost:5432/source_db"`- `--destination `: The connection string for the destination PostgreSQL database. This is **optional**.
- Example: `--destination "postgres://user:password@localhost:5432/destination_db"`- `--silent`: Suppresses console output if set to `true`. The default value is `false`.
- Example: `--silent true`- `--accept-all`: Automatically accepts all prompts if set to `true`. The default value is `false`.
- Example: `--accept-all true`- `--backup-file-path`: Specifies the path and filename for the backup file. If not set, the default value is **dump_restore_{randomly_generated_string}.bak**.
- Example: `--backup-file-path "../Downloads/example.bak"`## When Migrating to Neon
- Make sure your Neon plan supports your database size. The Neon Free Tier offers 0.5 GiB of storage. For larger data sizes, upgrade to the Launch or Scale plan. See [Neon plans](https://neon.tech/docs/introduction/plans).
- If you are on the Neon Launch or Scale plan, you can optimize for the migration by configuring a larger compute size or enabling [autoscaling](https://neon.tech/docs/introduction/autoscaling) for additional CPU and RAM. See [How to size your compute](https://neon.tech/docs/manage/endpoints#how-to-size-your-compute).
- This utility uses `pg_dump` and `pg_restore`. A generated dump file containing any of the following statements will produce a warning or error when data is restored to Neon:
- `ALTER OWNER` statements
- `CREATE EVENT TRIGGER` statements
- Any statement requiring the PostgreSQL superuser privilege or not held by the role running the migrationSee [Import from Postgres](https://neon.tech/docs/import/import-from-postgres) for possible workarounds.
## Authors
This library is created by [Neon](https://neon.tech) with contributions from:
- Rishi Raj Jain ([@rishi_raj_jain_](https://twitter.com/rishi_raj_jain_))
## Contributing
We love contributions! Here's how you can contribute:
- [Open an issue](https://github.com/neondatabase/pg-import/issues) if you believe you've encountered a bug.
- Make a [pull request](https://github.com/neondatabase/pg-import/pull) to add new features, make improvements, or fix bugs.## Contributors