Problem beim Verbinden mit Postgresql DB auf Heroku mit Korma (Clojure)

8

Ich analysiere die postgresql-URL in meinen Konfigurationseinstellungen auf Heroku. Aber ich kann es nicht funktionieren lassen. Jede Hilfe würde sehr geschätzt werden, ich vermisse wahrscheinlich etwas direkt.

Hier ist der verwendete Code.

%Vor%

Die Karte, die ich von der URI abruft, sieht folgendermaßen aus:

%Vor%

Ich erhalte den folgenden Fehler:

%Vor%

BEARBEITEN:

Ich habe seitdem die Verwendung von Korma aufgegeben und bin zu Clojure.JDBC 0.2.3 gewechselt, das "connection-uri" und somit ssl-Verbindungen zur db unterstützt. Korma unterstützt dies derzeit nicht. Ich werde ein Problem auf Github einreichen, um diese Verbindungsmethode zu erlauben.

    
conorwade 01.11.2012, 11:01
quelle

4 Antworten

5

BEARBEITEN: Es gibt keinen Grund mehr [org.clojars.ccfontes/korma "0.3.0-beta12-pgssl"] zu verwenden. Lesen Sie das , um mehr darüber zu erfahren. Bitte ignorieren Sie auch die folgenden Anweisungen.

Hinzugefügt postgres SSL Unterstützung.

In project.clj einfügen: [org.clojars.ccfontes/korma "0.3.0-beta12-pgssl"]

Definieren einer Verbindung zu einer Postgres-Datenbank auf Heroku:

%Vor%

Das Update verwendet den Tomcat JDBC-Verbindungspool und deren Konfigurationsbeispiel für die Verbindung Pool, so dass es nicht gut für alle Bedürfnisse geeignet ist, und das ist nur ein Hack. Im Idealfall sollte das ursprüngliche Korma-Projekt diese Änderungen oder andere mögliche Lösungen integrieren.

Ich würde mich über Feedback von anderen Leuten freuen, da es nur in meinem eigenen Projekt getestet wurde. Danke.

    
Carlos Fontes 30.11.2012, 04:21
quelle
1

Tatsächlich ist die Lösung wirklich einfach und funktioniert nur lokal:

%Vor%

Wo DATABASE_URL ist "postgres: // Benutzer: pw @ Host: Port / Datenbankname? ssl = true & amp; sslfactory = org.postgresql.ssl.NonValidatingFactory"

Es scheint, dass der Datenbankname die SSL-Parameter an den zugrundeliegenden Treiber weiterleitet und es funktioniert einfach.

Dies ist mit:

%Vor%     
Jeroen van Dijk 31.01.2013 12:31
quelle
1

In Ihrem EDIT erwähnen Sie den Wechsel zu clojure.java.jdbc, weil Sie damit SSL über den Verbindungs-URI aktivieren konnten. Sie können die gleiche Technik mit Korma verwenden, indem Sie die Funktion korma.db / defdb verwenden, mit der Sie Ihre eigene Verbindungs-URL angeben und SSL mithilfe der folgenden Abfragezeichenfolge aktivieren können:

%Vor%     
user1461613 03.04.2013 22:35
quelle
0

FWIW, hier ist der Code, den ich benutzt habe, um eine clojure.java.jdbc db-spec (die ich glaube, was Korma will) aus Herokus DATABASE_URL zu bekommen.

%Vor%     
duelin markers 02.11.2012 15:07
quelle

Tags und Links