By using Oracle you can benefit from features in Oracle infrastructure such as backup and restore.
For Artifactory to run with Oracle you must create a dedicated Oracle database instance and then configure Artifactory to use it as described in the following sections.
Before proceeding with the steps below, please make sure you have read and followed the steps described in Configuring the Database.
To avoid a regression of performance while upgrading the Oracle database (as a result of changes in the execution plans), make sure to preserve the optimizer's behavior from the previous version. For more details, please refer to Oracle documentation on.
Creating the Artifactory Oracle Database
Artifactory supports Oracle versions 12.2, 18, and 19.
You can choose between two configurations to set up your Oracle Database
DB-Filesystem This configuration stores metadata in Oracle Database and artifact binary data is stored on the file system (under $JFROG_HOME/artifactory/var/data/artifactory/filestore). This option has the advantage of being very lightweight on the Oracle database.
Full DB This configuration stores both metadata and BLOBs in Oracle Database. This option requires minimal maintenance and allows you to rely solely on Oracle for failover and backup procedures, since all data is in the database. When using this option, make sure you have created a table space big enough to accommodate your binaries.
Artifactory creates all tables automatically first time it is run. When performing a software upgrade Artifactory may have to alter tables and indices, so make sure you grant the configured connection the appropriate user permissions to perform such actions.
With both of the above options (Full DB and DB-Filesystem), it is recommended to create a dedicated table space and use AL32UTF8 encoding.
For efficiency, Artifactory uses a checksum to ensure that only one copy of any binary data is stored, however, you may want to reclaim deleted BLOB space from time to time by shrinking the BLOB table space as follows:
{schema}.binary_blobs modify lob (data) (shrink space cascade);