Befolgen Sie die Schritte auf dieser Seite, um CrowdID mit PostgreSQL zu verbinden.


1. Konfiguration von PostgreSQL

  1. Erstellen Sie einen Datenbankbenutzer, mit dem CrowdID sich verbinden wird (z. B. crowduser).
  2. Erstellen Sie eine Datenbank für CrowdID, in der die Daten gespeichert werden (z. B. crowdiddb).
    (Warnung) Diese Datenbank muss eine andere sein als die, die von Crowd verwendet wird.
  3. Stellen Sie sicher, dass der Benutzer die Berechtigungen hat sich mit der Datenbank zu verbinden und Tabellen zu erstellen und zu pflegen.


2. Kopieren Sie den PostgreSQL Treiber in Ihren Applikationsserver

  1. Laden Sie den PostgreSQL JDBC Treiber herunter und speichern Sie ihn für die später ab.
    (Warnung) Der Internet Explorer könnte die Dateiendung möglicherweise von ".jar" zu ".zip" ändern, wenn Sie die Datei herunterladen. Wenn Sie also den Internet Explorer verwenden, benennen Sie bitte die Datei um, sodass sie die ".jar" Endung hat, nachdem Sie sie heruntergeladen haben.
  2. Fügen Sie die PostgreSQL JDBC Treiber JAR-Datei zum folgenden Verzeichnis hinzu:
    • Bei der Crowd Distribution:
      • Crowd 2.0.2 oder neuer: {CROWD_INSTALL}/apache-tomcat/lib/.
      • Crowd 2.0.1 oder älter: {CROWD_INSTALL}/apache-tomcat/common/lib/.
    • Bei der Crowd WAR Distribution kopieren Sie die Treiber JAR-Datei in Ihren Applikationsserver. Zum Beispiel bei Tomcat:
      • Tomcat 5.5.x: common/lib/.
      • Tomcat 6.x: lib/.


3. Konfigurieren Sie Ihren Applikationsserver für die Verbindung mit PostgreSQL

  1. Editieren Sie die apache-tomcat.X.X.XX/conf/Catalina/localhost/openidserver.xml Datei und passen Sie die Parameter username, password, driverClassName und url für die Datenquelle an.

    <Context path="/openidserver" docBase="../../crowd-openidserver-webapp" debug="0">
    
    <Resource name="jdbc/CrowdIDDS" auth="Container" type="javax.sql.DataSource"
    username="[enter db username here]"
    password="[enter db password here]"
    driverClassName="org.postgresql.Driver"
    url="jdbc:postgresql://host:port/crowdiddb" [ see also http://jdbc.postgresql.org/doc.html) ]"
    [ delete the minEvictableIdleTimeMillis, timeBetweenEvictionRunsMillis and maxActive params here ]
    />
    
    <Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false"/>
    
    </Context>
  2. Löschen Sie die Attribute minEvictabledleTimeMillis, timeBetweenEvictionRunsMillis und maxActive. (Sie werden nur für die HSQL Datenbank benötigt und würden andernfalls die Performance verschlechtern.)


4. Konfigurieren Sie CrowdID für die Verwendung von PostgreSQL

  1. Editieren Sie die build.properties Datei, die im Root der Crowd Distribution liegt und modifizieren Sie hibernate.dialect folgendermaßen:

    hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
  2. Führen Sie ./build.sh oder build.bat aus. Dies konfiguriert Crowd für die Verwendung des PostgreSQL Dialekts.

Wenn Sie nicht diese Datei editieren und das Build-Skript ausführen möchten, können Sie direkt die jdbc.properties Datei (welche vom obigen Skript modifiziert wird) bearbeiten. Die jdbc.properties Datei liegt hier: crowd-openidserver-webapp\WEB-IN\classes\jdbc.properties. Passen Sie die Datei folgendermaßen an:

# - Crowd Configuration Options

hibernate.connection.datasource=java\:comp/env/jdbc/CrowdIDDS
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
hibernate.transaction.factory_class=org.hibernate.transaction.JDBCTransactionFactory

...


Nächste Schritte

Sie sollten nun einen Applikationsserver für die Verbindung mit einer Datenbank und CrowdID für die Verwendung der korrekten Datenbank konfiguriert haben. Starten Sie CrowdID und beobachten Sie die Logs für jegliche Fehlermeldungen.




Crowd Dokumentation Übersicht:



Crowd Doku

Diese Seite wurde zuletzt am 23.04.2024 geändert.