Определение структуры данных
Для создания базы данных используется команда CREATE DATABASE . Она имеет следующий синтаксис:
CREATE DATABASE [IF NOT EXISTS] имя_базы_даных;
В конце команды указывается имя базы данных.
Первая форма CREATE DATABASE имя_базы_даных пытается создать базу данных, но если такая база данных уже существует, то операция возвратит ошибку.
Вторая форма CREATE DATABASE IF NOT EXISTS имя_базы_даных пытается создать базу данных, если на сервере отсутствует бд с таким именем.
Например, в MySQL Workbench CE (или в MySQL Command Line Client) выполним следующую команду:
CREATE DATABASE productsdb;
Она создаст на сервере бд productsdb.

Установка базы данных
После создания БД с ней производятся различные операции: создание таблиц, добавление и получение данных и т.д. Но чтобы установить производить эти операции, надо установить определенную базу данных в качестве используемой. Для этого применяется оператор USE :
USE productsdb;
Удаление базы данных
Для удаления базы данных применяется команда DROP DATABASE , которая имеет следующий синтаксис:
DROP DATABASE [IF EXISTS] имя_базы_даных;
Первая форма DROP DATABASE имя_базы_даных пытается удалить базу данных, но если такая база данных отсутствует на сервере, то операция возвратит ошибку.
Вторая форма DROP DATABASE IF EXISTS имя_базы_даных пытается удалить базу данных, если на сервере имеется бд с таким именем.
Например, удалим выше созданную базу данных productsdb:
DROP DATABASE productsdb;
Основные операции с данными
Для добавления данных в БД в MySQL используется команда INSERT , которая имеет следующий формальный синтаксис:
INSERT [INTO] имя_таблицы [(список_столбцов)] VALUES (значение1, значение2, . значениеN)
После выражения INSERT INTO в скобках можно указать список столбцов через запятую, в которые надо добавлять данные, и в конце после слова VALUES скобках перечисляют добавляемые для столбцов значения.
Например, пусть в базе данных productsdb есть следующая таблица Products:
CREATE DATABASE productsdb; USE productsdb; CREATE TABLE Products ( Id INT AUTO_INCREMENT PRIMARY KEY, ProductName VARCHAR(30) NOT NULL, Manufacturer VARCHAR(20) NOT NULL, ProductCount INT DEFAULT 0, Price DECIMAL NOT NULL );
Добавим в эту таблицу одну строку с помощью следующего кода:
INSERT Products(ProductName, Manufacturer, ProductCount, Price) VALUES ('iPhone X', 'Apple', 5, 76000);
В данно случае значения будут передаваться столбцам по позиции. То есть стобцу ProductName передается строка «iPhone X», столбцу Manufacturer — строка «Apple» и так далее.
Важно, чтобы между значениями и типами данных столбцов было соответствие. Так, столбец ProductName представляет тип varchar , то есть строку. Соответственно этому столбцу мы можем передать строковое значение в одинарных кавычках. А стобец ProductCount представляет тип int , то есть целое число, поэтому данному столбцу нужно передать целые числа, но никак не строки.
После удачного выполнения в MySQL Workbench в поле вывода должны появиться зеленый маркер и сообщение «1 row(s) affected»:

Необязательно при добавлении данных указывать значения абсолютно для всех столбцов таблицы. Например, в примере выше не указано значение для стобца Id. Но поскольку для данного столбца определен атрибут AUTO_INCREMENT , то его значение будет автоматически генерироваться.
Также мы можем опускать при добавлении такие столбцы, которые поддерживают значение NULL или для которых указано значение по умолчанию, то есть для них определены атрибуты NULL или DEFAULT . Так, в таблице Products столбец ProductCount имеет значение по умолчанию — число 0. Поэтому мы можем при добавлении опустить этот столбец, и ему будет передаваться число 0:
INSERT Products(ProductName, Manufacturer, Price) VALUES ('Galaxy S9', 'Samsung', 63000);
С помощью ключевых слов DEFAULT и NULL можно указать, что в качестве значения будет использовать значение по умолчанию или NULL соответственно:
INSERT Products(ProductName, Manufacturer, Price, ProductCount) VALUES ('Nokia 9', 'HDM Global', 41000, DEFAULT);
INSERT Products(ProductName, Manufacturer, Price, ProductCount) VALUES ('Nokia 9', 'HDM Global', 41000, NULL);
Множественное добавление
Также мы можем добавить сразу несколько строк:
INSERT Products(ProductName, Manufacturer, Price, ProductCount) VALUES ('iPhone 8', 'Apple', 51000, 3), ('P20 Lite', 'Huawei', 34000, 4), ('Galaxy S8', 'Samsung', 46000, 2);
В данном случае в таблицу будут добавлены три строки.
MySQL — создание и управление базами данных
Для каждого сайта мы рекомендуем создавать отдельную базу данных. Для создания новой базы данных перейдите в раздел Базы данныхпанели управления хостингом, а затем выберите кнопку Создать базу.
В новом окне введите имя базы и нажмите кнопку Создать. В меню Принадлежность из выпадающего списка выберите сайт, который будет использовать данную базу, нажмите на кнопку Сохранить.
Далее нажмите на кнопку Добавить пользователя, где из выпадающего списка выберите необходимого MySQL-пользователя. В поле Права рекомендуется установить значение Полный доступ. Далее необходимо нажать кнопку Создать.
На этом настройка завершена. Теперь вы можете использовать базу данных для размещения нового сайта.
Подключение к серверу MySQL
Получить параметры для подключения к базе данных вы можете в разделе Базы данныхпанели управления хостингом. Для этого перейдите на вкладку Пользователи и нажмите на имя пользователя.
Здесь вы можете получить основную информацию для подключения к серверу. 
- Адрес сервера баз данных (хост): login.mysql, где login — уникальное имя услуги хостинга (указано в верхней правой части панели управления).
- Имя MySQL-пользователя (логин): login_mysql.
- Для получения пароля MySQL-пользователя нажмите кнопку Сбросить пароль. Новый пароль будет отображен на экране.
- При создании хостинга создается база данных с именем login_db.
В случае изменения пароля MySQL-пользователя, сайты, размещенные на хостинге и использующие данного MySQL-пользователя для подключения к базе, не смогут нормально работать, пока в скриптах пароль не будет изменен на новый.
Как войти в PHPMyAdmin?
Приложение PHPMyAdmin позволяет работать с базами данных через браузер. С его помощью вы можете редактировать содержимое базы, выполнять SQL-запросы, осуществлять резервное копирование и восстановление баз данных. Для доступа к PHPMyAdmin зайдите в панель управления хостингом, раздел Базы данных ->PHPMyAdmin.
Используйте данные MySQL-пользователя для авторизации.
Дамп базы MySQL
- Экспорт дампа базы данных Для создания резервной копии зайдите в интерфейс PHPMyAdmin.
- Слева на странице выберите нужную базу данных.
- Перейдите на вкладку Экспорт.

- При необходимости измените настройки экспорта и нажмите кнопку Вперед в нижней части страницы.

Файл с содержимым базы данных будет загружен на ваш компьютер. Для работы с базами большого объема рекомендуем воспользоваться подключением из командной строки.
- В левой колонке выберите новую базу данных.
- Откройте вкладку Импорт.
- Нажмите на кнопку Выберите файл и укажите файл дампа, сохраненный на вашем компьютере.
- Задайте кодировку файла (обычно она совпадает с кодировкой сайта).
- При необходимости измените настройки импорта и нажмите кнопку Вперед, дождитесь окончания импорта.

После того как база данных будет импортирована, измените в файлах конфигурации сайта название старой базы на новую, проверьте работоспособность. Для работы с базами большого объема рекомендуем воспользоваться подключением из командной строки.
Для создания дампа базы данных выполните команду:
mysqldump -y -f -q —default-character-set=binary —create-options —single-transaction —skip-extended-insert —add-drop-table -h dbhost -u dbuser -pdbpassword dbname > dump.sql
- dbhost — адрес сервера баз данных
- dbuser — имя MySQL-пользователя
- dbpassword — пароль MySQL-пользователя (пишется слитно с параметром -p)
- dbname — название базы данных
- dump.sql — название дампа базы данных. Дамп будет создан в текущем каталоге
Для импорта дампа в базу данных выполните команду:
mysql -h dbhost -u dbuser -pdbpassword dbname < dump.sql
Мы рекомендуем предварительно создать новую базу данных и выполнить в нее импорт дампа. Дамп базы данных должен быть загружен на хостинг (см. статью FTP — загрузка файлов на сервер )
После того как база данных будет импортирована, измените в файлах конфигурации сайта название старой базы на новую, проверьте работоспособность.
Удаленный доступ к базе данных MySQL
Изменение кодировки базы данных по умолчанию
- В левой колонке выберите нужную базу данных.
- Перейдите на вкладку Операции.
- В блоке Сравнение выберите utf8_general_ci.
- Нажмите кнопку Вперед.

Рекомендуется выбирать кодировку в соответствии с требованиями CMS или рекомендациями разработчика.
utf8_general_ci или utf8_unicode_ci — подходит для большинства CMS.
utf8mb4_unicode_ci или utf8mb4_unicode_520_ci — подходит для новых установок CMS на MySQL 5.6.
utf8mb4_0900_ai_ci — подходит для новых установок CMS на MySQL 8.
Информация для клиентов: +7 (495) 783-3-783; info@r01.ru
Техническая поддержка: +7 (495) 783-3-783; support@r01.ru
Центральный офис: г. Москва, Большой Гнездниковский переулок, дом 1, строение 2 ( м. «Тверская», выход №9, Бизнес-Центр «Вознесенский»).
Как создать базу данных MySQL
В этой статье мы покажем, как создать базу данных MySQL, добавить в неё таблицу и заполнить данными при помощи командной строки. Для примера будем делать список товаров для книжного магазина.
Что внутри
- Подключиться к серверу и зайти в MySQL
- Создать базу данных
- Создать таблицу
- Создать запись в таблице
- Отредактировать запись
- Удалить строку, таблицу и базу данных
- Выйти из MySQL
Подключиться к серверу и зайти в MySQL
Сначала подключитесь к серверу по SSH. Обычно хостинг-провайдеры присылают логин и пароль для подключения в письме об активации хостинга. У нас это письмо называется по-разному в зависимости от типа хостинга: «Ваш виртуальный хостинг готов к использованию», «Это ваш VPS готов?» или «Выделенный сервер заказывали?».
После подключения к серверу авторизуйтесь как пользователь MySQL:
mysql -u имя_пользователя -p
Если подключаетесь к MySQL впервые, в системе будет только один пользователь — root. Пароль от root лежит в конфигурационном файле .my.cnf. Вы можете открыть его с помощью команды cat:
cat .my.cnf
В файле будет стандартный пароль. Он может оказаться нерабочим, если его поменяли вручную и забыли обновить в файле. В этом случае попробуйте сбросить пароль.
Создать базу данных
Все команды в MySQL должны заканчиваться точкой с запятой. Этот знак означает окончание запроса. Без него MySQL-сервер не поймёт, что перед ним команда, поэтому после нажатия клавиши Enter ничего не произойдёт.
Если забыли закончить команду по правилам, вводить её заново не обязательно. Просто поставьте точку с запятой в следующей строке и снова нажмите Enter.
Перед тем как создать новую базу данных, проверьте список всех бд на MySQL-сервере при помощи команды SHOW DATABASES:
SHOW DATABASES;
Результат будет выглядеть примерно так:

Чтобы создать базу данных MySQL, используйте команду CREATE DATABASE:
CREATE DATABASE название_базы_данных ;
Для нашего примера с книжным магазином подойдёт название bookstore:
CREATE DATABASE bookstore;
Просто создать базу данных недостаточно. Чтобы с ней работать, нужно также выбрать её отдельной командой. Это придётся делать каждый раз после подключения к MySQL.
USE bookstore;
Создать таблицу
Информация внутри базы данных MySQL хранится в таблицах. Их нужно создавать отдельно с помощью команды CREATE TABLE. Вы вводите одной командой всю структуру таблицы:
CREATE TABLE название_таблицы (
название_столбца ПАРАМЕТР ,
название_столбца ПАРАМЕТР ,
название_столбца ПАРАМЕТР
);
Параметр — это правило для информации внутри столбца. С его помощью можно сделать поле обязательным для заполнения, разрешить использовать в столбце только цифры или наоборот — только буквы.
Вот небольшой список часто используемых параметров:
- AUTO_INCREMENT — автоматически нумеровать каждую новую запись. Можно сделать отдельный столбец с нумерацией строк в таблице;
- CHAR — можно использовать только символы;
- INT — можно использовать только целые числа;
- NOT NULL — поле не должно быть пустым;
- PRIMARY KEY — в каждой строке должны быть только уникальные значения.
Обычно параметры перечисляют один за другим прямо в строке со столбцом, как в примере выше. Но есть одно исключение — параметр PRIMARY KEY. Когда он присутствует в команде больше одного раза, MySQL-сервер показывает ошибку.
Поэтому, если в таблице уникальные значения должны быть в нескольких столбцах, запишите PRIMARY KEY отдельной строкой и добавьте названия столбцов в скобках:
PRIMARY KEY ( название_столбца , название_столбца , название_столбца )
Теперь давайте создадим первую таблицу с названием books и четырьмя столбцами: номер записи, название книги, автор и цена. Команда для создания такой таблицы будет выглядеть так:
CREATE TABLE books( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, title CHAR(100) NOT NULL, author CHAR(40) NOT NULL, price INT NOT NULL );
Создать запись в таблице
Таблицу создали, остаётся наполнить её информацией. Это делают при помощи команды INSERT. Вы вводите одной командой значения сразу для всей строки:
INSERT INTO название_таблицы ( название_столбца1 , название_столбца2 , название_столбца3 ) VALUES (“ значение1 “, “ значение2 “, “ значение3 “);
Заметьте, что значения, которые вы хотите поместить в столбцы, нужно брать в кавычки , а названия таблиц и столбцов — нет.
Столбец id не указываем, потому что в нём будут только цифры, которые MySQL добавит автоматически, благодаря параметру AUTO_INCREMENT.
Подставим значения для первой строки:
INSERT INTO books (title,author,price) VALUES("Green Mile","Stephen King","17");
Потом добавим ещё одну строку:
INSERT INTO books (title,author,price) VALUES("The Casal Vacancy", "J.K.Rowling", "23");
И посмотрим, как теперь выглядит таблица:
SELECT * FROM books;
Результат должен быть таким:

Отредактировать запись
Если вы случайно ввели значение с опечаткой, используйте команду UPDATE, чтобы отредактировать конкретное поле:
UPDATE название_таблицы SET название_столбца = “ новое_значение ” WHERE название_столбца = “ значение “;
После SET укажите название столбца, в котором хотите изменить значение. А после WHERE — название какого-то другого столбца из этой же строки. Это нужно, чтобы помочь MySQL-серверу понять, куда именно вписывать новое значение.
Подставим реальные значения, чтобы исправить опечатку в слове Casal в названии второй книги:
UPDATE books SET title = "The Casual Vacancy" WHERE ;
А после снова просмотрим таблицу и убедимся, что опечатки больше нет:

Удалить строку, таблицу и базу данных
Удаление в MySQL не требует дополнительного подтверждения. Всё удаляется с первого раза и отменить это нельзя, поэтому используйте команды аккуратно.
Если какая-то строка в таблице больше не нужна, удалите её с помощью команды DELETE FROM:
DELETE FROM название_таблицы WHERE название_столбца = “ значение_столбца “;
Допустим, книги “The Casual Vacancy” на самом деле нет в продаже. Удалим строку с ней.
DELETE FROM books WHERE ;
Если хотите очистить все строки сразу, но сохранить структуру таблицы, используйте команду TRUNCATE:
TRUNCATE TABLE название_таблицы ;
Чтобы полностью удалить таблицу, используйте команду DROP:
DROP TABLE название_таблицы ;
Похожая команда удалит базу данных MySQL:
DROP DATABASE название_базы_данных ;
Выйти из MySQL
В конце работы отключитесь от MySQL-сервера: