Как создать и управлять базами данных (MySQL, PostgreSQL)?

⌘K

Как создать и управлять базами данных (MySQL, PostgreSQL)?

Работа с базами данных — ключевая задача при разработке любого веб-приложения. Среди наиболее популярных решений — MySQL и PostgreSQL. Cосредоточимся на PostgreSQL и разберём, как создать базу данных, подключиться к ней через консоль и выполнять основные операции: добавление данных, удаление, очистка и администрирование.

Как подключиться к PostgreSQL через консоль

Чтобы начать работу, необходимо подключиться к серверу баз данных PostgreSQL через терминал:

sudo -u postgres psql

Или указать конкретного пользователя:

psql -U имя_пользователя -d имя_базы

Вы можете использовать \\l для просмотра всех баз данных, \\c для подключения к нужной.

Создание базы данных PostgreSQL

Чтобы создать базу данных в PostgreSQL:

CREATE DATABASE mydatabase;

Или через команду консоли:

createdb имя_базы

Вы также можете указать кодировку и владельца:

CREATE DATABASE mydatabase WITH OWNER = myuser ENCODING = 'UTF8';

Создание пользователя и таблиц

Создание пользователя:

CREATE USER newuser WITH PASSWORD 'password';

GRANT ALL PRIVILEGES ON DATABASE mydatabase TO newuser;

Создание таблицы:

CREATE TABLE clients (
id SERIAL PRIMARY KEY,
name TEXT NOT NULL,
email TEXT UNIQUE
);

Добавление записи:

INSERT INTO clients (name, email) VALUES ('Анна', 'anna@example.com');

Удаление и очистка баз данных PostgreSQL

Чтобы удалить базу данных:

DROP DATABASE mydatabase;

Если вы подключены к базе, которую хотите удалить — сначала отключитесь от неё.

Очистка базы данных — это удаление всех таблиц. Один из способов:

DROP SCHEMA public CASCADE;

CREATE SCHEMA public;

Полезные команды PostgreSQL в консоли (psql)

  • \l — список всех баз
  • \dt — список таблиц
  • \du — список пользователей
  • \c имя_базы — подключение к базе
  • \q — выход из psql

PostgreSQL — мощная и гибкая СУБД, подходящая для проектов любого масштаба. Знание основных команд консоли и понимание, как создавать и управлять базами данных, значительно упростит администрирование и ускорит разработку.