Как сбросить пароль postgresql ubuntu

Обновлено: 04.07.2024

В Ubuntu я установил базу данных PostgreSQL и создал суперпользователя для сервера.

Если я забыл пароль суперпользователя postgresql, как я могу сбросить его (пароль) для этого пользователя?

Я попытался удалить его, а затем установить снова, но ранее созданный суперпользователь сохраняется.

1 ответ

Есть ли какой-нибудь способ вычислить IOPS на запрос в postgresql на ubuntu? Я использую PostgreSQL 9.2 и Ubuntu 13.04. Мне нужно рассчитать это для определения требований к оборудованию для проекта.

Я пытаюсь установить Postgres на свою систему Ubuntu 13.04. Для того, чтобы сделать так, я побежал следующие команды. $ sudo apt-get update $ sudo apt-get install postgresql-common -t raring И то и другое прошло прекрасно. Затем я попытался установить клиент, запустив его. $ sudo apt-get.

Предполагая, что вы являетесь администратором машины, Ubuntu предоставил вам право sudo выполнять любую команду от имени любого пользователя.
Также предполагая, что вы не ограничивали права в файле pg_hba.conf (в каталоге /etc/postgresql/9.1/main ), он должен содержать эту строку в качестве первого правила:

(О расположении файла: 9.1 -это основная версия postgres, а main -имя вашего "cluster"., оно будет отличаться при использовании более новой версии postgres или имен, отличных от имен по умолчанию. Используйте команду pg_lsclusters , чтобы получить эту информацию для вашего version/system).

В любом случае, если в файле pg_hba.conf нет этой строки, отредактируйте файл, добавьте его и перезагрузите службу с помощью sudo service postgresql reload .

Тогда вы сможете войти в систему с psql в качестве суперпользователя postgres с помощью этой команды shell:

Оказавшись внутри psql, выполните команду SQL:

В этой команде postgres - это имя суперпользователя. Если пользователь , чей пароль был забыт, был ritesh , команда будет:

Имейте в виду, что вам нужно ввести postgres с одним S в конце

Если оставить пароль открытым текстом в истории команд или журнале сервера является проблемой, psql предоставляет интерактивную мета-команду, чтобы избежать этого, в качестве альтернативы ALTER USER . PASSWORD :

Он запрашивает пароль с двойным слепым вводом, затем хэширует его в соответствии с настройкой password_encryption и выдает команду ALTER USER серверу с хэшированной версией пароля, а не с открытой текстовой версией.

Похожие вопросы:

Я получаю следующую ошибку, когда пытаюсь установить базу данных Postgres, выполнив эту команду на Ubuntu OS sudo apt-get install postgresql-9.4 с dpkg: ошибка при обработке пакета postgresql-9.4.

Я пытаюсь включить root (Ubuntu 8.04) для использования команды psql без запроса пароля (для сценариев). Все работало нормально с PostgreSQL 8.3, но я мигрирую на PostgreSQL 8.4, и логин без пароля.

Есть ли какой-нибудь способ вычислить IOPS на запрос в postgresql на ubuntu? Я использую PostgreSQL 9.2 и Ubuntu 13.04. Мне нужно рассчитать это для определения требований к оборудованию для.

Я пытаюсь установить Postgres на свою систему Ubuntu 13.04. Для того, чтобы сделать так, я побежал следующие команды. $ sudo apt-get update $ sudo apt-get install postgresql-common -t raring И то.

Я пытаюсь создать базу данных PostgreSQL 9.3 в Ubuntu 14.04 LTS. Я установил базу данных и теперь пытаюсь создать пользователя, пароль и новую базу данных. Вот что я сделал в Ubuntu shell году.

Как я могу заставить Java запросить сервер Postgresql, работающий на Ubuntu 16.04? Я скачал postgresql-9.4.1212.jre6.jar (драйвер JDBC), но не знаю, что мне с ним делать. java JDBCExample.

У меня была машина ubuntu, на которой postgresql 9.5 работает примерно с 12 GB данными. Теперь я хочу обновить свою версию postgresql с 9.5 до 10. Я погуглил некоторые статьи, но не смог обновить.

Я либо забыл, либо ошибся (во время установки) пароль для пользователя Postgres по умолчанию. Кажется, я не могу запустить его, и я получаю следующую ошибку:

есть ли способ сбросить пароль или как создать нового пользователя с привилегиями суперпользователя?

Я новичок в Postgres и только что установил его в первый раз. Я пытаюсь использовать его с Rails, и я запускаю Mac OS X Lion.

находим файл pg_hba.conf - Он может быть расположен, например, в /etc/postgresql-9.1/pg_hba.conf .

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

теперь вы можете подключиться как любой пользователь. Подключение в качестве суперпользователя postgres (обратите внимание, имя суперпользователя может отличаться в вашей установке. В некоторых системах это называется pgsql , для образец.)

psql -U postgres

psql -h 127.0.0.1 -U 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

при подключении к Postgres из командной строки, Не забудьте добавить -h localhost как параметр командной строки. Если нет, postgres попытается подключиться в режиме одноранговой аутентификации.

ниже показан сброс пароля, неудачный вход с одноранговой аутентификацией и успешный вход с использованием TCP-соединения.

работает с -h localhost :

The pg_hba.conf ( C:\Program Files\PostgreSQL.3\data ) файл изменился с тех пор, как были даны эти ответы. Что сработало для меня в Windows, это открыть файл и изменить METHOD С md5 до trust :

затем, используя pgAdmin III, я вошел в систему без пароля и изменил пользователя postgres' пароль, перейдя к File -> Change Password

просто примечание, на Linux вы можете просто запустить sudo su - postgres чтобы стать пользователем postgres и оттуда изменить то, что требуется с помощью psql.

Если вы находитесь в Windows, вы можете просто запустить

и войдите в postgres с postgres/postgres как пользователь / пароль

для установки Windows создается пользователь Windows. И "psql" использует этого пользователя для подключения к порту. Если вы измените пароль пользователя PostgreSQL, он не изменит пароль Windows. Командная строка juste ниже работает, только если у вас есть доступ к командной строке.

вместо этого вы можете использовать приложение Windows GUI "c:\Windows\system32\lusrmgr - . исполняемый." Это приложение управляет пользователями, созданными Windows. Теперь вы можете изменить пароль.

редактировать файл /etc/postgresql/<version>/main/pg_hba.conf и найдите следующую строку:

изменить строку и изменить md5 в конце trust и сохраните файл

перезагрузка postgresql сервис

это загрузит файлы конфигурации. Теперь вы можете изменить postgres пользователь, войдя на psql раковины

обновить postgres пароль пользователя

редактировать файл /etc/postgresql/<version>/main/pg_hba.conf , и trust на md5 и сохраните файл

перезагрузка postgresql сервис

убедитесь, что изменение пароля работает

что я сделал, чтобы решить ту же проблему:

открыть файл pg_hba.conf файл с редактором gedit из терминала:

он будет запрашивать пароль. Введите пароль администратора. Это откроет gedit с файлом. Вставьте следующую строку:

сохранить и закрыть его. Закройте терминал, откройте его снова и выполните следующую команду:

теперь вы войдете в консоль psql. Теперь изменить пароль, введя это:

если он говорит, что пользователя не существует, то вместо ALTER использовать CREATE .

наконец, удалите определенную строку, вставленную в pg_hba, и сохраните ее.

файл .pgpass в домашнем каталоге пользователя или файле, на который ссылается PGPASSFILE, может содержать пароли для использования, если для подключения требуется пароль (и пароль не указан иначе). В Microsoft Windows файл называется %APPDATA%\postgresql\pgpass.conf (где %APPDATA% относится к подкаталогу данных приложения в профиле пользователя).

этот файл должен содержать следующие строки формат:

имя хоста: порт: база данных: имя пользователя: пароль

в системах Unix, разрешения на .pgpass должны запретить любой доступ к миру или группы; добиться этого с помощью команды chmod 0600

/.pgpass. Если разрешения менее строгие, файл будет проигнорирован. В Microsoft Windows предполагается, что файл хранится в защищенном каталоге, поэтому проверка специальных разрешений не производится.

Важно: В версии Ubuntu 20.04 дефолтная конфигурация MySQL или MariaDB позволяет получить доступ к базе данных (с правами администратора) без ввода пароля, если мы устанавливаем соединение с сервером БД под пользователем root . В этом случае нам нет необходимости сбрасывать пароль. Чтобы проверить была ли конфигурация аутентификации по умолчанию изменена, вводим команду sudo mysql. Если получаем ошибку access denied, то прибегаем к действиям, указанным с статье.

Если используется MariaDB, то в выводе получим следующее: (разумеется, версия БД может меняться)

Чтобы произвести сброс root-пароля в MySQL или MariaDB, нам необходимо остановить сервер базы данных.

Для MariaDB:

Для MySQL:

После остановки базы данных производим ее перезапуск в безопасном режиме для сброса пароля root.

Зададим переменную окружения MYSQLD_OPTS, используемую в MariaDB при запуске:

Запустим сервер БД:

Корректность запуска сервера смотрим командой:

Теперь подключаемся к базе данных пользователем root без пароля:

Подключившись к консоли MariaDB, меняем пароль root, как показано в Шаге 3 далее.

Чтобы запустить сервер MySQL в этом режиме, изменим конфигурацию systemd для MySQL, чтобы при запуске сервер запустился с дополнительными параметрами.

После выполнения команды будет открыт новый файл в nano-редакторе, где мы будем внесем необходимые параметры запуска сервера MySQL. Изначально файл будет пустым. Добавим следующие строки:

Запускаем сервер MySQL:

и подключаемся пользователем root:

Далее переходим к Шагу 3.

Теперь сброс пароля root в MySQL или MariaDB возможен .

Меняем пароль root для MariaDB

Далее установим механизм аутентификации по умолчанию:

Пароль изменен. Выходим из консоли MariaDB и смотрим Шаг 4 для перезапуска сервера базы данных в штатном режиме.

Меняем пароль root для MySQL

Для MySQL выполняем следующий запрос, заменив new_password на свой пароль. MySQL позволяет использовать настраиваемые механизмы аутентификации, поэтому добавляем инструкцию, указывающую MySQL использовать механизм аутентификации по умолчанию:

Выходим из консоли MySQL и запускаем базу данных в нормальном режиме.

Чтобы перезапустить сервер базы данных в штатном режиме, выполним следующие действия:

Для MariaDB

Удаляем переменную окружения MYSQLD_OPTS:

и перезапускаем сервер MariaDB:

Для MySQL

Удаляем все изменения конфигурации демона systemd для MySQL:

Вывод должен быть примерно таким:

Затем перезагружаем демон systemd:

После этого база данных должна перейти в нормальное состояние. Пробуем подключится к серверу базы данных пользователем root с новым паролем:

Для установки Windows создается пользователь Windows. И «psql» использует этого пользователя для подключения к порту. Если вы измените пароль пользователя PostgreSQL, он не изменит Windows. Командная строка juste ниже работает только в том случае, если у вас есть доступ к командной строке.

Вместо этого вы можете использовать приложение Windows GUI «c: \ Windows \ system32 \ lusrmgr.exe». Это приложение управляет пользователями, создаваемыми Windows. Теперь вы можете изменить пароль.

Просто заметьте, на Linux. Вы можете просто запустить sudo su - postgres , чтобы стать пользователем postgres, и оттуда изменить то, что требуется с помощью psql.

Что я сделал для решения одной и той же проблемы:

Откройте файл pg_hba.conf с редактором gedit с терминала:

Он попросит пароль. Введите пароль администратора. Это откроет gedit с файлом. Вставьте следующую строку:

Сохраните и закройте. Закройте терминал и откройте его снова и запустите эту команду:

Теперь вы войдете в консоль psql. Теперь измените пароль, введя это:

Если он говорит, что пользователь не существует, вместо ALTER используйте CREATE .

Наконец, удалите эту определенную строку вставить в pg_hba и сохранить его.

Если вы находитесь в окнах, вы можете просто запустить

и войти в postgres с postgres / postgres в качестве пользователя / пароля

Файл .pgpass в домашнем каталоге пользователя или файл, на который ссылается PGPASSFILE, может содержать пароли, которые будут использоваться, если для соединения требуется пароль (и пароль не указан иначе). В Microsoft Windows файл называется% APPDATA% \ postgresql \ pgpass.conf (где% APPDATA% относится к подкаталогу Application Data в профиле пользователя).

Этот файл должен содержать строки следующего формата:

hostname: port: database: username: password

В системах Unix разрешения на .pgpass должны запрещать любой доступ к миру или группе; это достигается командой chmod 0600

/ .pgpass. Если разрешения менее строгие, чем этот, файл будет проигнорирован. В Microsoft Windows предполагается, что файл хранится в безопасном каталоге, поэтому специальная проверка прав доступа не производится.

Читайте также: