Шпаргалка для MySQLPosted by On

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

Данная шпаргалка предполагает под собой консольные команды — по этой причине у вас должен быть доступ к серверу и базе данных. Альтернативно вы можете воспользоваться phpMyAdmin или SQL-клиентом для администрирования баз данных MySQL.

Если вы нашли неточности или желаете дополнить шпаргалку, пожалуйста напишите свое мнение в комментариях.

Для входа в интерфейс администрирования MySQL (или MariaDB) используйте команду:

mysql -u root -p

Для выхода из интерфейса используйте команду exit.

Базовые команды

Получить список баз данных

SHOW DATABASES;

Пример вывода:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test               |
+--------------------+
6 rows in set (0.01 sec)

Создать базу данных

CREATE DATABASE Название;

Удалить базу данных

DROP DATABASE Название;

Выбрать базу данных

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

USE DATABASE Название;

Работа с таблицами

Создать таблицу

Перед использованием данной команды необходимо «Выбрать базу данных» в которой будет создана таблица.

CREATE TABLE test_table ( id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, column1 VARCHAR(50), column2 VARCHAR (50) );

Данной командой мы создадим таблицу с тремя столбцами и названием test_table. В данном примере id задается автоматически для каждой записи в поле и является уникальным. Столбцы column1 и column2 имеют ограничение в 50 символов.

Показать все таблицы

SHOW TABLES;

Показать структуру таблицы

DESCRIBE test_table;

Пример вывода:

+---------+-------------+------+-----+---------+----------------+
| Field   | Type        | Null | Key | Default | Extra          |
+---------+-------------+------+-----+---------+----------------+
| id      | int(11)     | NO   | PRI | NULL    | auto_increment |
| column1 | varchar(50) | YES  |     | NULL    |                |
| column2 | varchar(50) | YES  |     | NULL    |                |
+---------+-------------+------+-----+---------+----------------+
3 rows in set (0.00 sec); 

Данная таблица создана на примере «Создать таблицу».

Вставить данные в таблицу

INSERT INTO test_table (id, column1, column2) VALUES (NULL, 'name1', 'name2');

Вставляем строку в таблицу test_table, со значениями:
1. Вставляем NULL в id. Означает что мы вставляем «ничего», так как столбец имеет флаг extra = auto_increment будет автоматически подставлен уникальный идентификатор поля.
2. Вставляем name1 в column1. Будут вставлены текстовые данные равные name1.
3. Вставляем name2 в column2. Будут вставлены текстовые данные равные name2.

Получить данные из таблицы

SELECT * FROM Название;

Пример вывода:

+----+---------+---------+
| id | column1 | column2 |
+----+---------+---------+
| 1  | name1   | name2   |
+----+---------+---------+
1 row in set (0.00 sec)

 

Очистить таблицу

Команда удаляет все данные из указанной таблицы MySQL!

DELETE FROM Название;

Удалить таблицу

DROP TABLE Название;

Создание пользователя

Ниже рассмотрим пример создания базы данных в MySQL, создание пользователя и выдача прав на новую БД. Не забудьте войти в интерфейс администрирования перед вводом команд (описание как это сделать есть сверху).

  1. Создадим базу данных.
CREATE DATABASE Название;

2. Создадим пользователя.

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

DatabaseUser — имя пользователя.
localhost — разрешается только локальное подключение (внутри машины), допускается использование символа % для разрешения подключения с любого хоста.
password — пароль пользователя.

3. Назначим права пользователю на определенную базу данных.

GRANT ALL ON DatabaseName.* TO 'DatabaseUser'@"localhost";

DatabaseName — название базы данных (.* означает все возможные операции с базой данных, в том числе и удаление).
DatabaseUser — ранее созданный пользователь.

4. Перечитаем привелегии. Обязательный пункт без которого новый пользователь не заработает.

FLUSH PRIVILEGES;

Вы можете проверить пользователя, просто войдите в него:

mysql -u Имя Пользователя -p

Бэкап и восстановление MySQL

Ниже рассмотрим пример «дампа» базы данных. Это может быть полезно в случае создания резервного копирования или переноса базы данных на другой сервер.

Для создания дампа (копии) базы данных, используйте команду:

mysqldump -u Имя Пользователя -p Название Базы > BackupDatabase.sql

В текущей папке будет создан файл BackupDatabase.sql с содержанием указанной базы данных.

Мы можем использовать данный файл для восстановления базы данных в дальнейшем:

mysql -u Имя пользователя -p Название базы < BackupDatabase.sql

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

Дамп и загрузка отдельных таблиц MySQL

В некоторых ситуациях требуется сделать копию только одной таблицы.

Для создания дампа отдельной таблицы:

mysqldump -u Имя пользователя  -p Название базы Название таблицы > table.sql

Результатом команды будет созданный .sql файл с содержанием таблицы. Если необходимо выгрузить несколько таблиц, Вы можете указать их через пробел, например Таблица 1 Таблица 2 Таблица 3.

Загрузка таблицы в базу данных:

mysql -u Имя пользователя -p Название базы < table.sql

MySQLШпаргалки

mariadbmysqlsqlкомандысинтаксисшпаргалки

avatar
  Подписаться  
Уведомление о