prog:oracle_rest_data_service_multiple_databases
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
prog:oracle_rest_data_service_multiple_databases [2017/05/16 07:51] – [Lösung 2 - Ein ORDS ist für mehrere Datenbanken (mit je eine APEX Instance) zuständig über mehrere Pools] gpipperr | prog:oracle_rest_data_service_multiple_databases [2017/05/16 10:28] (aktuell) – [ORDS überprüfen] gpipperr | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | =====Oracle ORDS 3.0 (Oracle REST Data Services) für mehrere APEX Datenbank Instancen betreiben===== | ||
+ | **<fc # | ||
+ | |||
+ | |||
+ | |||
+ | **Lösung 1 - Ein Tomcat hält pro Datenbank eine eigene ORDS Umgebung** | ||
+ | |||
+ | |||
+ | {{ : | ||
+ | |||
+ | ORDS mehrfach unter verschiedenen WAR Namen in Tomcat aufsetzen | ||
+ | |||
+ | |||
+ | Ablauf: | ||
+ | - Im ORDS War Pfad zu den Bildern hinterlegen | ||
+ | - ORDS War in gewünschten Pfad umbenennen/ | ||
+ | - | ||
+ | - | ||
+ | - | ||
+ | - War in den Tomcat kopieren und dort deployen | ||
+ | |||
+ | <fc # | ||
+ | |||
+ | <fc # | ||
+ | |||
+ | |||
+ | **Lösung 2 - Ein ORDS ist für mehrere Datenbanken (mit je eine APEX Instance) zuständig über mehrere Pools** | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Ablauf: | ||
+ | - Pool für die neue Datenbank anlegen | ||
+ | - URL Mapping definieren | ||
+ | |||
+ | <fc # | ||
+ | <fc # | ||
+ | |||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | |||
+ | ===ORDS überprüfen === | ||
+ | |||
+ | Wo liegt das Konfigurationsverzeichnis mit **java -jar .\ords.war configdir**? | ||
+ | |||
+ | <code powerschell> | ||
+ | java -jar .\ords.war configdir | ||
+ | |||
+ | Mai 15, 2017 10:11:12 PM | ||
+ | INFO: The config.dir value is C: | ||
+ | |||
+ | </ | ||
+ | |||
+ | Sind die Metadaten des ORDS alle gültig und passt DB und ORDS Version zusammen mit ** | ||
+ | java -jar .\ords.war validate**: | ||
+ | |||
+ | <code powershell> | ||
+ | |||
+ | java -jar .\ords.war validate | ||
+ | Enter the name of the database server [10.10.10.1]: | ||
+ | Enter the database listen port [1521]: | ||
+ | Enter the database service name [GPI]: | ||
+ | Please login with SYSDBA privileges to verify Oracle REST Data Services schema. | ||
+ | |||
+ | Enter the username with SYSDBA privileges to verify the installation [SYS]: | ||
+ | Enter the database password for SYS: | ||
+ | Confirm password: | ||
+ | |||
+ | Oracle REST Data Services will be validated. | ||
+ | Validating Oracle REST Data Services schema version 3.0.9.348.07.16 | ||
+ | ... Log file written to C: | ||
+ | Completed validating Oracle REST Data Services version 3.0.9.348.07.16. | ||
+ | </ | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | ====Lösung 1 - Ein Tomcat hält pro Datenbank eine eigene ORDS Umgebung==== | ||
+ | |||
+ | |||
+ | Das ORDS WAR wird mehrfach unter verschiedenen WAR Namen in Tomcat deployed. | ||
+ | |||
+ | Jede Datenbank Verbindung läuft damit über einen eigenen Tomcat Container | ||
+ | |||
+ | |||
+ | Ablauf: | ||
+ | - Im ORDS War Pfad zu den Bildern hinterlegen | ||
+ | - ORDS War in gewünschten Pfad umbenennen/ | ||
+ | - Konfig Directory pro Abteilung anlegen | ||
+ | - Konfig Directory im ORDS War hinterlegen | ||
+ | - Konfig für das " | ||
+ | - War in den Tomcat kopieren und dort deployen | ||
+ | - Apache Konfiguration prüfen und bei Bedarf anpassen | ||
+ | |||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | |||
+ | ====Lösung 2 - Ein ORDS ist für mehrere Datenbanken (mit je eine APEX Instance) zuständig über mehrere Pools ==== | ||
+ | ===Pool für die neue Datenbank hinzufügen=== | ||
+ | |||
+ | |||
+ | mit **java -jar .\ords.war setup --database < | ||
+ | |||
+ | <code powershell> | ||
+ | java -jar .\ords.war setup --database gpi2 | ||
+ | # alle Dialoge ausfüllen | ||
+ | </ | ||
+ | |||
+ | Nun werden im ords/conf/ Verzeichniss alle Pool Dateien mit " | ||
+ | |||
+ | |||
+ | ===URL Mapping definieren === | ||
+ | |||
+ | |||
+ | Wie erfolgt das Mapping? Anzeige der Hilfe mit **java -jar .\ords.war help map-url**. | ||
+ | |||
+ | Mit **java -jar .\ords.war map-url --type base-path --workspace-id INTERNAL < | ||
+ | <code powershell> | ||
+ | java -jar .\ords.war map-url --type base-path --workspace-id INTERNAL /gpi2 gpi2 | ||
+ | </ | ||
+ | |||
+ | Eine Datei " | ||
+ | |||
+ | <code xml> | ||
+ | <?xml version=" | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ====Fehler - 404 Not Found The request could not be mapped to any database ==== | ||
+ | |||
+ | Soweit die Theorie mit dem ORDS Multi Pooling => leider bekomme ich nur eine 404 m( wenn ich versuche die URL < | ||
+ | |||
+ | |||
+ | < | ||
+ | [TE] url-mapping start: 2017-05-15T20: | ||
+ | [TE] GET /ords/gpi2/ start: 2017-05-15T20: | ||
+ | |||
+ | URLMappingNotFoundException [statusCode=404, | ||
+ | </ | ||
+ | |||
+ | |||
+ | Nun ist guter Rat teuer .... | ||
+ | |||
+ | Nach dem ersten Aufruf nur die Seite "404 Page Not found" erhalten, hier läuft etwas falsch ..... | ||
+ | |||
+ | Debugging / logging aktivieren über die default.xml | ||
+ | <code xml> | ||
+ | <entry key=" | ||
+ | <entry key=" | ||
+ | </ | ||
+ | |||
+ | Logging einschalten: | ||
+ | <code xml> | ||
+ | <entry key=" | ||
+ | <entry key=" | ||
+ | </ | ||
+ | |||
+ | |||
+ | Immer noch keine Lösung, bin noch weiter am Suchen, was hier für ein trivialer aber nerviger Fehler vorliegt. | ||
+ | |||
+ | |||
+ | Kontrolle der Metadaten des ORDS: | ||
+ | |||
+ | <code sql> | ||
+ | select * from ords_metadata.apex_pool_config; | ||
+ | </ | ||
+ | |||
+ | |||
+ | demnächst mehr | ||
+ | ====Quellen ==== | ||
+ | |||
+ | * https:// | ||
+ | * https:// | ||
+ | |||
+ | * http:// | ||
+ | |||
+ | |||
+ | ORDS Übersicht | ||
+ | |||
+ | * http:// |
prog/oracle_rest_data_service_multiple_databases.txt · Zuletzt geändert: 2017/05/16 10:28 von gpipperr