Как создать базу данных и нового пользователя в MySQL: инструкция

    Команда Simple-Server
    03.06.2026
    5 мин

    Материал подготовлен командой Simple-Server для администраторов VPS и выделенных серверов. Команды и пути проверяйте на тестовой машине перед production.

    Кратко о задаче

    Подключитесь к MySQL под учётной записью root:

    Посмотрите, какие базы уже хранятся на сервере:

    Даже если вы ещё ничего не делали, таблица не будет пустой. В ней отобразятся служебные БД. Удалять их не нужно.

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

    CREATE DATABASE my_timeweb;

    Вместо my_timeweb укажите имя, которое необходимо задать новой БД.

    Чтобы убедиться, что новая база появилась на сервере, ещё раз выполните:

    В таблице отобразится название БД, которую вы только что создали.

    Нельзя, чтобы у двух и более БД были одинаковые имена. Если ещё раз создать базу my_timeweb, то появится сообщение об ошибке с кодом 1007.

    Чтобы предотвратить появление ошибки, можно в MySQL создать новую базу с помощью расширенного синтаксиса:

    CREATE DATABASE IF NOT EXISTS my_timeweb;

    В этом случае СУБД проверит условие. Если БД с таким именем не существует, то MySQL создаст её. Если же такая база была создана ранее, то ничего не изменится.

    DROP DATABASE my_timeweb;

    Вместо my_timeweb укажите имя БД, которую следует удалить.

    У DROP DATABASE также есть расширенный синтаксис, который помогает избежать ошибок:

    DROP DATABASE IF EXISTS my_timeweb;

    Запрос будет выполнен только при наличии БД с таким именем.

    DROP DATABASE удалит БД и связанные с ней данные. Интерфейс командной строки MySQL не предложит вам подтвердить действие. Поэтому применяйте DROP DATABASE с осторожностью.

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

    Чтобы в MySQL создать пользователя, авторизуйтесь как root и выполните в консоли:

    CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';

    После выполнения этой команды пользователь с именем user получит доступ к экземпляру MySQL с локальной машины (localhost). Прямой доступ с других хостов будет запрещён. Для идентификации будет использован пароль.

    Если нужно указать не конкретный хост, а целый пул, используйте знак %. Например:

    CREATE USER 'sub_user'@'10.0.%' IDENTIFIED BY 'password;

    Запись 10.0.% указывает на то, что получить доступ к MySQL можно с любого клиента, IP-адрес которого начинается с «10.0.».

    Вы можете использовать подстановочный знак на любом уровне IP-адреса в определении хоста. Чтобы юзер был доступен со всех хостов, используйте запись 'user'@'%'.

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

    SELECT * FROM mysql.user;

    Удалить учётную запись MySQL можно командой DROP USER:

    DROP USER 'user'@'localhost';

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

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

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

    ПривилегияЧто может делать пользователь
    ALTERМенять структуру таблицы или БД
    CREATEСоздавать новые БД и таблицы
    DELETEУдалять строки в таблице
    INSERTДобавлять строки в таблицу
    SELECTЧитать данные из таблицы
    UPDATEОбновлять данные в таблице
    DROPУдалять БД

    Менять структуру таблицы или БД

    Создавать новые БД и таблицы

    Добавлять строки в таблицу

    Обновлять данные в таблице

    Для выдачи прав нужно выполнить команду GRANT. Например:

    GRANT SELECT, INSERT ON my_timeweb.* TO 'user'@'localhost';

    Выполнять эту команду нужно из-под учётной записи root, так как у неё есть привилегия на GRANT. После применения такого запроса user сможет читать и добавлять строки в таблицы БД my_timeweb.

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

    GRANT ALL PRIVILEGES ON my_timeweb.* TO 'user'@'localhost';

    Чтобы отозвать привилегии, используйте команду REVOKE. У неё такой же синтаксис, как у GRANT. Но результат будет противоположным.

    Например, если вы хотите отозвать привилегии SELECT и INSERT у user в базе данных my_timeweb, введите следующее:

    REVOKE SELECT, INSERT ON my_timeweb.* FROM 'user'@'localhost';

    Если учётная запись не имела никаких прав в этой БД, то ничего не изменится.

    Разверните MySQL в облаке за минуту

    Ключевые команды, которые нужно знать

    CREATE DATABASE IF NOT EXISTS [database_name]; DROP DATABASE IF EXISTS [database_name]

    Как**** создать нового пользователя MySQL:

    CREATE USER 'user'@'host' IDENTIFIED BY 'password';

    Как удалить пользователя:

    DROP USER 'user'@'host';

    Это минимальный набор запросов, который поможет в MySQL создать базу данных и пользователя.**** Особенности использования этих и других возможностей СУБД подробно описаны в документации MySQL.

    Вы также можете использовать для управления графический интерфейс. Его предоставляют такие инструменты, как PhpMyAdmin или MySQL Workbench. В их документации подробно описаны действия для создания и работы с БД и пользователями.


    Нужен сервер для практики? Арендуйте VPS/VDS в России — root-доступ, NVMe, DDoS-защита и поддержка 24/7.

    VPS для проекта

    VPS с root-доступом, NVMe и поддержкой 24/7 на Simple-Server.

    StarterVDS

    490

    в месяц

    1 ядро

    1 ГБ RAM

    20 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Безлимитный трафик
    Заказать VPS
    Рекомендуем

    PerformanceVDS

    1190

    в месяц

    2 ядра

    4 ГБ RAM

    60 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Базовая DDoS-защита
    Заказать VPS

    Нужна другая конфигурация или чистый VPS без панели?

    Все тарифы VPS

    Похожие статьи, которые могут быть вам интересны