Способы управления базами данных
Базы данных (БД), как правило, поставляются разработчиками в комплекте с программным обеспечением, позволяющим разворачивать их на сервере, настраивать права доступа, создавать таблицы и прочие объекты, вносить и изменять данные. В большинстве случаев в качестве управляющих инструментов используются консольные утилиты, позволяющие устанавливать соединение с сервером СУБД и отправлять ему SQL-запросы или другие команды, формирующие БД. Примеры консольных утилит для популярных баз данных:
psql
дляPostgreSQL
;mysql
дляMySQL
,MariaDB
и других родственных продуктов;sqlite
дляSQLite
;redis-cli
дляRedis
.
Работа с консольными утилитами требует определенной подготовки, глубокого знания языка SQL, который, к тому же, различается в своих диалектах для разных СУБД. Системные администраторы, программисты и простые пользователи зачастую предпочитают для управления базами данных использовать более наглядные и интуитивно понятные инструменты. Многие из них представляют собой веб-приложения, работающие через браузер. Одним из наиболее популярных является распространяемый под свободной лицензией продукт PhpMyAdmin
. Он используется для управления одной из самых популярных разновидностей БД - MySQL
. Рассмотрим на его примере основные приемы управления СУБД.
Установка и настройка PhpMyAdmin
PhpMyAdmin представляет собой набор php-скриптов, разработанный специально для управления БД MySQL, являющихся наиболее популярным форматом и участвующим в связке LAMP (Linux, Apache, MySQL, PHP). PhpMyAdmin чаще всего уже предустановлен в панелях управления большинства популярных хостингов. В пакет Денвер, используемый для домашней разработки сайтов, этот скрипт тоже входит по умолчанию.
Для самостоятельной установки следует создать в корневой папке проекта (htdocs и т.п.) отдельный каталог, например, myadmin
, затем скопировать туда полученный с сайта проекта PhpMyAdmin
архив (для его поиска в Интернете можно использовать Google) и распаковать его. Затем нужно предварительно настроить скрипт, например, переименовав файл config.sample.inc.php
в config.inc.php
. В конфигурацию нужно внести логин и пароль для входа:
$cfg["Servers"][$i]["auth_type"] = "config";
$cfg["Servers"][$i]["user"] = "your_login";
$cfg["Servers"][$i]["password"] = "your_password";';
После этого можно ввести в адресную строку браузера адрес http://localhost/myadmin/index.php
(или подобный, с учетом местонахождения сервера). Появятся поля для ввода учетных данных для входа в программу.
Рисунок 1. Окно входа в PhpMyAdmin. Автор24 — интернет-биржа студенческих работ
Управление базой данный
Экспорт, импорт резервных копий и создание новых БД
PhpMyAdmin позволяет создавать и распаковывать резервные копии БД. Для экспорта в левой колонке PhpMyAdmin следует выбрать сохраняемую базу данных, затем перейти на вкладку «Экспорт»:
Рисунок 2. Экспорт базы данных. Автор24 — интернет-биржа студенческих работ
Браузер предложит сохранить файл с резервной копией в подходящее место на жёстком диске локального компьютера.
Следует повторять процедуру резервного копирования после внесения существенного количества изменений в БД или даже настроить это действие для выполнения по расписанию.
Для восстановления БД из резервной копии следует перейти на вкладку «Импорт», с помощью меню «Выберите файл» указать местоположение актуальной резервной копии на диске и подтвердить выбор.
Создание новой базы данных
Для создания новой БД на начальной странице нужно ввести ее название в поле «Создать новую БД» и нажать соответствующую кнопку. Следует также добавить пользователя для работы с ней. Для этого перейти по ссылке «Привилегии», затем по ссылке «Добавить нового пользователя», где заполнить поля:
- имя пользователя;
- хост (адрес сервера, например, localhost);
- пароль с подтверждением.
Рисунок 3. Добавление пользователя. Автор24 — интернет-биржа студенческих работ
Следует также выбрать возможности, предоставляемые этому пользователю.
Рисунок 4. Установка полномочий пользователя. Автор24 — интернет-биржа студенческих работ
Необходимо наделять пользователей доступом только к тем таблицам, которые имеют отношение к его служебным обязанностям. Кроме того, на некоторые доступные ему таблицы следует устанавливать режим "только для чтения", разрешая просмотр, но запрещая внесение изменений.
Внесение изменений в данные
PhpMyAdmin и подобные инструменты предоставляют средства и для работы с таблицами (создание, изменение, удаление, наполнение данными), но для этой цели целесообразнее использовать язык SQL, который предоставляет больше возможностей для реализации спроектированных таблиц. Например, создание таблицы для хранения информации о товарах может выглядеть так:
CREATE TABLE IF NOT EXISTS `products` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`Name` text NOT NULL,
`Price` int(11) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
Этот запрос довольно сложен, но содержит в себе необходимые для стабильной работы БД ограничения и условия.
Для внесения изменений в таблицы обычно разрабатываются специализированные пользовательские интерфейсы в виде десктопных или веб-приложений. Важно помнить о разделении полномочий между пользователями при заполнении и редактировании записей таблиц.
Данные в БД можно формировать и с помощью SQL из консольных утилит, например:
INSERT INTO `products` (`ID`, `Name`, `Price`) VALUES
(1, 'Хлеб', 35),
(2, 'Йогурт', 27),
(3, 'Колбаса "Докторская"', 50);