Skip to main content

Nexus Repository Database

Nexus Repository has two databases available. Use the following table to choose a database for your deployment.

Database

Appropriate For

External PostgreSQL

(Preferred)

The following features are only available for PostgreSQL deployments.

  • Mission-critical enterprise deployments that require shorter maintenance windows.

  • Cloud deployments (AWS, Azure) using Kubernetes

  • Deployments planning to use a resilient or highly available (HA) deployment model

    High Availability (HA)

  • Replicate content to remote access points for faster delivery of assets and short build times.

    Content replication

Embedded H2

  • Small workloads (maximum 20,000 requests per day and 100,000 components

  • Single-team deployments

  • Non-mission-critical deployments

  • Disposable temporary deployments

Nexus Repository instances used beyond these levels may become unstable. Sonatype is not able to guarantee support for your deployment beyond these limits.

See our Nexus Repository reference architectures.

Legacy Orient Database

Nexus Repository's legacy embedded OrientDB database is in extended maintenance as of August 2024. Nexus Repository deployments must migrate off of OrientDB.

You must remain on the 3.70.x version line if you are unable to migrate at this time.

The migration from OrientDB's NoSQL database to PostgreSQL has introduced fundamental changes in the external behavior of Nexus Repository.

  • Features not supported for PostgreSQL

    The Legacy high availability clustering (HA-C) and community formats are not supported for PostgreSQL environments. The Bower format has also been removed.

  • External plugins will not work

    External plugins that introduce new repository types, interact with repository content, or interact with the database directly need to be updated to accommodate the PostgreSQL database.

  • Backup and restore

    Existing OrientDB backups are not compatible with PostgreSQL and there is no similar task for backing up the PostgreSQL database in Nexus Repository.

  • Logging

    Logging related to database interactions is different.

  • Asset paths require a forward slash

    The asset name matchers are interpreted differently. Regular expressions are no longer anchored by default meaning that results are different for cleanup policies and asset references using the API. References to assets require a forward slash in front of a path to work.

  • Groovy scripting is not recommended

    Groovy scripts accessed undocumented Nexus Repository APIs that need to be updated to work. For both security and forward compatibility reasons, we recommend making use of the public REST API as much as possible rather than using Groovy scripting.

  • Coordinate-based content selectors

    Content selectors that use coordinates are deprecated in PostgreSQL and are no longer supported.

  • Changes impacting webhooks events

    When performing component cleanup, Nexus Repository no longer generates DELETED events for each component and assets deleted during component cleanup. Instead, there is an event of type PURGED containing the IDs of all deleted assets and components. More events of type UPDATED are generated during repository uploads.