Datenbank MySQL
Anlegen von Datenbank-Schema und -Benutzer
Führen Sie das folgende SQL-Script mit dem Datenbank-Benutzer root aus (z.B. via MySQL Workbench):
-- create schema goco;
create schema goco;
create user goco identified by 'goco';
REVOKE ALL PRIVILEGES,GRANT OPTION from goco;
GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE, SHOW VIEW, CREATE, ALTER, INDEX, DROP, REFERENCES ON goco.* TO 'goco';
-- create schema quartz
create schema quartz;
create user quartz identified by 'quartz';
REVOKE ALL PRIVILEGES,GRANT OPTION from quartz;
GRANT SELECT, INSERT, UPDATE, DELETE ON quartz.* TO 'quartz';
Belassen Sie die Passwörter für die Benutzer goco und quartz vorerst, bis die Erstinstallation durchgeführt und verifiziert ist. Danach können die Passwörter geändert werden wie beschrieben unter Wie kann ich das Datenbank-Passwort ändern?
Anlegen der Quartz-Tabellen (Job-Scheduling)
Führen Sie das folgende Script aus (dies erstellt Tabellen im Schema "quartz", welche für das nächtliche Batchjob-Scheduling zuständig sind):
Import der vorbereiteten Datenbank
- Laden Sie den initialen DB-Load herunter (Save Link As...), den wir Ihnen als Self-Contained File in der Download-Area bereitgestellt haben (mysql-dbload-initial.sql).
- Importieren Sie dies in MySQL (z.B. via MySQL Workbench, Menü Server --> Import --> Import From Self-Contained File). Wählen Sie als Default Target Schema "goco" aus.
- Der Import-Screen der MySQL Workbench zeigt nach einigen Sekunden einen grünen Balken zum Zeichen, dass der Import erfolgreich war. Zur Überprüfung aktualisieren Sie auf der linken Sidebar die Schemas, öffnen das Schema "goco", und überzeugen sich, dass es Tabellen enthält (Prefix co_).
Anpassen context.xml des Application Server für MySQL
Um auf dem Application Server die Datenbank-Connection zu konfigurieren, öffnen Sie das File context.xml (in <Tomcat-Directory>/conf). Fügen Sie folgende Zeilen direkt hinter dem Element <context> ein. Dies erstellt die Datenbank Data-Sources für die Schemas "goco" und "quartz":
<Resource
name="gocoTenantDs"
factory="com.gocompliant.encryptedDs.EncryptedDataSourceFactory"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/goco"
username="goco"
password="922f591c101ab822305be286a532c196"
maxActive="20"
minIdle="0"
maxIdle="0"
minEvictableIdleTimeMillis="14400000"
maxWait="-1" />
<Resource
name="quartz"
factory="com.gocompliant.encryptedDs.EncryptedDataSourceFactory"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/quartz"
username="quartz"
password="2259b33c5588618ee0742b2ced9998e6"
maxActive="20"
minIdle="0"
maxIdle="0"
minEvictableIdleTimeMillis="14400000"
maxWait="-1" />
Alternative zu MySQL: Datenbank Oracle
Anlegen von Datenbank-Benutzer, Tablespaces und Quartz-Tabellen
- Loggen Sie sich als Benutzer mit DBA-Rolle an der Oracle-Instanz ein, die Sie für die GoCompliant ToolSuite vorgesehen haben.
- Führen Sie das folgende SQL-Script aus:
01_create_users.sql
Dieses legt die Benutzer "goco" und "quartz" sowie einige Grants an. Belassen Sie die Passwörter für die Benutzer goco und quartz vorerst, bis die Erstinstallation durchgeführt und verifiziert ist. Danach können die Passwörter geändert werden wie beschrieben unter Wie kann ich das Datenbank-Passwort ändern?
Der Benutzer "goco" erhält Grants für CREATE TABLE/VIEW, wodurch die Software in die Lage versetzt wird, bei Update-Releases das Datenbankschema selbständig zu aktualisieren. - Das folgende Script legt initial einen 500MB Tablespace für die Benutzer "goco" und "quartz" an:
02_example_create_tablespaces.sql
Es ist als Beispiel zu verstehen und sollte von Ihnen angepasst werden. Der Platzbedarf für die GoCompliant ToolSuite ist wesentlich bestimmt von den Dateien, die als BLOB von den Benutzern hochgeladen werden (Limit ist 20MB pro Datei), und variiert daher stark. Als grober Anhaltspunkt kann die Aussage dienen, dass eine mittlere Installation (<100 Benutzer) mit einigen GB erfahrungsgemäss einige Jahre auskommen wird. - Das folgende Script legt Hilfstabellen für Quartz an, die von dem Benutzer "quartz" für das Job-Scheduling verwendet werden:
03_create_quartz_tables.sql
Anlegen von GoCompliant Tabellen-Struktur, Initialdaten und vorbereiteten Inhalten
Laden Sie die folgenden Scripts herunter (Rechtsklick → Save Link As...), die wir Ihnen in der Download-Area bereitgestellt haben, und führen Sie sie aus. Sie können die Scripts sowohl mit einer DBA-Rolle als auch unter dem Benutzer "goco" ausführen. Die Scripts sind UTF-8 encoded, um deutsche/französische/italienische Umlaute/Sonderzeichen korrekt zu behandeln. Stellen Sie vor Ausführung des Scripts 05_goco_insert_init_data.sql sicher, dass das UTF-8 Encoding auch bei Ihnen auf dem DB-Server und dem DB-Client eingestellt ist (kurze Überprüfung einiger Umlaute im Script reicht).
- 04_goco_create_tables.sql
- 05_goco_insert_init_data.sql
- 06_goco_insert_customer_data.sql
Optional: Ersetzen des "initialuser" Benutzers
Im Normalfall liefern wir Ihnen im Script 06_goco_insert_customer_data.sql schon initial einige vorkonfigierte Benutzer mit, deren Benutzer-IDs auf ihre Windows Benutzer-IDs passen, sodass Sie sich sofort mit Single Sign-On via Active Directory einloggen können. Falls dies nicht der Fall ist (wird in der Auslieferungs-Mail explizit erwähnt), müssen Sie die "initialuser" Benutzer-ID mit Ihrer Windows Benutzer-ID ersetzen. Ersetzen Sie im folgenden Script YOUR_WINDOWS_USER_ID mit Ihrer Windows Benutzer-ID und führen Sie es dann aus:
update goco.co_employee set user_id = 'YOUR_WINDOWS_USER_ID' where user_id = 'initialuser';
commit;
Anpassen context.xml des Application Server für Oracle
Um auf dem Application Server die Datenbank-Connections zu konfigurieren, öffnen Sie das File context.xml (in <Tomcat-Directory>/conf). Fügen Sie folgende Zeilen direkt hinter dem Element <context> ein.
WICHTIG: Ersetzen Sie YOUR_SID beide Male durch die von Ihnen vorgesehene Oracle SID.
<Resource
name="gocoTenantDs"
factory="com.gocompliant.encryptedDs.EncryptedDataSourceFactory"
auth="Container"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@localhost:1521:YOUR_SID"
username="goco"
password="922f591c101ab822305be286a532c196"
maxActive="20"
minIdle="0"
maxIdle="0"
minEvictableIdleTimeMillis="14400000"
maxWait="-1" />
<Resource
name="quartz"
factory="com.gocompliant.encryptedDs.EncryptedDataSourceFactory"
auth="Container"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@localhost:1521:YOUR_SID"
username="quartz"
password="2259b33c5588618ee0742b2ced9998e6"
maxActive="20"
minIdle="0"
maxIdle="0"
minEvictableIdleTimeMillis="14400000"
maxWait="-1" />
Installation der Software auf dem Application-Server
Installation des war-file
- Stoppen Sie den Tomcat-Service.
- Löschen Sie das Verzeichnis <Tomcat-Directory>/webapps/ROOT.
- Laden Sie das war-file von der Download-Area herunter. Die Namenskonvention für das war-file ist immer folgendermassen:
gocompliant-ics-{Version}-{Login-variante}-{HTTP-oder-HTTPS-Variante}.war
Die normalerweise installierte Varianten sind:
Login-Variante: ssoad (Single Sign-On via Active Directory)
HTTP-oder-HTTPS-Variante: httpallowed
Wir empfehlen, zunächst diese Variante herunterzuladen, also z.B. gocompliant-ics-1.5.0-ssoad-httpallowed.war - Kopieren Sie das war-file nach <Tomcat-Directory>/webapps, also z.B. C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps
- Benennen Sie das war-file um nach ROOT.war
- Starten Sie den Tomcat-Service neu
- Öffnen Sie mit einem Browser http://localhost oder http://localhost:8080 und verifizieren Sie, das die GoCompliant Application läuft. Wenn Sie eine SSO Login-Variante gewählt haben, sollten Sie automatisch eingeloggt werden (dazu muss Ihr Windows Benutzername mit einem der auf der Datenbank vorkonfigurierten Benutzern übereinstimmen). Ansonsten sollten Sie eine Login-Seite sehen.
Nach der Installation
Bevor die Applikation für die Fachabteilungenen freigegeben wird, sollten die wichtigsten Systemparameter konfiguriert werden. Eine Beschreibung dieser Parameter findet sich im Abschnitt Systemparameter.
Wenn Sie die LDAP (Active Directory) Synchronisierung verwenden möchten, findet sich eine Beschreibung der entsprechenden Parameter im Abschnitt LDAP (Active Directory) Systemparameter.
Wenn Sie die Applikation über https laufen lassen wollen und über ein entsprechendes Zertifikat verfügen, folgen Sie der Anleitung: Wie kann ich HTTPS einrichten bzw. erzwingen?