Как сбросить пароль postgresql ubuntu
В 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 предполагается, что файл хранится в безопасном каталоге, поэтому специальная проверка прав доступа не производится.
Читайте также: