Припускаючи, що ви адміністратор машини, Ubuntu надав вам право sudo запускати будь-яку команду як будь-який користувач.
Також припускаючи, що ви не обмежували права у pg_hba.conf
файлі (у /etc/postgresql/9.1/main
каталозі), він повинен містити цей рядок як перше правило:
# Database administrative login by Unix domain socket
local all postgres peer
(Про розташування файлу: 9.1
є основною версією postgres та main
назвою вашого "кластера". Вона буде відрізнятися, якщо використовувати нову версію postgres або неіменні імена. Використовуйте pg_lsclusters
команду, щоб отримати цю інформацію для вашої версії / системи).
У будь-якому випадку, якщо у pg_hba.conf
файлі немає цього рядка, відредагуйте файл, додайте його та перезавантажте службу sudo service postgresql reload
.
Тоді ви зможете увійти psql
як суперкористувач postgres за допомогою цієї команди оболонки:
sudo -u postgres psql
Опинившись у psql, видайте команду SQL:
ALTER USER postgres PASSWORD 'newpassword';
У цій команді postgres
є ім'я суперкористувача. Якщо користувачем, пароль якого забутий, було ritesh
, виконується команда:
ALTER USER ritesh PASSWORD 'newpassword';
Посилання: Документація PostgreSQL 9.1.13, глава 19. Аутентифікація клієнта
Майте на увазі, що вам потрібно ввести postgres з одним S в кінці