Основы администрирования базы данных MySQL

MySQLMySQLBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

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

👀 Предварительный просмотр

Предварительный просмотр настройки базы данных MySQL

🎯 Задачи

В этом проекте вы научитесь:

  • Как запускать службу MySQL на вашей системе
  • Как создавать нового пользователя с безпарольным локальным входом
  • Как настраивать максимальное количество соединений с базой данных
  • Как включить автоматическое удаление бинарных журналов и установить период хранения журналов

🏆 Достижения

После завершения этого проекта вы сможете:

  • Управлять учетными записями пользователей и правами доступа в базе данных MySQL
  • Настраивать параметры базы данных для оптимизации производительности и обслуживания
  • Автоматизировать общие задачи управления базой данных с использованием SQL-скриптов

Запустите службу MySQL

В этом шаге вы запустите службу MySQL на вашей системе. Следуйте шагам ниже, чтобы выполнить этот шаг:

  1. Откройте терминал на вашей системе.
  2. Выполните следующую команду для запуска службы MySQL:
sudo service mysql start

Это запустит службу MySQL на вашей системе.

Сохраните скрипт

  1. Создайте новый файл с именем userBinLog.sql в директории ~/project.

  2. Скопируйте следующий код в файл userBinLog.sql:

  3. Создайте нового пользователя по имени 'Rong' с пустым паролем

    -- Create a new user named 'Rong' with a blank password
    CREATE USER 'Rong'@'localhost' IDENTIFIED BY '';

    Это создаст нового пользователя по имени "Rong" с пустым паролем и позволит пользователю входить с локальной машины.

  4. Установите максимальное количество соединений в 50

    -- Set the maximum number of connections to 50
    SET GLOBAL max_connections = 50;

    Это установит максимальное количество соединений в 50.

  5. Установите период хранения бинарных журналов в 15 дней

    -- Set the binary log retention period to 15 days
    SET GLOBAL binlog_expire_logs_seconds = 15 * 24 * 60 * 60;

    Это установит период хранения бинарных журналов в 15 дней.

Запустите скрипт

  1. Откройте интерфейс командной строки MySQL, выполнив следующую команду:

    mysql -uroot
  2. В提示符 MySQL выполните следующую команду для выполнения скрипта userBinLog.sql:

    SOURCE ~/project/userBinLog.sql

    Это выполнит SQL-инструкции в скрипте userBinLog.sql.

  3. Теперь вы завершили проект. Вы можете проверить результаты, выполнив следующие SQL-инструкции:

    SHOW VARIABLES LIKE "%max_connections%";
    SHOW VARIABLES LIKE 'binlog_expire_logs_seconds';
    use mysql;
    SELECT user, host FROM user WHERE user = 'Rong';

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

Вы можете проверить следующие результаты:

MariaDB [(none)]> SHOW VARIABLES LIKE "%max_connections%";
+-----------------------+-------+
| Variable_name         | Value |
+-----------------------+-------+
| extra_max_connections | 1     |
| max_connections       | 50    |
+-----------------------+-------+
2 rows in set (0.001 sec)

MariaDB [(none)]> SHOW VARIABLES LIKE 'binlog_expire_logs_seconds';
+----------------------------+---------+
| Variable_name              | Value   |
+----------------------------+---------+
| binlog_expire_logs_seconds | 1296000 |
+----------------------------+---------+
1 row in set (0.000 sec)

MariaDB [(none)]> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [mysql]> SELECT user, host FROM user WHERE user = 'Rong';
+------+-----------+
| User | Host      |
+------+-----------+
| Rong | localhost |
+------+-----------+
1 row in set (0.001 sec)
✨ Проверить решение и практиковаться

Резюме

Поздравляем! Вы завершили этот проект. Вы можете практиковаться в более многих лабораторных работах в LabEx, чтобы улучшить свои навыки.