i want to change the database connection to postgres and manage to change it through the config.clj. But when i run it require a user. i was wondering where do i input my postgres server user and password ? i can't find it after looking at the usual page (env.clj and postgres.clj)
thank you for the fast response, i was wondering where do i add this enviorment variable.. i dont want to run export MB_DB_USER and pass everytime i want to access my postgres databse server for metabase. was wondering if i can just code it down ?
I have the same error on my side. I am migrating from h2 to postgres. Migration is ok, database is setted up, I can connect to it and it contains all tables. But when I start metabase (alongside postres) with docker-compose I have this error :
metabase-app | 2022-04-13 16:05:26,662 ERROR metabase.core :: Metabase Initialization FAILED
metabase-app | clojure.lang.ExceptionInfo: Unable to connect to Metabase postgres DB. {}
metabase-app | at metabase.db.setup$fn__33730$verify_db_connection__33735$fn__33736$fn__33737.invoke(setup.clj:102)
metabase-app | at metabase.db.setup$fn__33730$verify_db_connection__33735$fn__33736.invoke(setup.clj:100)
metabase-app | at metabase.db.setup$fn__33730$verify_db_connection__33735.invoke(setup.clj:94)
metabase-app | at metabase.db.setup$setup_db_BANG_$fn__33765$fn__33766.invoke(setup.clj:142)
metabase-app | at metabase.util$do_with_us_locale.invokeStatic(util.clj:693)
metabase-app | at metabase.util$do_with_us_locale.invoke(util.clj:679)
metabase-app | at metabase.db.setup$setup_db_BANG_$fn__33765.invoke(setup.clj:141)
metabase-app | at metabase.db.setup$setup_db_BANG_.invokeStatic(setup.clj:140)
metabase-app | at metabase.db.setup$setup_db_BANG_.invoke(setup.clj:136)
metabase-app | at metabase.db$setup_db_BANG_$fn__33873.invoke(db.clj:61)
metabase-app | at metabase.db$setup_db_BANG_.invokeStatic(db.clj:56)
metabase-app | at metabase.db$setup_db_BANG_.invoke(db.clj:51)
metabase-app | at metabase.core$init_BANG_.invokeStatic(core.clj:91)
metabase-app | at metabase.core$init_BANG_.invoke(core.clj:74)
metabase-app | at metabase.core$start_normally.invokeStatic(core.clj:135)
metabase-app | at metabase.core$start_normally.invoke(core.clj:129)
metabase-app | at metabase.core$_main.invokeStatic(core.clj:168)
metabase-app | at metabase.core$_main.doInvoke(core.clj:162)
metabase-app | at clojure.lang.RestFn.invoke(RestFn.java:397)
metabase-app | at clojure.lang.AFn.applyToHelper(AFn.java:152)
metabase-app | at clojure.lang.RestFn.applyTo(RestFn.java:132)
metabase-app | at metabase.core.main(Unknown Source)
metabase-app | Caused by: org.postgresql.util.PSQLException: FATAL: no PostgreSQL user name specified in startup packet
The docker-compose.yml file is (v0.41.6 because I am migrating from a h2 with this version) :
If I add an MB_DB_USER in metabase environment vars, the error is now an IllegalArg exception about password empty string.
2022-04-13 15:49:23,997 ERROR metabase.core :: Metabase Initialization FAILED
metabase-app | clojure.lang.ExceptionInfo: Unable to connect to Metabase postgres DB. {}
metabase-app | at metabase.db.setup$fn__33730$verify_db_connection__33735$fn__33736$fn__33737.invoke(setup.clj:102)
metabase-app | at metabase.db.setup$fn__33730$verify_db_connection__33735$fn__33736.invoke(setup.clj:100)
metabase-app | at metabase.db.setup$fn__33730$verify_db_connection__33735.invoke(setup.clj:94)
metabase-app | at metabase.db.setup$setup_db_BANG_$fn__33765$fn__33766.invoke(setup.clj:142)
metabase-app | at metabase.util$do_with_us_locale.invokeStatic(util.clj:693)
metabase-app | at metabase.util$do_with_us_locale.invoke(util.clj:679)
metabase-app | at metabase.db.setup$setup_db_BANG_$fn__33765.invoke(setup.clj:141)
metabase-app | at metabase.db.setup$setup_db_BANG_.invokeStatic(setup.clj:140)
metabase-app | at metabase.db.setup$setup_db_BANG_.invoke(setup.clj:136)
metabase-app | at metabase.db$setup_db_BANG_$fn__33873.invoke(db.clj:61)
metabase-app | at metabase.db$setup_db_BANG_.invokeStatic(db.clj:56)
metabase-app | at metabase.db$setup_db_BANG_.invoke(db.clj:51)
metabase-app | at metabase.core$init_BANG_.invokeStatic(core.clj:91)
metabase-app | at metabase.core$init_BANG_.invoke(core.clj:74)
metabase-app | at metabase.core$start_normally.invokeStatic(core.clj:135)
metabase-app | at metabase.core$start_normally.invoke(core.clj:129)
metabase-app | at metabase.core$_main.invokeStatic(core.clj:168)
metabase-app | at metabase.core$_main.doInvoke(core.clj:162)
metabase-app | at clojure.lang.RestFn.invoke(RestFn.java:397)
metabase-app | at clojure.lang.AFn.applyToHelper(AFn.java:152)
metabase-app | at clojure.lang.RestFn.applyTo(RestFn.java:132)
metabase-app | at metabase.core.main(Unknown Source)
metabase-app | Caused by: org.postgresql.util.PSQLException: Something unusual has occurred to cause the driver to fail. Please report this exception.
metabase-app | at org.postgresql.Driver.connect(Driver.java:285)
metabase-app | at java.sql/java.sql.DriverManager.getConnection(Unknown Source)
metabase-app | at java.sql/java.sql.DriverManager.getConnection(Unknown Source)
metabase-app | at clojure.java.jdbc$get_driver_connection.invokeStatic(jdbc.clj:271)
metabase-app | at clojure.java.jdbc$get_driver_connection.invoke(jdbc.clj:250)
metabase-app | at clojure.java.jdbc$get_connection.invokeStatic(jdbc.clj:411)
metabase-app | at clojure.java.jdbc$get_connection.invoke(jdbc.clj:274)
metabase-app | at clojure.java.jdbc$db_query_with_resultset_STAR_.invokeStatic(jdbc.clj:1111)
metabase-app | at clojure.java.jdbc$db_query_with_resultset_STAR_.invoke(jdbc.clj:1093)
metabase-app | at clojure.java.jdbc$query.invokeStatic(jdbc.clj:1182)
metabase-app | at clojure.java.jdbc$query.invoke(jdbc.clj:1144)
metabase-app | at clojure.java.jdbc$query.invokeStatic(jdbc.clj:1160)
metabase-app | at clojure.java.jdbc$query.invoke(jdbc.clj:1144)
metabase-app | at metabase.driver.sql_jdbc.connection$can_connect_with_spec_QMARK_.invokeStatic(connection.clj:245)
metabase-app | at metabase.driver.sql_jdbc.connection$can_connect_with_spec_QMARK_.invoke(connection.clj:242)
metabase-app | at metabase.db.setup$fn__33730$verify_db_connection__33735$fn__33736$fn__33737.invoke(setup.clj:100)
metabase-app | ... 21 more
metabase-app | Caused by: java.lang.IllegalArgumentException: Empty string 'password'