Урок 15

phpMyAdmin — управление базой данных

20 мин

Что такое phpMyAdmin?

phpMyAdmin — это веб-интерфейс для управления MySQL. Вместо того чтобы писать команды в терминале, вы кликаете по кнопкам и заполняете формы.

Открываем phpMyAdmin

  1. Убедитесь, что Docker запущен (docker compose up -d)
  2. Откройте в браузере: http://localhost:8081

Вы должны увидеть интерфейс phpMyAdmin. Слева — список баз данных.

Интерфейс phpMyAdmin

┌──────────────────────────────────────────────────────────┐
│  phpMyAdmin                                               │
├──────────────────┬───────────────────────────────────────┤
│  Базы данных:    │   Содержимое выбранной базы/таблицы   │
│                  │                                        │
│  - blog          │   [Структура] [SQL] [Поиск] [Вставить] │
│    - posts       │                                        │
│    - users       │                                        │
│  - information...│                                        │
│  - mysql         │                                        │
│                  │                                        │
└──────────────────┴───────────────────────────────────────┘

Наша база данных

В левой панели найдите базу blog — она создалась автоматически благодаря настройке в docker-compose.yml:

MYSQL_DATABASE: blog

Кликните на blog. База пока пустая — в ней нет таблиц.

Создаём таблицу users

  1. Выберите базу blog слева
  2. Во вкладке "Структура" найдите поле "Создать таблицу"
  3. Введите имя: users
  4. Количество столбцов: 5
  5. Нажмите "Вперёд"

Откроется форма для настройки столбцов. Заполните так:

Имя Тип Длина По умолчанию Индекс A_I
id INT Нет PRIMARY
username VARCHAR 50 Нет UNIQUE
email VARCHAR 100 Нет UNIQUE
password VARCHAR 255 Нет
created_at DATETIME CURRENT_TIMESTAMP
Что означают настройки:
- A_I (AUTO_INCREMENT) — автоматически увеличивать ID
- PRIMARY — первичный ключ
- UNIQUE — значение должно быть уникальным (два пользователя не могут иметь одинаковый email)
- CURRENT_TIMESTAMP — автоматически ставить текущую дату/время

Нажмите "Сохранить" внизу страницы.

Создаём таблицу posts

  1. Снова выберите базу blog
  2. Создать таблицу: posts, 5 столбцов
  3. Настройте столбцы:
Имя Тип Длина По умолчанию Индекс A_I
id INT Нет PRIMARY
user_id INT Нет INDEX
title VARCHAR 255 Нет
content TEXT Нет
created_at DATETIME CURRENT_TIMESTAMP

Нажмите "Сохранить".

Добавляем тестовые данные

Добавляем пользователя

  1. Кликните на таблицу users слева
  2. Выберите вкладку "Вставить"
  3. Заполните форму (id оставьте пустым — он заполнится автоматически):
  • username: admin
  • email: admin@blog.ru
  • password: 123456 (позже мы будем хранить хеш пароля!)
  • created_at: оставьте как есть

Нажмите "Вперёд".

Добавляем пост

  1. Кликните на таблицу posts
  2. Вкладка "Вставить"
  3. Заполните:
  • user_id: 1 (ID нашего admin)
  • title: Привет, мир!
  • content: Это мой первый пост в блоге.

Нажмите "Вперёд".

Добавьте ещё пару постов для тестирования.

Просмотр данных

Чтобы увидеть данные в таблице:

  1. Кликните на таблицу слева
  2. Выберите вкладку "Обзор"

Вы увидите все записи в виде таблицы.

Структура нашей базы

Теперь у нас есть:

База данных: blog
│
├── Таблица: users
│   ├── id (INT, PRIMARY KEY, AUTO_INCREMENT)
│   ├── username (VARCHAR 50, UNIQUE)
│   ├── email (VARCHAR 100, UNIQUE)
│   ├── password (VARCHAR 255)
│   └── created_at (DATETIME)
│
└── Таблица: posts
    ├── id (INT, PRIMARY KEY, AUTO_INCREMENT)
    ├── user_id (INT) → ссылается на users.id
    ├── title (VARCHAR 255)
    ├── content (TEXT)
    └── created_at (DATETIME)
База данных готова!
В следующем уроке научимся писать SQL-запросы для работы с данными.

Мы используем файлы cookie для улучшения работы сайта и персонализации контента. Продолжая использовать сайт, вы соглашаетесь с использованием cookies в соответствии с нашей Политикой конфиденциальности.