Как да управляваме бази данни в PostgreSQL
PostgreSQL, често наричана “Postgres”, е мощна система за управление на релационни бази данни с отворен код. Управлението на бази данни в PostgreSQL включва задачи като създаване, модифициране и изтриване на бази данни, таблици и потребителски разрешения. Това ръководство ще ви запознае с основните команди за управление на бази данни в PostgreSQL.
1. Достъп до командния ред на PostgreSQL
За да управлявате бази данни PostgreSQL, първо трябва да получите достъп до интерфейса на командния ред (CLI) на PostgreSQL. По подразбиране PostgreSQL използва потребителския акаунт postgres.
Стъпка 1: Превключване към потребителския акаунт на PostgreSQL
sudo -i -u postgres
Стъпка 2: Достъп до CLI на PostgreSQL
psql
След като влезете в CLI, ще видите подкана postgres=#, която показва, че сте в средата на PostgreSQL.
2. Създаване на нова база данни
За да създадете нова база данни, използвайте командата CREATE DATABASE. Синтаксисът е следният:
CREATE DATABASE Име на базата данни;
Пример:
CREATE DATABASE my_database;
Създава се база данни с име my_database. За да проверите, използвайте:
\l
3. Създаване и управление на потребители
Потребителите на бази данни се нуждаят от разрешение за достъп и промяна на базите данни. Ето как да създавате и управлявате потребители в PostgreSQL.
Създаване на нов потребител
СЪЗДАВАНЕ НА ПОТРЕБИТЕЛСКО ИМЕ С ПАРОЛА 'password';
Пример:
CREATE USER dbuser WITH PASSWORD 'securepassword';
Предоставяне на достъп до базата данни
За да разрешите на даден потребител достъп и управление на база данни, използвайте командата GRANT:
ДАВА ВСИЧКИ ПРАВОМОЩИЯ НА БАЗАТА ДАННИ НА ИМЕТО НА БАЗАТА ДАННИ НА ИМЕТО НА ПОТРЕБИТЕЛЯ;
Пример:
Предоставяне на всички права върху базата данни my_database на dbuser;
Това дава пълен достъп на dbuser до my_database.
4. Свързване с база данни
За да се свържете с определена база данни, използвайте командата \c, последвана от името на базата данни.
\c my_database
Подсказката ще се промени, за да посочи активната база данни, което ви позволява да управлявате таблици, да вмъквате данни и да извършвате заявки.
5. Създаване и управление на таблици
Таблиците съхраняват данни в структуриран формат. Ето как да създавате, променяте и изтривате таблици в PostgreSQL.
Създаване на таблица
Използвайте командата CREATE TABLE (Създаване на таблица), за да дефинирате нова таблица и нейните колони:
CREATE TABLE table_name ( column1 data_type PRIMARY KEY, column2 data_type, column3 data_type );
Пример:
CREATE TABLE employees ( employee_id SERIAL PRIMARY KEY, name VARCHAR(100), department VARCHAR(50), salary NUMERIC );
Вмъкване на данни в таблица
Вмъкнете записи, като използвате командата INSERT INTO:
Запитване за данни
Извличане на данни от таблица чрез SELECT:
SELECT * FROM employees;
Актуализиране на данни
Актуализиране на записи в таблица:
UPDATE employees SET salary = 55000 WHERE name = 'John Doe';
Изтриване на данни
Изтриване на конкретни редове:
DELETE FROM employees WHERE name = 'John Doe';
6. Управление на достъпа до базата данни и сигурността
За целите на сигурността предоставяйте на потребителите само необходимите привилегии:
- Отнемете достъпа:
Отнемете всички права на базата данни my_database от dbuser;
- Ограничете правата за таблицата:
GRANT SELECT ON TABLE employees TO dbuser;
Това позволява на dbuser само да преглежда данните в таблицата employees, без да прави промени.
7. Архивиране и възстановяване на бази данни
PostgreSQL предлага команди за архивиране и възстановяване на бази данни.
Архивиране на база данни
Използвайте командата pg_dump, за да създадете резервно копие на база данни във файл:
pg_dump my_database > my_database_backup.sql
Възстановяване на база данни
Използвайте командата psql, за да възстановите база данни от резервен файл:
psql my_database < my_database_backup.sql
8. Премахване на бази данни и таблици
Когато дадена база данни или таблица вече не е необходима, използвайте командата DROP, за да я изтриете.
Изхвърляне на таблица
DROP TABLE table_name;
Пример:
DROP TABLE employees;
Премахване на база данни
Първо излезте от базата данни (ако е свързана) и след това я изхвърлете:
DROP DATABASE database_name;
Пример:
DROP DATABASE my_database;
9. Излизане от PostgreSQL
За да излезете от интерфейса на командния ред на PostgreSQL, използвайте:
\q
Заключение
Управлението на бази данни в PostgreSQL включва създаване и конфигуриране на бази данни, настройка на таблици, управление на потребители и извършване на резервни копия. Като овладеете тези команди, можете ефективно да управлявате базите данни на PostgreSQL, като гарантирате целостта и сигурността на данните.