Урок 26: Введение в MySQL

Я рад приветствовать вас на 26-м уроке нашего курса по изучению PHP для начинающих. Сегодня мы начнем погружаться в мир баз данных, а именно в MySQL. Это одна из самых популярных систем управления базами данных (СУБД), которая широко используется в веб-разработке. Если вы хотите создавать динамические сайты, которые взаимодействуют с данными, то без MySQL вам не обойтись.

В этом уроке мы разберем, как установить и настроить MySQL, создавать базы данных и таблицы, а также выполним несколько практических задач.

Установка и настройка MySQL

Шаг 1: Установка MySQL

Для начала нам нужно установить MySQL на ваш компьютер. Если вы используете операционную систему Windows, я рекомендую установить XAMPP — это пакет, который включает в себя MySQL, Apache (веб-сервер) и PHP. Это значительно упростит процесс установки и настройки.

  1. Скачайте XAMPP с официального сайта: https://www.apachefriends.org/.
  2. Запустите установщик и следуйте инструкциям на экране.
  3. В процессе установки убедитесь, что вы выбрали MySQL для установки.
  4. После завершения установки запустите панель управления XAMPP и запустите модули Apache и MySQL.

Если вы используете Linux или macOS, MySQL можно установить через терминал. Например, на Ubuntu выполните команду:

bash
sudo apt-get install mysql-server

На macOS с помощью Homebrew:

bash
brew install mysql

Шаг 2: Настройка MySQL

После установки MySQL необходимо настроить его для безопасной работы. Если вы используете XAMPP, то MySQL уже настроен, и вы можете перейти к следующему шагу. Если вы устанавливали MySQL вручную, выполните следующие действия:

  1. Запустите MySQL:
    bash
    sudo systemctl start mysql
  2. Запустите скрипт для настройки безопасности:
    bash
    sudo mysql_secure_installation

    В процессе вам предложат установить пароль для root-пользователя, удалить анонимные пользователи, отключить удаленный доступ root и удалить тестовые базы данных. Следуйте инструкциям на экране.

  3. Проверьте, что MySQL работает:
    bash
    sudo systemctl status mysql

    Если все в порядке, вы увидите сообщение, что сервер активен.

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

Теперь, когда MySQL установлен и настроен, давайте создадим нашу первую базу данных и таблицу.

Шаг 1: Подключение к MySQL

Для работы с MySQL можно использовать командную строку или графический интерфейс, например, phpMyAdmin, который идет в комплекте с XAMPP. Мы начнем с командной строки.

  1. Откройте терминал (или командную строку в Windows).
  2. Подключитесь к MySQL:
    bash
    mysql -u root -p

    Введите пароль, который вы установили при настройке.

  3. Если подключение прошло успешно, вы увидите приглашение MySQL:
    mysql>

Шаг 2: Создание базы данных

Давайте создадим базу данных с именем my_first_db:

CREATE DATABASE my_first_db;

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

SHOW DATABASES;

Вы увидите список всех баз данных, включая my_first_db.

Шаг 3: Выбор базы данных

Прежде чем создавать таблицы, нужно выбрать базу данных, с которой мы будем работать:

USE my_first_db;

Теперь все команды будут выполняться в контексте этой базы данных.

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

Давайте создадим таблицу users, которая будет хранить информацию о пользователях. Таблица будет содержать следующие поля:

  • id — уникальный идентификатор пользователя.
  • username — имя пользователя.
  • email — электронная почта.
  • created_at — дата создания записи.

Выполните следующий SQL-запрос:

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(50) NOT NULL,
    email VARCHAR(100) NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

Разберем этот запрос:

  • id INT AUTO_INCREMENT PRIMARY KEY — создает поле id, которое автоматически увеличивается при добавлении новой записи. Это первичный ключ таблицы.
  • username VARCHAR(50) NOT NULL — поле для имени пользователя. Оно не может быть пустым (NOT NULL).
  • email VARCHAR(100) NOT NULL — поле для электронной почты.
  • created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP — поле для даты создания записи. По умолчанию оно заполняется текущей датой и временем.

Шаг 5: Проверка таблицы

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

SHOW TABLES;

Вы увидите список таблиц в базе данных, включая users.

Чтобы посмотреть структуру таблицы, выполните:

DESCRIBE users;

Вы увидите описание всех полей таблицы.

Практические задачи

Теперь, когда мы разобрались с основами, давайте закрепим знания на практике.

Задача 1: Добавление данных в таблицу

Добавьте несколько записей в таблицу users. Используйте следующий SQL-запрос:

INSERT INTO users (username, email) VALUES ('maxim', 'maxim@example.com');
INSERT INTO users (username, email) VALUES ('anna', 'anna@example.com');

Проверьте, что данные добавились:

SELECT * FROM users;

Задача 2: Обновление данных

Измените email пользователя с именем maxim:

UPDATE users SET email = 'maxim_new@example.com' WHERE username = 'maxim';

Проверьте результат:

SELECT * FROM users;

Задача 3: Удаление данных

Удалите пользователя с именем anna:

DELETE FROM users WHERE username = 'anna';

Проверьте результат:

SELECT * FROM users;

Задача 4: Создание новой таблицы

Создайте таблицу posts, которая будет хранить записи блога. Таблица должна содержать следующие поля:

  • id — уникальный идентификатор записи.
  • title — заголовок записи.
  • content — текст записи.
  • user_id — идентификатор пользователя, который создал запись.
  • created_at — дата создания записи.
CREATE TABLE posts (
    id INT AUTO_INCREMENT PRIMARY KEY,
    title VARCHAR(100) NOT NULL,
    content TEXT NOT NULL,
    user_id INT,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    FOREIGN KEY (user_id) REFERENCES users(id)
);

Обратите внимание на поле user_id. Оно связано с таблицей users через внешний ключ (FOREIGN KEY). Это означает, что каждая запись в таблице posts должна быть связана с пользователем из таблицы users.

Сегодня мы установили и настроили MySQL, создали базу данных и таблицы, а также выполнили несколько практических задач. Это только начало и в следующих уроках мы углубимся в работу с базами данных, изучим более сложные запросы и научимся интегрировать MySQL с PHP.

Ссылка на полный курс:
Курс с уроками по PHP для начинающих