ПРЕДУПРЕЖДЕНИЕ :trust
значи точно това. Всеки, който може да се свърже към PostgreSQL сървъра, може да го контролира. Ако зададете trust
режим, който позволява суперпотребители като потребител postgres
(или all
потребители), за да се свържат, те получават пълен контрол върху вашия PostgreSQL и вероятно също могат да изпълняват команди на обвивката. Обикновено трябва да го използвате само за промяна на паролата след това възстановете конфигурацията обратно към режима на удостоверяване, който сте използвали преди.
Ако сте използвали скрипт за автоматично инсталиране, паролата ще бъде в скрипта или свързания конфигурационен файл.
В противен случай третирайте го по същия начин, както ако сте изгубили/забравили паролата, вместо никога да не я знаете:
- Редактирайте
pg_hba.conf
, настройвайки режима на удостоверяване наtrust
вместоmd5
по подразбиране - В контролния панел на услугите рестартирайте услугата PostgreSQL
- Свързване с
psql
или PgAdmin или каквото и да било ALTER USER postgres PASSWORD 'mynewpassword';
- Редактирайте
pg_hba.conf
отново и задайте режима на удостоверяване обратно наmd5
- Рестартирайте PostgreSQL отново
pg_hba.conf
е във вашата директория с данни. По подразбиране ще бъде %PROGRAMFILES%\PostgreSQL\9.3\data
.
За да го редактирате, ще трябва да използвате раздела за защита, за да си дадете разрешения за четене/запис (чрез UAC подкана). Това може да изисква да се зададете като собственик на файла.
В unix системи е по-сигурно да добавите a
local all all peer
ред към pg_hba.conf
и след това sudo -u postgres psql
(ако приемем, че вашият PostgreSQL сървър работи като потребител postgres
), за да получите интерактивен psql
сесия без използване на парола. По този начин не е необходимо да използвате trust
.