#postgresql #ubuntu #terminal
#postgresql #ubuntu #терминал
Вопрос:
Я новичок в технологиях, пожалуйста, не судите мой вопрос слишком строго :).
Я установил в свой Ubuntu 18.04 PostgreSQL 10.7. Чтобы иметь возможность войти в мою базу данных, мне нужно ввести следующие команды с моего терминала. sudo -u postgres psql. Есть ли какой-либо сокращенный способ, которым я могу подключить его из своей учетной записи пользователя Ubuntu. Например. если я введу psql, откроется среда базы данных, в которой я могу вводить команды PostgreSQL.
Спасибо.
Комментарии:
1.
psql -U postgres
?
Ответ №1:
Просто выполните эту команду в своем терминале :
alias psql='sudo -u postgres psql'
Итак, в следующий раз, когда вы введете psql и выполните, вы окажетесь в среде базы данных.
Ответ №2:
Я вижу два варианта:
1) Создайте псевдоним для этой команды sudo -u postgres psql
.
2) Перейдите в psql и создайте для него нового суперпользователя и базу данных:
CREATE ROLE username SUPERUSER;
ALTER ROLE username WITH LOGIN;
CREATE DATABASE username;
Комментарии:
1. Для создания таблиц или управления ими роль суперпользователя не требуется. Обычный пользователь — гораздо лучший выбор.
Ответ №3:
Вы не должны использовать учетную запись суперпользователя для обычной работы с базой данных. Это как если бы вы использовали root
для всего в Linux.
Вам необходимо создать обычного пользователя с привилегиями для создания или изменения таблиц в вашей базе данных. Это можно сделать, предоставив пользователю все привилегии в базе данных (что не то же самое, что сделать этого пользователя суперпользователем) или сделать этого пользователя владельцем этой базы данных.
Как описано в руководстве psql
, пытается подключиться к базе данных с именем текущего пользователя Linux и с пользователем базы данных с именем текущего пользователя Linux. Итак, если вы хотите упростить задачу, создайте пользователя с именем вашего обычного пользователя Linux и базой данных, принадлежащей этому пользователю:
create user rob password 'somepassword';
create database rob owner = rob;
Предполагая, что ваш пользователь Linux rob
, тогда все, что вам нужно сделать, это:
psql
и вы подключены к базе данных, где вы можете создавать таблицы и управлять ими.
В зависимости от того, как вы установили Postgres, вам может потребоваться настроить pg_hba.conf, чтобы разрешить rob
прямой вход в систему.
Еще раз: пожалуйста, НЕ используйте учетную запись суперпользователя для своей обычной работы.