PostgreSQL – Создание базы данных
В данном разделе мы поговорим о том, как создать новую базу данных в PostgreSQL. В PostgreSQL есть два способа сделать это:
- использовать CREATE DATABASE, команду SQL;
- использовать createdb в командной строке.
Использование CREATE DATABASE
Эта команда создаст базу данных из PostgreSQL Shell, но у Вас должны быть соответствующие права для создания баз данных. По умолчанию новая база данных будет создана путем клонирования стандартной системной базы данных template1.
Синтаксис
Базовый синтаксис CREATE DATABASE выглядит следующим образом:
CREATE DATABASE dbname;
где dbname – название создаваемой базы данных.
Пример
Приводим простой пример, который позволит создать тестовую базу данных testdb в PostgreSQL:
postgres=# CREATE DATABASE testdb;
postgres-#
Использование команды createdb
Createdb - это обёртка для SQL - команды CREATE DATABASE. Единственная разница между этой командой и командой SQL CREATE DATABASE заключается в том, что первую можно запустить непосредственно из командной строки, и она позволяет добавлять комментарии в базу данных, все в одной команде.
Синтаксис
Синтаксис для createdb выглядит следующим образом:
createdb [option...] [dbname [description]]
Параметры
В таблицы ниже приведены параметры с описанием.
|
S. No. |
Параметр и описание |
|
1 |
dbname Название создаваемой базы данных |
|
2 |
description Определяет комментарий, который будет ассоциироваться с вновь созданной базой данных |
|
3 |
options аргументы командной строки, которые принимаются createdb |
Опции
В таблице ниже приведены аргументы, которые принимаются created:
|
S. No. |
Опция и Описание |
|
1 |
-D tablespace Задает табличное пространство по умолчанию для базы данных |
|
2 |
-e Выводит команды, которые createdb генерирует и отправляет на сервер |
|
3 |
-E encoding Определяет схему кодировки символов, которая будет использоваться в этой базе данных |
|
4 |
-l locale Определяет язык, который будет использоваться в этой базе данных |
|
5 |
-T template Определяет шаблон базы данных, из которого будет создаваться новая база данных |
|
6 |
--help Выводит справку об аргументах командной строки createdb , осуществляет выход |
|
7 |
-h host Указывает хост, на котором работает сервер |
|
8 |
-p port Указывает порт TCP сокета домена Unix |
|
9 |
-U username Указывает имя пользователя |
|
10 |
-w Никогда не запрашивать пароль |
|
11 |
-W Заставить createdb запрашивать пароль перед подключением к базе данных |
Откройте командную строку и перейдите в каталог, где установлен PostgreSQL. Перейдите в каталог bin и выполните следующую команду, чтобы создать новую базу данных:
createdb -h localhost -p 5432 -U postgres testdb password ******
Указанная выше команда запросит у Вас пароль для Администратора PostgreSQL - postgres по умолчанию. Таким образом, введите пароль и приступите к созданию новой базы данных.
Как только база данных создана одним из выше указанных методов, Вы можете найти ее в списке баз данных при помощи \l, то есть команды backslash el следующим образом:
postgres-# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+---------+-------+-----------------------
postgres | postgres | UTF8 | C | C |
template0 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
testdb | postgres | UTF8 | C | C |
(4 rows)
postgres-#



