MySQL start: различия между версиями

Материал из ALT Linux Wiki
(Новая страница: «{{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}}}}

Версия от 14:49, 17 октября 2022

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.
Примечание: Обратите внимение, что это не официальная документация, а попытка начинающего админа объяснить материал начинающим админам.

Теория

Виды баз данных

  • Реляционные - (SQL) — база, где данные хранятся в формате таблиц, они строго структурированы и связаны друг с другом.

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

  • Нереляционные (NoSQL) — хранит данные без четких связей друг с другом и четкой структуры.

Могут/ не могут иметь отношения, не имеют четкой структуры. Меняются в процессе.

Структура

БД
└─СУБД
  └─пользователь

Между базой данных и пользователем используется СУБД - система управления базами данных - ПО обеспечивающее взаимодействие пользователя и БД.

Реляционная БД

Состоит из:

  • сущность (таблица) - тип объектов, хранящихся в БД
    • поле - часть таблицы, за которой закреплен определенный тип данных. (содержит название и описание)
      • запись - строка таблицы (поле) БД, содержащая набор значений и свойств размещенный в полях.
Примечание: В поле необходимо всегда указывать тип записи. При этом нельзя указывать одинаковые записи - т.к. это идентификатор.
БД
├───таблица
│   ├───поле
│   │   └запись
│   ├───поле
│   │   └запись
│   └───поле
│   │   └запись
├───таблица
│   ├───поле
│   │   └запись
│   ├───поле
│   │   └запись
│   └───поле
│       └запись
└───таблица
    ├───поле
    │   └запись
    ├───поле
    │   └запись
    └───поле
        └запись
БД
├───автор
│   ├───библиография
│   ├───биография
│   ├───дата рождения
│   └───имя
├───книги
├───абонементы
└───сотрудник

В данном примере БД - база данных; автор, инвентарный номер, книга - таблицы; библиография, биография, дата рождения, имя - поля.

Типы данных

строковые

  • 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(запись тип);

Следующие команды создают БД, создают таблицу, выводят список таблиц на экран, выводят описание созданной таблицы и удаляют таблицу.

>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;