Предположим, вы только что поставили Ubuntu и вам нужно развернуть какую-нибудь БД локально для разработки ПО. Предположим также, что для этих целей вы решили использовать СУБД PostgreSQL. Установка предельно проста - в консоли нужно выполнить следующую команду:
Прежде, чем приступить к работе с базой, нам нужно её немного настроить. Для начала требуется создать роль пользователя:
Затем система задаст вам несколько вопросов, а именно: желаете ли вы установить эту роль в качестве суперпользователя, позволить ли ей создавать новые базы данных, а также другие роли. Отвечайте как считаете нужным, но с точки зрения безопасности лучше ответить на всё отрицательно.
Далее нам необходимо создать базу данных. Назовём её, например, mydb. Но лучше назвать так же, как вы назвали роль (т.е. human). Выполним команду:
alter user your_user_name with encrypted password 'your_password';
grant all privileges on database your_database to your_user_name;
Выход из консоли postgres осуществляется командой \?
Всё, теперь мы можем приступать к установке какого-нибудь клиента с графическим интерфейсом для более удобного взаимодействия с БД.
Возможно, вы спросите, зачем нужно было создавать роль и базу данных с одинаковыми именами, совпадающими с именем пользователя в системе? Это делается исключительно для удобства, ведь если эти параметры совпадают, то зайти в консоль postgres можно довольно просто, набрав в обычной консоли:
Если же имя роли и/или базы данных отличаются от имени пользователя компьютера, то придётся эти параметры указывать каждый раз при входе в консоль postgres. Пример:
sudo apt-get install postgresqlУстановка выполняется под суперпользователем, поэтому вам потребуется ввести ваш пароль. После выполнения этой команды движок БД уже будет установлен на ваш компьютер.
Прежде, чем приступить к работе с базой, нам нужно её немного настроить. Для начала требуется создать роль пользователя:
sudo -u postgres createuserОт вас потребуется ввести название роли. Забегая вперёд, настоятельно рекомендую вам ввести в точности такое же имя, какое отображается у вас в консоли до знака @. То есть чтобы имя вашего аккаунта совпало с именем роли. Предположим, в консоли у нас отображается human@human-desktop. Тогда нужно ввести human.
Затем система задаст вам несколько вопросов, а именно: желаете ли вы установить эту роль в качестве суперпользователя, позволить ли ей создавать новые базы данных, а также другие роли. Отвечайте как считаете нужным, но с точки зрения безопасности лучше ответить на всё отрицательно.
Далее нам необходимо создать базу данных. Назовём её, например, mydb. Но лучше назвать так же, как вы назвали роль (т.е. human). Выполним команду:
sudo -u postgres createdb humanТеперь осталось через консоль задать пароль для созданного нами пользователя и предоставить ему полные права на новую базу данных:
sudo -u postgres psqlВыполнив эту команду, вы войдёте в консоль postgres. Введите следующие команды, заменив имя пользователя и базы данных своими собственными значениями:
alter user your_user_name with encrypted password 'your_password';
grant all privileges on database your_database to your_user_name;
Выход из консоли postgres осуществляется командой \?
Всё, теперь мы можем приступать к установке какого-нибудь клиента с графическим интерфейсом для более удобного взаимодействия с БД.
Возможно, вы спросите, зачем нужно было создавать роль и базу данных с одинаковыми именами, совпадающими с именем пользователя в системе? Это делается исключительно для удобства, ведь если эти параметры совпадают, то зайти в консоль postgres можно довольно просто, набрав в обычной консоли:
psqlТеперь вы находитесь внутри и можете выполнять любые доступные вам sql-запросы.
![]() |
Выполнение запроса при помощи psql |
Если же имя роли и/или базы данных отличаются от имени пользователя компьютера, то придётся эти параметры указывать каждый раз при входе в консоль postgres. Пример:
psql --username postgres --dbname mydb --passwordОбратите внимание, что значение пароля в этой строке не указывается - его потребуется ввести в следующей строке по запросу системы.
Комментариев нет:
Отправить комментарий