Data source with Oracle

I’m not able to use the connection to Oracle, is there any prerequisites?

on file \metabase\src\metabase\driver\oracle.clj :

;; only register the Oracle driver if the JDBC driver is available
(when (u/ignore-exceptions
(Class/forName “oracle.jdbc.OracleDriver”))

;; By default the Oracle JDBC driver isn’t compliant with JDBC standards – instead of returning types like java.sql.Timestamp
;; it returns wacky types like oracle.sql.TIMESTAMPT. By setting this System property the JDBC driver will return the appropriate types.
;; See this page for more details: http://docs.oracle.com/database/121/JJDBC/datacc.htm#sthref437
(.setProperty (System/getProperties) “oracle.jdbc.J2EE13Compliant” “TRUE”)

(driver/register-driver! :oracle (OracleDriver.)))

but JDBC drive is installed

Any suggestion?

Tanks

did you follow the directions in http://www.metabase.com/docs/v0.20.1/administration-guide/databases/oracle.html re classpath?

2 Likes

It is this !!

Tanks !

install by docker
it does not works.

@frank11111111 Can you share what you tried regrading mapping of the Oracle driver to the docker container. “It does not work” is not much to go by if you want anyone to try to help you out.

I created a vitual catalog app/plugins/ in docker and take ojdbc7.jar in. then restart docker picture. oracle it still not in the menu item.

Ah OK - that helps me :slight_smile:

Try also setting the MB_PLUGINS_DIR environment variable (in your preferred way) so it’s detected by Metabase.jar in the container. I know it shouldn’t be necessary with your use of the default location … but I think someone in here mentioned it as a needed extra workaround.

I have wanted to try that out myself as well to get another JDBC driver to work in Docker … but never got around to it …

Also: do you see the plugin being detected or not in the console log when the container starts?

1 Like

Refer https://www.metabase.com/docs/v0.20.1/administration-guide/databases/oracle.html.
If using docker, the actual path for plugins IS "/plugins", NOT "/app/plugins".

@androidotai I would recommend referencing the latest version of the documentation:
https://www.metabase.com/docs/latest/operations-guide/running-metabase-on-docker.html#adding-external-dependencies-or-plugins
Version 0.20.1 is several years old.