Есть ли альтернативный способ импорта данных в Postgres, чем использование psql?

Я нахожусь в строгой корпоративной среде и не имею доступа к psql Postgres. Поэтому я не могу делать то, что показано, например. в SO Преобразовать файл дампа SQLITE SQL в POSTGRESQL. Однако я могу создать файл дампа sqlite .sql. Полученный файл dump.sql имеет размер 1,3 ГБ.

Как лучше всего импортировать эти данные в Postgres? У меня также есть DBeaver, и я могу одновременно подключаться к обеим базам данных, но, к сожалению, не могу выполнить INSERT из SELECT.


person SkyWalker    schedule 09.07.2021    source источник
comment
Вы можете использовать psql на удаленном компьютере для подключения.   -  person Adrian Klaver    schedule 09.07.2021
comment
К чему можно получить доступ, кроме покалеченного DBeaver? Перл? Питон? Р?   -  person jjanes    schedule 09.07.2021
comment
@jjanes У меня есть Python   -  person SkyWalker    schedule 09.07.2021


Ответы (3)


Я думаю, что это термин «абсурдный», а не «строгий».

DBeaver имеет функцию «выполнить скрипт». Но кто знает, может, его заблокируют.

person jjanes    schedule 09.07.2021
comment
Спасибо, но «исполняемый скрипт» DBeaver основан на psql :((( поэтому он жалуется, что psql недоступен. - person SkyWalker; 09.07.2021

EnterpriseDB предлагает загрузку двоичных файлов. Если вы разархивируете их на локальный диск, вы сможете запустить psql из подкаталога bin.

person bfris    schedule 09.07.2021

Если вы можете установить psycopg2 или pg8000 для python, вы сможете подключиться к базе данных, а затем перебрать файл дампа, отправив каждую строку в базу данных с помощью cur.execute(line) . Если в файле дампа есть какие-либо многострочные команды, может потребоваться некоторая возня, но пример, на который вы ссылаетесь, не показывает ни одной из них.

person jjanes    schedule 09.07.2021