Реферат: MYSQL server
Реферат: MYSQL server
одержание
Введение……………………………………………………………………………4
1. Общее описание, запуск и настройка
прав доступа к базам данных MySQL……………………….……..…..5
2. Команды пакета MySQL……………………………………………….…..10
2.1. Основные команды………………...…………………………………..11
2.2. Дополнительные команды…………………...………………….…….23
3. Настройка mysqld (серверная часть пакета MySQL)…………………….27
4. Возможность языка Perl для работы с MySQL сервером…………...…..29
Заключение……………………………………………..………………..……….31
Список литературы………………………………………….…………………..33
Введение.
На сегодняшний день СУБД MySQL является одной из самых известных, надежных и быстрых из всего семейства существующих СУБД. Почему именно она? Одной из причин являются правила ее распространения — за нее не надо платить деньги и распространяется она вместе со своими исходными текстами, другая причина – это то, что MySQL относительно быстрая СУБД. PostgreSql, например, также распространяется под лицензией *GNU GPL, но она не получила столь широкого распространения. Одна из причин — это заметная медлительность. Итак, две главные причины популярности MySQL: цена и производительность.
MySQL написан под десятки видов операционных систем. Это и FreeBSD, OpenBSD, MacOS, OS/2, SunOS, Win9x/00/NT и Linux. Сегодня MySQL особенно распространена на платформах Linux и Windows. Причем на последней встречается гораздо реже.
Принцип работы СУБД MySQL аналогичен принципу работы любой СУБД, использующей SQL (Structured Query Language, язык структурированных запросов) в качестве командного языка для создания/удаления баз данных, таблиц, для пополнения таблиц данными, для осуществления выборки данных.
Целью данной работы является описание конфигурирования, администрирования и программирования СУБД MySQL и создание программы иллюстрирующей возможности MySQL.
1. Общее описание, запуск и настройка прав доступа к
базам данных MуSQL.
MySQL, как и любая другая СУБД представляет собой программу-сервер, которая находится в памяти компьютера и обслуживает TCP порт. В случае с MySQL, номером порта будет являться число 3306. А клиентская программа, будь то CGI-приложение на Perl либо программный продукт на C, соединяется с СУБД по этому порту и посылает ему строчки на SQL. Тот в свою очередь их интерпретирует, выполняя необходимые действия, и отсылает результаты запроса обратно клиенту. Таким способом происходит общение сервера баз данных с клиентскими программами.
Для запуска MуSQL-сервера необходимо выполнить файл mysqld.exe. Сервер запускается как безоконный фоновый процесс. При этом он остается в памяти и обрабатывает запросы от клиентских приложений.
Для остановки сервера следует выполнить команду:
mysqladmin -u root shutdown.
Если сервер не был остановлен корректно, то при последующем запуске в файле mysql.err будет добавлена запись о некорректном завершении. Корректная остановка сервера необходима для сохранения всех данных, которые находятся в кэшах MySQL.
MуSQL имеет развитую систему доступа к базам данных. Пользователю базы данных может быть предоставлен доступ ко всей базе данных, отдельным таблицам и отдельным столбцам таблиц. Имеется разграничение на действия, которые может производить пользователь с записями. Для организации такой сложной (на первый взгляд) структуры доступа используется несколько таблиц в специальной базе данных. На основании значений этих таблиц выстраивается политика предоставления доступа.
База данных, которую сервер MуSQL использует для хранения внутренней информации о пользователях, по умолчанию имеет имя mуsql. В этой базе данных определены таблицы для хранения информации пользовательских учетных записей. Содержание БД mysql в таблице 1.1.
Таблица 1.1. Список таблиц прав доступа
Порядок проверки | Название таблицы | Описание |
1 | user | Список всех пользователей сервера MySQL с правами доступа ко всей базе данных в целом |
2 | db | Список баз данных с сопоставленными им пользователями и их привилегиями на выполнение операции |
3 | host | Список компьютеров, с которых возможен доступ к сопоставленной компьютеру базе данных, и привилегии на выполнение операций, которые могут проводиться через соединение с этого компьютера |
4 | tables_priv | Список таблиц баз данных, к которым возможен доступ пользователя |
5 | columns_priv | Список столбцов базы данных, к которым возможен доступ пользователя |
Проверка прав доступа производится в порядке, указанном в таблице 1.1. Прежде всего проверяется, существует ли пользователь и какие возможности он имеет при управлении базой данных (таблица1.2.).
Таблица 1.2. Поля таблицы user
Название поля |
Тип |
Значение по умолчанию |
Описание |
1 | 2 | 3 | 4 |
Host | Char(60) | Компьютер пользователя, с которого разрешено подключение | |
User | Char(16) | Имя пользователя | |
Password | Char(16) | Пароль пользователя | |
Select_priv | Enum(‘N’, ‘Y’) | N | Привилегии на выборку данных оператором SELECT |
Insert_priv | Enum(‘N’, ‘Y’) | N | Привилегии на вставку данных оператором INSERT |
Update_priv | Enum(‘N’, ‘Y’) | N | Привилегии на изменение данных оператором UPDATE |
Delete_priv | Enum(‘N’, ‘Y’) | N | Привилегии на удаление данных оператором DELETE |
Reload_priv | Enum(‘N’, ‘Y’) | N | Привилегии на перезапуск сервера MySQL, а также сброс данных из памяти на диск |
1 | 2 | 3 | 4 |
Shutdown_priv | Enum(‘N’, ‘Y’) | N | Привилегии на отключение сервера MySQL |
Process_priv | Enum(‘N’, ‘Y’) | N | Привилегии на просмотр состояния текущих процессов сервера |
File_priv | Enum(‘N’, ‘Y’) | N | Привилегии, необходимые для работы с файловой системой, например оператором LOAD DATA INFILE |
Grant_priv | Enum(‘N’, ‘Y’) | N | Привилегии, позволяющие пользователю устанавливать привилегии другим пользователям |
References_priv | Enum(‘N’, ‘Y’) | N | Привилегии, позволяющие ссылаться на объект |
Index_priv | Enum(‘N’, ‘Y’) | N | Привилегии, необходимые для индексирования данных |
Alter_priv | Enum(‘N’, ‘Y’) | N | Привилегии, позволяющие обновлять данные |
Поля с типом Enum ( ‘N’, ‘Y’ ) считаются разрешенными, если установлено значение Y, и неразрешенными, если установлено значение N.