Как настроить Artifactory, используя PostgreSQL вместо MySQL? - PullRequest
3 голосов
/ 09 июля 2009

Как можно настроить PostgreSQL вместо MySQL для запуска артефакт ?

Ответы [ 2 ]

3 голосов
/ 24 апреля 2012

Ссылка на файл repo.xml неработоспособна и неверна (поскольку она указывает на конфигурацию mysql).

Чтобы получить правильный файл repo.xml

  1. Загрузка версии OSS с веб-сайта .
  2. распаковать его в папку
  3. Загляните в извлеченную папку и перейдите в / etc / repo
    У вас есть две возможности для postgres:
    A. файловая система-postgres / repo.xml
    B. postgres / repo.xml

  4. скопируйте папку A или B в ваш $ ARTIFACTORY_HOME / etc / repo /

  5. отредактируйте имя пользователя / пароль и информацию о базе данных в файле ** / repo.xml, который вы только что скопировали, согласно конфигурации вашей базы данных.

ПРИМЕЧАНИЕ: помните, что это повлияет на изменения, которые вы сделали в $ ARTIFACTORY_HOME / etc / artifactory.system.properties (artifactory.jcr.configDir = filesystem-postgres ИЛИ artifactory.jcr.configDir = repo / PostgreSQL)

2 голосов
/ 09 июля 2009

В Artifactory 2 вы можете настроить источник данных в соответствии с указанными вами инструкциями, просто сделайте эквивалент для PostgreSQL (заменив эквивалентные значения).

Поэтому измените $ ARTIFACTORY_HOME / etc / artifactory.system.properties, чтобы раскомментировать (и изменить) строку:

artifactory.jcr.configPath=repo/postgresql

Создать файл

$ARTIFACTORY_HOME/etc/repo/postgresql/repo.xml

Файл repo.xml, используемый в качестве базы, упоминается в статье, или вы можете найти его здесь

Затем вам нужно установить содержимое repo.xml в соответствии с настройками вашей базы данных (извлекать соответствующие разделы из указанного файла и изменить то, что я могу):

<!-- MySQL Filesystem -->
<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
    <param name="driver" value="org.postgresql.Driver"/>
    <param name="url" value="jdbc:postgresql:[your database URL]"/>
    <param name="user" value="artifactory_user"/>
    <param name="password" value="password"/>
    <!-- Leave this on "mysql", don't know how these apply for PostgreSQL -->
    <param name="schema" value="[postgresql??]"/>
    <param name="schemaObjectPrefix" value="rep_"/>
</FileSystem>

<!-- http://wiki.apache.org/jackrabbit/DataStore -->

<!-- MySQL Datastore -->
<DataStore class="org.artifactory.jcr.jackrabbit.ArtifactoryDbDataStoreImpl">
    <param name="url" value="jdbc:postgresql:[your database URL]"/>
    <param name="tablePrefix" value=""/>
    <param name="user" value="artifactory_user"/>
    <param name="password" value="password"/>
    <param name="databaseType" value="postgresql"/>
    <param name="driver" value="org.postgresql.Driver"/>
    <param name="minRecordLength" value="512"/>
    <param name="maxConnections" value="15"/>
    <param name="copyWhenReading" value="true"/>
</DataStore>



    <!-- PostGreSQL Persistance Manager -->
    <PersistenceManager
            class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager">
        <param name="url"
               value="jdbc:mysql://localhost:3306/artifactory?useUnicode=true&amp;characterEncoding=UTF-8"/>
        <param name="user" value="artifactory_user"/>
        <param name="password" value="password"/>
        <param name="schemaObjectPrefix" value="${wsp.name}_"/>
    </PersistenceManager>

Не забудьте поместить PostgreSQL jar в каталог WEB-INF / lib, и, как сказано в инструкциях, вероятно, лучше всего запустить его для чистой установки.

Удачи

...