как узнать пароль пользователя postgresql
Пароль пользователя postgres — как задать и изменить пароль
Команды по администрированию базами и пользователями выполняются от имени системного пользователя postgres
root может стать им выполнив su — postgres
Затем можно без пароля попасть в интерфейс БД psql
Или то же самое одной командой
Пользователь может создать базу
Затем добавить пользователя и задать для него пароль
=# create user appadmin with encrypted password ‘jdfh8jhtghnjkfrvhyu’;
После этого пользователю нужно дать права для работы с базой данных
=# grant all privileges on db1 mydb to appadmin;
Изменить пароль пользователя Postgres
Пользователя можно создавать и задавать ему пароль двумя раздельными командами
Вторая служит для изменения паролей уже существующих пользователей, выполняется из консоли psql
=# alter user anotheruser with encrypted password ‘NEW_STRONG_PASSWORD’;
Непосредственно для системного пользователя postgres пароль не нужен, им может стать root выполнив su как показано ранее. Если нужна авторизация root может установить для postgres новый пароль
Затем пароль нужно ввести дважды, отображаться он не будет.
Пользователь appadmin — не системный, он существует только в postgresql.
Подключаться к базе из консоли от имени этого пользователя нужно указывая имя базы и ключ -W
Последний ключ не обязателен, но без него в интерактивном режиме в некоторых версиях СУБД не будет запрашиваться пароль, пароль должен запрашиваться.
Про создание дампов баз данных Postgres и их загрузку.
Сброс пароля в PostgreSQL
Забыли пароль учетной записи postgres в PostgreSQL? Выполнить сброс не сложно. Для этого необходимо выполнить пару манипуляций.
1. Правим файл pg_hba.conf
Находим файл в папке Data директории установки PostgreSQL. В Windows путь выглядит примерно так c:\Program Files\PostgreSQL\9.2.4-1.1C\data\
В этом файле нужно найти такие строчки
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 0.0.0.0/0 md5
# IPv6 local connections:
host all all ::1/128 md5
Меняем md5 на trust.
2. Удаляем файл pgpass.conf
В Windows этот файл находится в c:\Users\Administrator\AppData\Roaming\postgresql\
Здесь хранится старый пароль от PostgreSQL. Простое изменение хранимого здесь пароля мне не помогло. Поэтому я его просто удалил.
3. Меняем пароль в pgAdmin
Запускаем pgAdmin и нам предлагается ввести пароль. Если отметить галочку сохранить, то пароль будет сохранен в pgpass.conf и больше программой запрашиваться не будет.
Чтобы обеспечить безопасность использования паролей необходимо вернуть алгоритм шифрования md5. Для этого в файле pg_hba.conf параметр trust обратно меняем на md5.
Для подключения на локальном компьютере к PostgreSQL с помощью psql, pg_dump в локальных адресах IPv4 127.0.0.1/32 и IPv6 ::1/128 значение trust нужно оставить.
5 thoughts on “ Сброс пароля в PostgreSQL ”
Ты не сменил и не сбросил пароль. Ты отключил все механизмы защиты, поэтому он теперь пускает не с новым паролем, а вообще с ЛЮБЫМ. Строка trust как раз и отключает проверку пароля. А файл pgpass.conf нужен для того что бы утилитка pgAdmin могла туда сохранить пароль и не спрашивать его больше. Именно поэтому он храниться в твоем профиле, что бы никто другой не мог туда зяглянуть.
Пароль пользователя меняется командой ALTER USER user_name WITH PASSWORD ‘new_password’;
Прежде чем писать такой комментарий
Строка trust как раз и отключает проверку пароля.
..внимательней читайте статью, там написано
параметр trust обратно меняем на md5
Про файл pgpass.conf тоже в статье сказано.
Так что с голой жопой останутся только такие же невнимательные как ты.
Глохни, петух. Как я смогу изменить пароль, если не могу на сервер зайти без пароля, придурок!
Виндовозники привыкли мышкой водить. Нет чтоб в терминале просто и со вкусом ALTER USER user_name WITH PASSWORD ‘new_password’;
Сбросить пароль на PostgreSQL в Debian
Очень часто при появлении нового системного администратора, есть сервера, к которым нет доступа. Пароль от сервера есть у предыдущего администратора, но говорить он его по какой-то причине отказывается. Так произошло и у нас. Есть сервер PostgreSQL. Он работает, а пароля от суперпользователя ни у кого нет.
В PostgreSQL можно с легкостью все восстановить.
В любой базе данных есть режим так называемого «локального доступа». К примеру, в MySQL восстановить пароль можно так.
Перевести PostgreSQL в режим «локального доступа»
Комментируем одну строку и ниже добавляем другую:
Далее заходим под пользователем без пароля:
Чтобы вернуть все как было, нужно выполнить все шаги в обратном порядке.
Первое знакомство с «новым» сервером PostgreSQL
Посмотреть список всех БД
Посмотреть список пользователей
postgres — это стандартная учетная запись.
Меняем пароль пользователю postgres
Добавляем нового пользователя в Postgre
Для дальнейшего администрирования, необходимо иметь полный доступ к базам данных PostgreSQL. Для этого правильнее будет создать свою учетную запись.
Если требуется права суперпользователя, то:
Комментарии
Защита со стороны DNS: реально или нет? Или сервис SkyDNS!
Драйвер для Cisco USB Console для 64 битной операционной системы
Как сделать tilt-shift эффект в Gimp?
Ошибка при загрузке компьютера или о чем пищит BIOS?
Отличие Chrome от Chromium
Как почистить таблицу в html или пишем собственный плагин для Sublime Text
Как подключить к Cisco чужой SFP-модуль
Как в Sublime Text закрыть все вкладки без сохранения?
Как импортировать большую базу в MySQL
Как настроить SNMP v3 на Cisco
Protocol major versions differ: 2 vs. 1
Поднимаем на Mikrotik OpenVPN сервер
Если Вы используете материал моего блога, то будьте добры поставьте ссылку.
Я забыл пароль, который ввел при установке postgres
Я либо забыл, либо набрал (во время установки) пароль для пользователя по умолчанию в Postgres. Кажется, я не могу его запустить и получаю следующую ошибку:
Есть ли способ сбросить пароль или как создать нового пользователя с привилегиями суперпользователя?
Я новичок в Postgres и только что установил его впервые. Я пытаюсь использовать его с Rails, и я использую Mac OS X Lion.
cp pg_hba.conf pg_hba.conf-backup
поместите следующую строку (в качестве первой строки без комментариев или в качестве единственной):
Для всех случаев, описанных ниже (локальный и хост), в разделе репликации exepct, если у вас его нет, его необходимо изменить следующим образом, не должно присутствовать никакого подтверждения MD5 или Peer.
перезапустите сервер PostgreSQL (например, в Linux 🙂
sudo /etc/init.d/postgresql restart
Если служба (демон) не запускает отчеты в файле журнала:
локальные соединения не поддерживаются этой сборкой
ты должен измениться
local all all trust
host all all 127.0.0.1/32 trust
(обратите внимание, что с первой командой вы не всегда будете связаны с локальным хостом)
Сбросить пароль (‘замените my_user_name на postgres, так как вы сбрасываете пользователя postgres )
ALTER USER my_user_name with password ‘my_secure_password’;
Восстановите старое, так pg_hba.conf как держать его очень опасно
cp pg_hba.conf-backup pg_hba.conf
перезагрузите сервер, чтобы запустить с сейфом pg_hba.conf
sudo /etc/init.d/postgresql restart
Ниже показаны сброс пароля, неудачный вход в систему с аутентификацией PEER и успешный вход в систему с использованием TCP-соединения.
В противном случае:
Отредактируйте файл /etc/postgresql/ /main/pg_hba.conf и найдите следующую строку:
Отредактируйте строку и md5 в конце измените на trust и сохраните файл
Перезагрузите сервис postgresql
Это загрузит файлы конфигурации. Теперь вы можете изменить postgres пользователя, войдя в psql оболочку
Обновите postgres пароль пользователя
Отредактируйте файл /etc/postgresql/ /main/pg_hba.conf и trust вернитесь обратно md5 и сохраните файл
Перезагрузите сервис postgresql
Убедитесь, что смена пароля работает
У меня просто была эта проблема в Windows 10, и проблема в моем случае заключалась в том, что я просто работал, psql и по умолчанию он пытался войти в систему с моим именем пользователя Windows («Натан»), но не было пользователя PostgreSQL с таким именем, и это не говорило мне об этом.
Добавление ответа для пользователя Windows для последней версии postgres (> 10),
Откройте этот файл с помощью блокнота, найдите эту строку,
Измените метод с md5 на доверие,
Теперь перейдите в SQL Shell (PSQL) и оставьте все пустым,
На этот раз он не будет запрашивать пароль, и вы войдете в систему,
Теперь запустите эту строку, ALTER USER yourusername WITH SUPERUSER
Теперь вы можете покинуть оболочку с помощью \ q
Снова перейдите в файл pg_hba.conf, снова измените МЕТОД с доверия на md5 и сохраните его.
Теперь войдите под своим новым пользователем и паролем, и вы можете проверить \ du для его атрибутов.
Для установки Windows создается пользователь Windows. И «psql» использует этого пользователя для подключения к порту. Если вы измените пароль пользователя PostgreSQL, он не изменит пароль Windows. Командная строка juste ниже работает, только если у вас есть доступ к командной строке.
Вместо этого вы можете использовать приложение Windows GUI «c: \ Windows \ system32 \ lusrmgr.exe». Это приложение для управления пользователями, созданными Windows. Теперь вы можете изменить пароль.
Что я сделал, чтобы решить ту же проблему:
Откройте файл pg_hba.conf с помощью редактора gedit из терминала:
Он попросит пароль. Введите пароль для входа администратора. Это откроет Gedit с файлом. Вставьте следующую строку:
Сохраните и закройте его. Закройте терминал, снова откройте его и выполните команду:
Теперь вы войдете в консоль psql. Теперь измените пароль, введя это:
Наконец, удалите эту строку, вставленную в pg_hba, и сохраните ее.
Если вы находитесь в Windows, вы можете просто запустить
и войдите в postgres с помощью postgres / postgres в качестве пользователя / пароля
Этот файл должен содержать строки следующего формата:
Имя хоста: порт: база данных: имя пользователя: пароль
(Вы можете добавить комментарий напоминания в файл, скопировав строку выше и поставив перед ней знак #.) Каждое из первых четырех полей может быть буквальным значением или *, что соответствует чему угодно. Будет использовано поле пароля из первой строки, соответствующее текущим параметрам соединения. (Поэтому при использовании подстановочных знаков ставьте сначала более конкретные записи.) Если запись должна содержать: или \, экранируйте этот символ с помощью. Имя хоста localhost совпадает с соединениями TCP (имя хоста localhost) и сокета домена Unix (pghost empty или каталог сокета по умолчанию), поступающими с локального компьютера. На резервном сервере имя базы данных репликации соответствует подключению потоковой репликации к главному серверу. Поле базы данных имеет ограниченную полезность, поскольку пользователи имеют одинаковый пароль для всех баз данных в одном кластере.
Я забыл пароль, который я ввел во время установки postgres
Я либо забыл, либо ошибся (во время установки) пароль для пользователя Postgres по умолчанию. Кажется, я не могу запустить его, и я получаю следующую ошибку:
есть ли способ сбросить пароль или как создать нового пользователя с привилегиями суперпользователя?
Я новичок в Postgres и только что установил его в первый раз. Я пытаюсь использовать его с Rails, и я запускаю Mac OS X Lion.
9 ответов
cp pg_hba.conf pg_hba.conf-backup
поместите следующую строку (как первую незафиксированную строку или как единственную):
local all all trust
перезапустите сервер PostgreSQL (например, в Linux:)
sudo /etc/init.d/postgresql restart
если служба (демон) не запускает отчеты в файле журнала:
локальные соединения не поддерживаются этой сборкой
вы должны изменить
local all all trust
host all all 127.0.0.1/32 trust
(обратите внимание, что с первой командой вы не всегда будете на связи с локальным узлом)
ALTER USER my_user_name with password ‘my_secure_password’;
восстановить старую pg_hba.conf Как это очень опасно сохранить вокруг
cp pg_hba.conf-backup pg_hba.conf
перезагрузить сервер, в приказываю бежать с сейфом pg_hba.conf
sudo /etc/init.d/postgresql restart
ниже показан сброс пароля, неудачный вход с одноранговой аутентификацией и успешный вход с использованием TCP-соединения.
The pg_hba.conf ( C:\Program Files\PostgreSQL.3\data ) файл изменился с тех пор, как были даны эти ответы. Что сработало для меня в Windows, это открыть файл и изменить METHOD С md5 до trust :
Если вы находитесь в Windows, вы можете просто запустить
и войдите в postgres с postgres/postgres как пользователь / пароль
для установки Windows создается пользователь Windows. И «psql» использует этого пользователя для подключения к порту. Если вы измените пароль пользователя PostgreSQL, он не изменит пароль Windows. Командная строка juste ниже работает, только если у вас есть доступ к командной строке.
редактировать файл /etc/postgresql/ /main/pg_hba.conf и найдите следующую строку:
изменить строку и изменить md5 в конце trust и сохраните файл
перезагрузка postgresql сервис
это загрузит файлы конфигурации. Теперь вы можете изменить postgres пользователь, войдя на psql раковины
обновить postgres пароль пользователя
перезагрузка postgresql сервис
убедитесь, что изменение пароля работает
что я сделал, чтобы решить ту же проблему:
открыть файл pg_hba.conf файл с редактором gedit из терминала:
он будет запрашивать пароль. Введите пароль администратора. Это откроет gedit с файлом. Вставьте следующую строку:
сохранить и закрыть его. Закройте терминал, откройте его снова и выполните следующую команду:
теперь вы войдете в консоль psql. Теперь изменить пароль, введя это:
наконец, удалите определенную строку, вставленную в pg_hba, и сохраните ее.
этот файл должен содержать следующие строки формат:
имя хоста: порт: база данных: имя пользователя: пароль
(вы можете добавить комментарий напоминания в файл, скопировав строку выше и предшествующую ей #.) Каждое из первых четырех полей может быть литеральным значением или*, которое соответствует чему угодно. Будет использоваться поле пароля из первой строки, соответствующее текущим параметрам соединения. (Поэтому при использовании подстановочных знаков сначала ставьте более конкретные записи.) Если запись должна содержать : или \, избежать этого символа с. Имя хоста localhost соответствует подключениям TCP (имя хоста localhost) и Unix domain socket (pghost empty или каталог сокетов по умолчанию), поступающим с локального компьютера. На резервном сервере имя базы данных репликации соответствует потоковым соединениям репликации, выполненным на главном сервере. Поле базы данных имеет ограниченную полезность, поскольку пользователи имеют одинаковый пароль для всех баз данных в одном кластере.
/.pgpass. Если разрешения менее строгие, файл будет проигнорирован. В Microsoft Windows предполагается, что файл хранится в защищенном каталоге, поэтому проверка специальных разрешений не производится.