Befolgen Sie die Schritte auf dieser Seite, um CrowdID mit PostgreSQL zu verbinden.
1. Konfiguration von PostgreSQL
Erstellen Sie einen Datenbankbenutzer, mit dem CrowdID sich verbinden wird (z. B. crowduser).
Erstellen Sie eine Datenbank für CrowdID, in der die Daten gespeichert werden (z. B. crowdiddb). Diese Datenbank muss eine andere sein als die, die von Crowd verwendet wird.
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
Laden Sie den PostgreSQL JDBC Treiber herunter und speichern Sie ihn für die später ab. 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.
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
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>
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
Editieren Sie die build.properties Datei, die im Root der Crowd Distribution liegt und modifizieren Sie hibernate.dialect folgendermaßen:
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:
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.