Skip to main content

PostgreSQL metadata grabber and comparer

Project description

Description

PostgreSQL metadata (DDL) grabber and database schema diff

Dependencies

Installation

pip install psycopg2-binary postgres-ddl

Grabbing

1 ) Create config file with connection params and other settings:

{
    "connect": {
        "host": "localhost",
        "port": 5432,
        "database": "db",
        "username": "some_user",
        "password": "some_password"
    },
    "path": "/some/path/to/grabber/result/folder",
    "exclude_schemas": [
        "information_schema",
        "pg_catalog"
    ],
    "threads": 8,
    "new_line": "\n",
    "indent": 2
}

2 ) By default script opens config file config_grab.json from the same directory as zzz_Grabber.py file.

3 ) Alternatively you can specify path to config file as a first run parameter.

4 ) Run grabber:

# Run with default config (config_grab.json)
python "zzz_Grabber.py"
# Run with specified config file path
python "zzz_Grabber.py" "/some/path/to/config.json"

Compare (diff) databases

1 ) Create config file with connection params and other settings:

{
    "source": {
        "host": "localhost",
        "port": 5432,
        "database": "db_from",
        "username": "user",
        "password": "password"
    },
    "target": {
        "host": "localhost",
        "port": 5432,
        "database": "db_to",
        "username": "user",
        "password": "password"
    },
    "path": "/some/path/to/compare/result/folder",
    "exclude_schemas": [
        "information_schema",
        "pg_catalog"
    ]
}

2 ) By default script opens config file config_diff.json from the same directory as zzz_Grabber.py file.

3 ) Alternatively you can specify path to config file as a first run parameter.

4 ) Run diff:

# Run with default config (config_grab.json)
python "zzz_Diff.py"
# Run with specified config file path
python "zzz_Diff.py" "/some/path/to/config.json"

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

postgres_ddl-1.21.tar.gz (38.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

postgres_ddl-1.21-py3-none-any.whl (56.3 kB view details)

Uploaded Python 3

File details

Details for the file postgres_ddl-1.21.tar.gz.

File metadata

  • Download URL: postgres_ddl-1.21.tar.gz
  • Upload date:
  • Size: 38.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.8

File hashes

Hashes for postgres_ddl-1.21.tar.gz
Algorithm Hash digest
SHA256 83089257f141153fc1c7f9a5b655b72dfdbd49171bbb6acaeb107f0e7d79eeb7
MD5 ddc1e23b006d007914473a3753bf5d0f
BLAKE2b-256 98045039d83cfb98a03563a83752aba70bf00b84693d6408debcfa99200a1852

See more details on using hashes here.

File details

Details for the file postgres_ddl-1.21-py3-none-any.whl.

File metadata

  • Download URL: postgres_ddl-1.21-py3-none-any.whl
  • Upload date:
  • Size: 56.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.8

File hashes

Hashes for postgres_ddl-1.21-py3-none-any.whl
Algorithm Hash digest
SHA256 a7a32689dd5db4a42dd42b2e8a97095bf8256977cb2dd144cc92f5dcac2e358b
MD5 44460006096b11b8329c0b3b836cb281
BLAKE2b-256 72524b673c5d22918c1eabe963d8f041e27658a4e13d62577b8acb6f98dca48f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page