У меня есть некоторые данные, которые я нашел на веб-сайте Office for National Statistics (UK), который я пытаюсь передать из файла csv в базу данных PostgreSQL для выполнения запросов, обработки данных и создания визуализации. Я использую программу, которую я нашел, называется pgfutter, чтобы попытаться сделать этот процесс более простым (я ожидаю, что вам придется делать это несколько раз для разных данных csv).
Однако, поскольку я пытался запустить pgfutter при регистрации в качестве пользователя root или из моего каталога пользователя (./pgfutter csv downloadedfile.csv) Я получил эту ошибку:
pq: password authentication failed for user "postgres"
Хорошо, подумал я, поэтому я переключился на учетную запись postgres , и включил postgres в файл sudoers. При запуске в качестве пользователя postgres команда завершилась с той же ошибкой, и не было задано значение для ввода пароля для пользователя postgres.
Итак ... Я зашел в учетную запись postgres и вместо этого sudo ./pgfutter csv downloadedfile.csv оттуда. Это, по крайней мере, вызвало пароль, но привело к этой ошибке:
postgres is not in the sudoers file. This incident will be reported.
Итак, я опустился в корень и открыл /etc/sudoers и отредактировал в этой строке:
username ALL=(ALL) ALL
Это привело к той же ошибке. Я даже пытался изменить это на:
%username ALL=(ALL) ALL
Который приводит к той же ошибке.
Я был в понимании того, что добавление username ALL=(ALL) ALL в файл sudoers позволит всем пользователям получить доступ к sudo (у меня также есть %sudo ALL=(ALL:ALL) ALL в файле sudoers), но в настоящее время это не так.
Как предоставить разрешение postgres user sudo и, следовательно, разрешить программа для правильного выполнения и переноса данных в мою базу данных?