Параметры подключения для imposm не работают из-за специальных символов

Я хочу запустить imposm для импорта данных OSM в базу данных PostGIS. Моя проблема в том, что пароль для БД содержит специальные символы, такие как «:» (двоеточие). Я не могу изменить пароль.

В документации указано, что параметр подключения можно использовать следующим образом:

Параметр -connection принимает URL-адрес в формате postgis: // имя пользователя: пароль @ хост : порт / имя базы данных или список параметров, например postgis: host= / tmp dbname=osm

Однако это приводит к ошибке из-за специальных символов в пароле.

       parsing database connection URL: parse "postgres://user:pss?wo:r?d!@host/osm": invalid port ":r?d" after host

В документации также говорится об использовании списка параметров, но мне непонятно, как эти параметры должны быть названы.

Кто-нибудь знает, как передать параметры подключения списком вместо URL-шифрования? Я могу только найти host а также dbnameи я не знаю, как написать соединение точно. Или есть возможность экранировать специальные символы в URL-адресе?

1 ответ

Вы должны кодировать специальные символы.

Если ваш пароль pss?wo:r?d!, URL-адрес подключения будет

      postgresql://user:pss%3Fwo%3Ar%3Fd%21@host/osm
Другие вопросы по тегам