Вопрос: Что такое имя пользователя / пароль суперпользователя по умолчанию для postgres после новой установки?


Я только что установил postgres 8.4 на Ubuntu 9.10, и он никогда не просил меня создавать суперпользователя. Есть ли суперпользователь по умолчанию и его пароль? Если нет, как мне создать новый?


334
2018-02-06 04:54


Источник


Вероятно, очень актуально - «Я устанавливаю PostgreSQL и не знаю пароля для пользователя postgres», - Milen A. Radev


Ответы:


ВНИМАНИЕ Ответ на изменение пароля UNIX для «postgres» через «$ sudo passwd postgres» не является предпочтительным, и может даже быть ОПАСНАЯ!

Вот почему: По умолчанию учетная запись UNIX «postgres» заблокирована, что означает, что она не может быть зарегистрирована с использованием пароля. Если вы используете «sudo passwd postgres», учетная запись немедленно разблокируется. Хуже того, если вы установите пароль на что-то слабое, например «postgres», тогда вы подвергаетесь большой опасности для безопасности. Например, существует несколько ботов, пытающихся объединить имя пользователя / пароль «postgres / postgres» для входа в вашу систему UNIX.

Что вам следует делать, следуйте Крис ДжеймсОтвет:

sudo -u postgres psql postgres

# \password postgres

Enter new password: 

Объяснить это немного. Обычно обычно используются два способа входа на сервер PostgreSQL:

  1. Запустив команду «psql» в качестве пользователя UNIX (так называемая идентификация IDENT / PEER), например: sudo -u postgres psql, Обратите внимание, что sudo -u НЕ разблокирует пользователя UNIX.

  2. по TCP / IP-соединению, используя собственное управляемое имя пользователя / пароль PostgreSQL (так называемая аутентификация TCP) (т. НЕ пароль UNIX).

Так что вы никогда хотите установить пароль для учетной записи UNIX «postgres». Оставьте его заблокированным по умолчанию.

Конечно, все может измениться, если вы настроите его иначе, чем значение по умолчанию. Например, можно синхронизировать пароль PostgreSQL с паролем UNIX и разрешать только локальные логины. Это выходит за рамки этого вопроса.


472
2017-10-28 06:25



так, как вы закрываете пользовательские postgres? - ultrajohn
@ultrajohn - зависит от используемого вами дистрибутива, но вы можете редактировать / etc / passwd и ставить * вместо пароля - lzap
/etc/shadow где пароль хранится @lzap. - Gringo Suave
Правильно, вы можете либо установить / sbin / nologin в / etc / passwd, либо поставить * вместо пароля в / etc / shadow. - lzap
passwd --lock postgres - Stéphane


Введите в командной строке:

$ sudo -u postgres psql postgres
postgres=# \password postgres

Вот увидишь:

Enter new password: 
Enter it again:

153
2018-03-16 15:39



Именно это необходимо для использования инструмента, такого как pgadminIII (при настройке профиля сервера) сразу после установки Postgres. Благодаря! - limist


Вы управляете postgres через пользователя postgres, так:

# su - postgres
$ createdb mydb
$ psql -s mydb
# create user someuser password 'somepassword';
# GRANT ALL PRIVILEGES ON DATABASE mydb TO someuser;

57
2018-02-06 05:02



@ThierryLam Вы должны быть root для su для пользователя postgres без ввода пароля. В большинстве систем учетная запись Postgres Unix заблокирована (пароль не будет работать), что означает только корень может su на этот счет. - voretaq7
использование sudo вместо su, - reinierpost
Мне пришлось бежать sudo su - postgres : \ - Jim Schubert
@ Jim Schubert: вы также можете запустить sudo -u postgres, - reinierpost
sudo -u postgres psql - работает также, поэтому вы можете сделать это за один шаг. - Ominus


В Windows сделайте следующее (ВАЖНО: используйте Windows администратор Счет):

  1. После установки откройте <PostgreSQL PATH>\data\pg_hba.conf,

  2. Измените эти две строки и измените «md5» на «trust»:

    host all all 127.0.0.1/32 md5

    host all all ::1/128 md5

  3. Перезапустите службу PostgreSQL (может и не понадобиться).

  4. (Необязательно) Откройте командную строку и измените кодовую страницу на 1252:

    cmd.exe /c chcp 1252

  5. Войдите в PostgreSQL. Не требуется пароль (обратите внимание на параметр верхнего регистра -U):

    psql -U postgres

  6. (Необязательно, рекомендуется по соображениям безопасности). Измените postgres пароль пользователя:

    \password postgres

    и измените «trust» на «md5» в pg_hba.conf,


19
2017-11-18 19:25





Если вы пытаетесь получить доступ к оболочке PostgreSQL, вы можете ввести:

psql -U postgres my_database

где my_database это имя вашей базы данных.


4
2018-03-07 13:44