MySQL start: различия между версиями
(Новая страница: «{{Note|Обратите внимение, что это не официальная документация, а попытка начинающего админа объяснить материал начинающим админам.}} ==Виды баз данных== *Реляционные - (SQL) — база, где данные хранятся в формате таблиц, они строго структурированы и связаны дру...») |
Нет описания правки |
||
Строка 1: | Строка 1: | ||
{{stub}} | |||
{{Note|Обратите внимение, что это не официальная документация, а попытка начинающего админа объяснить материал начинающим админам.}} | {{Note|Обратите внимение, что это не официальная документация, а попытка начинающего админа объяснить материал начинающим админам.}} | ||
=Теория= | |||
==Виды баз данных== | ==Виды баз данных== | ||
*Реляционные - (SQL) — база, где данные хранятся в формате таблиц, они строго структурированы и связаны друг с другом. | *Реляционные - (SQL) — база, где данные хранятся в формате таблиц, они строго структурированы и связаны друг с другом. | ||
Строка 12: | Строка 14: | ||
</pre> | </pre> | ||
Между базой данных и пользователем используется СУБД - система управления базами данных - ПО обеспечивающее взаимодействие пользователя и БД. | Между базой данных и пользователем используется СУБД - система управления базами данных - ПО обеспечивающее взаимодействие пользователя и БД. | ||
==Реляционная БД== | |||
Состоит из: | |||
*сущность (таблица) - тип объектов, хранящихся в БД | |||
**поле - часть таблицы, за которой закреплен определенный тип данных. (содержит название и описание) | |||
***запись - строка таблицы (поле) БД, содержащая набор значений и свойств размещенный в полях. | |||
{{Note| В поле необходимо всегда указывать тип записи. При этом нельзя указывать одинаковые записи - т.к. это идентификатор.}} | |||
<pre> | |||
БД | |||
├───таблица | |||
│ ├───поле | |||
│ │ └запись | |||
│ ├───поле | |||
│ │ └запись | |||
│ └───поле | |||
│ │ └запись | |||
├───таблица | |||
│ ├───поле | |||
│ │ └запись | |||
│ ├───поле | |||
│ │ └запись | |||
│ └───поле | |||
│ └запись | |||
└───таблица | |||
├───поле | |||
│ └запись | |||
├───поле | |||
│ └запись | |||
└───поле | |||
└запись | |||
</pre> | |||
<pre> | |||
БД | |||
├───автор | |||
│ ├───библиография | |||
│ ├───биография | |||
│ ├───дата рождения | |||
│ └───имя | |||
├───книги | |||
├───абонементы | |||
└───сотрудник | |||
</pre> | |||
В данном примере БД - база данных; автор, инвентарный номер, книга - таблицы; библиография, биография, дата рождения, имя - поля. | |||
==Типы данных== | |||
===строковые=== | |||
*char - строка фиксированной длины | |||
**пример char(20) | |||
***максимум 20 символов | |||
***при меньшем количестве переменная заполняется пробелами | |||
***больше 20 заполнить нельзя | |||
*varchar - строка переменной длины | |||
**пример varchar(20) | |||
**будет записано 10 символов | |||
**в памяти будет хранится 10 символов и 1 говорящий о кол-ве используемых символов | |||
*tiny - текст до 255 байт | |||
*text - текст до 65 кб | |||
===числовые=== | |||
*целые | |||
**int | |||
**tinyint | |||
**smallint | |||
**mediumint | |||
**bigint | |||
*дробные (указывается в скобках (всего, точность)) | |||
**decimal(3,2) => (xxx,yy) => -999,99 - 999,99 | |||
**float(a,b) | |||
**double(a,b) | |||
=Практика= | |||
==Установка MySQL== | |||
Согласно [[MySQL]]: | |||
$ su - | |||
# apt-get install MySQL-server | |||
# service mysqld enable | |||
# service mysqld start | |||
==Shell СУБД== | |||
===Запуск=== | |||
$ mysql | |||
mysql> | |||
===Создание/удаление=== | |||
*Вывести список БД: | |||
show databases; | |||
*Создать БД: | |||
create database ''name''; | |||
create database if not exists ''name''; | |||
*Удалить БД: | |||
drop database ''name''; | |||
drop database if exists ''name''; | |||
==Работа с сущностями== | |||
*подключиться к базе данных: | |||
use ''name''; | |||
*вывести список сущностей (таблиц) (из-под подключенной БД): | |||
show tables; | |||
*создать сущность (таблицу) (из-под подключенной БД): | |||
create table ''name''(''запись'' ''тип''); | |||
Следующие команды создают БД, создают таблицу, выводят список таблиц на экран, выводят описание созданной таблицы и удаляют таблицу. | |||
<pre> | |||
>show databases; | |||
>create database test; | |||
>use test; | |||
>create table test2 (name varchar(10), id int, description char(40)); | |||
>show tables; | |||
>describe test2; | |||
>drop table test2; | |||
</pre> | |||
{{Category navigation|title=Начинающему системному администратору|category=Начинающему системному администратору|sortkey={{SUBPAGENAME}}}} | {{Category navigation|title=Начинающему системному администратору|category=Начинающему системному администратору|sortkey={{SUBPAGENAME}}}} |
Версия от 17:49, 17 октября 2022
Примечание: Обратите внимение, что это не официальная документация, а попытка начинающего админа объяснить материал начинающим админам.
Теория
Виды баз данных
- Реляционные - (SQL) — база, где данные хранятся в формате таблиц, они строго структурированы и связаны друг с другом.
В них, обычно, планируются несерьезные, неглобальные изменения. Могут использовать сложные запросы и набор отношений.
- Нереляционные (NoSQL) — хранит данные без четких связей друг с другом и четкой структуры.
Могут/ не могут иметь отношения, не имеют четкой структуры. Меняются в процессе.
Структура
БД └─СУБД └─пользователь
Между базой данных и пользователем используется СУБД - система управления базами данных - ПО обеспечивающее взаимодействие пользователя и БД.
Реляционная БД
Состоит из:
- сущность (таблица) - тип объектов, хранящихся в БД
- поле - часть таблицы, за которой закреплен определенный тип данных. (содержит название и описание)
- запись - строка таблицы (поле) БД, содержащая набор значений и свойств размещенный в полях.
- поле - часть таблицы, за которой закреплен определенный тип данных. (содержит название и описание)
Примечание: В поле необходимо всегда указывать тип записи. При этом нельзя указывать одинаковые записи - т.к. это идентификатор.
БД ├───таблица │ ├───поле │ │ └запись │ ├───поле │ │ └запись │ └───поле │ │ └запись ├───таблица │ ├───поле │ │ └запись │ ├───поле │ │ └запись │ └───поле │ └запись └───таблица ├───поле │ └запись ├───поле │ └запись └───поле └запись
БД ├───автор │ ├───библиография │ ├───биография │ ├───дата рождения │ └───имя ├───книги ├───абонементы └───сотрудник
В данном примере БД - база данных; автор, инвентарный номер, книга - таблицы; библиография, биография, дата рождения, имя - поля.
Типы данных
строковые
- char - строка фиксированной длины
- пример char(20)
- максимум 20 символов
- при меньшем количестве переменная заполняется пробелами
- больше 20 заполнить нельзя
- пример char(20)
- varchar - строка переменной длины
- пример varchar(20)
- будет записано 10 символов
- в памяти будет хранится 10 символов и 1 говорящий о кол-ве используемых символов
- tiny - текст до 255 байт
- text - текст до 65 кб
числовые
- целые
- int
- tinyint
- smallint
- mediumint
- bigint
- дробные (указывается в скобках (всего, точность))
- decimal(3,2) => (xxx,yy) => -999,99 - 999,99
- float(a,b)
- double(a,b)
Практика
Установка MySQL
Согласно MySQL:
$ su - # apt-get install MySQL-server # service mysqld enable # service mysqld start
Shell СУБД
Запуск
$ mysql mysql>
Создание/удаление
- Вывести список БД:
show databases;
- Создать БД:
create database name; create database if not exists name;
- Удалить БД:
drop database name; drop database if exists name;
Работа с сущностями
- подключиться к базе данных:
use name;
- вывести список сущностей (таблиц) (из-под подключенной БД):
show tables;
- создать сущность (таблицу) (из-под подключенной БД):
create table name(запись тип);
Следующие команды создают БД, создают таблицу, выводят список таблиц на экран, выводят описание созданной таблицы и удаляют таблицу.
>show databases; >create database test; >use test; >create table test2 (name varchar(10), id int, description char(40)); >show tables; >describe test2; >drop table test2;