Системы управления базами данных
Принцип выбора компонентов аппаратного сервера, его сборки и устранения неполадок. Этапы создания Raid-массивов. Установка и настройка программного сервера, а также его администрирование. Правила настройки конфигурации системы управления базами данных.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | отчет по практике |
Язык | русский |
Дата добавления | 17.05.2019 |
Размер файла | 62,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Введение
аппаратный сервер программный управление
Профессиональная практика является неотъемлемой частью учебного процесса и имеет цель закрепить и углубить знания, полученные в процессе теоретической деятельности, приобщить студента к общественно-полезному труду и связать полученные теоретические знания с реальными условиями производства.
Задачей профессиональной практики является подготовка к решению задач по выполнению заданий. Приобрести практические навыки в сфере администрирования базами данных, системы управления базами данных.
В веке современных технологий, автоматизация данных просто необходима, так как это облегчает работу, а использование компьютера при правильной разработке программы исключает ошибки, неизбежные при ручной работе, делая расчёт гораздо более точным, а время на решение затрачивается значительно меньше и работать с автоматизированной системой намного приятней и удобнее.
Для использования столь огромных объемов хранимой информации, помимо развития системных устройств, средств передачи данных, памяти необходимы средства обеспечения диалога человек - электронно-вычислительная машина (ЭВМ), которые позволяют пользователю вводить запросы, читать файлы, модифицировать хранимые данные, добавлять новые данные или принимать решения на основании хранимых данных. Для обеспечения этих функций созданы специализированные средства - системы управления базами данных (СУБД). Современные СУБД - многопользовательские системы управления базой данных, которые специализируется на управлении массивом информации одним или множеством одновременно работающих пользователей.
1. Участие в выборе компонентов аппаратного сервера
Аппаратный сервер - устройство, предназначенное для обслуживания сетевых запросов, на котором выполняется соответствующий его назначению программный сервер.
Аппаратно-компьютерные сети состоят не только из цифровых линий передачи информации и средств коммутации (мостов, концентраторов, коммутаторов, маршрутизаторов, шлюзов), но и самих компьютеров, производящих основную переработку информации.
Серверное оборудование зачастую предназначено для обеспечения работы сервисов в режиме 24/7, поэтому часто комплектуется дублирующими элементами, позволяющими обеспечить «пять девяток» (99,999%; время недоступности сервера или простой системы составляет менее 6 минут в год). Для этого конструкторами при создании серверов создаются специальные решения, отличные от создания обычных компьютеров: память обеспечивает повышенную устойчивость к сбоям. Например для i386-совместимых серверов, модули оперативной памяти и кэша имеет усиленную технологию коррекции ошибок (англ. Error Checking and Correction, ECC). На некоторых других платформах, например SPARC (Sun Microsystems), коррекцию ошибок имеет вся память. Для собственных мэйнфреймов IBM разработала специальную технологию Chipkill.
Повышение надёжности сервера достигается резервированием, в том числе с горячими подключением и заменой (англ. Hot-swap) критически важных компонентов:
- при необходимости вводится дублирование процессоров (например, это важно для непрерывности выполнения сервером задачи долговременного расчёта - в случае отказа одного процессора вычисления не обрываются, а продолжаются, пусть и на меньшей скорости)
- блоков питания, жёстких дисков в составе массива RAID и самих контроллеров дисков, групп вентиляторов, обеспечивающих охлаждение компонентов сервера.
В функции аппаратного мониторинга вводят дополнительные каналы для контроля большего количества параметров сервера: датчики температуры контролируют температурные режимы всех процессоров, модулей памяти, температуру в отсеках с установленными жёсткими дисками; электронные счётчики импульсов встроенные в вентиляторы выполняют функции тахометров и позволяют, в зависимости от температуры, регулировать скорость их вращения; постоянный контроль напряжения питания компонентов сервера позволяет сигнализировать об эффективности работы блоков питания; сторожевой таймер не позволяет остаться незамеченным зависанию системы, автоматически производя принудительную перезагрузку сервера.
Серверы (и другое оборудование), которые требуется устанавливать на некоторое стандартное шасси (например, в 19-дюймовые стойки и шкафы), приводятся к стандартным размерам и снабжаются необходимыми крепёжными элементами.
Серверы, не требующие высокой производительности и большого количества внешних устройств, зачастую уменьшают в размерах. Часто это уменьшение сопровождается уменьшением ресурсов.
Конструктивно аппаратные серверы могут исполняться в настольном, напольном и стоечном вариантах. Последний вариант обеспечивает наибольшую плотность размещения вычислительных мощностей на единицу площади, а также максимальную масштабируемость.
2. Участие в процессе сборки аппаратного сервера
Аппаратный сервер - аппаратное обеспечение, выделенное или специализированное для выполнения на нём сетевого сервисного программного обеспечения (в том числе серверов тех или иных задач). Сервером может служить и обычный компьютер, выделенный из группы персональных компьютеров (или рабочих станций) для выполнения какой-либо сервисной задачи без непосредственного участия человека.
Следует отличать термин «сервер» сокращенно обозначающий различные сущности:
- программный сервер - компьютерная программа, комплекс программных средств для работы в клиент-серверной технологии, которая может быть и не сетевой, то есть выполняться внутри одного компьютера,
- аппаратный сервер - устройство, предназначенное для обслуживания сетевых запросов, на котором выполняется соответствующий его назначению программный сервер.
Рабочая станция - компьютер, предназначенный для работы на нем клиентских программ. Должен быть оснащен сетевым интерфейсом: сетевой картой или модемом. Рабочая станция всегда предназначена для обмена информацией с внешней по отношению к компьютерной сети средой (вводимой человеком, роботом или снимаемой с датчиков) - приема и выдачи информации во вне (с клавиатуры, на дисплее и пр.), а также осуществления действий с физическими объектами (банкомат, платежный терминал, другой робот).
Комплектующие
Каждый сервер состоит из следующих комплектующих:
· корпус (идет сразу с блоком питания);
· материнская плата;
· оперативная память;
· процессоры;
· накопители;
· дисковые контроллеры (если есть в заказе);
· видеокарты (если есть в заказе).
Ответственный за сборку инженер готовит все комплектующие и фиксирует их в системе учета, используя серийные номера в качестве идентификаторов. Теперь расскажем обо всех этапах, которые проходит каждый сервер произвольной конфигурации.
Для сбора аппаратного сервера необходимо:
- Подготовка корпуса;
- Установка материнской платы. Непосредственно перед установкой материнской платы инженеры выполняют некоторые подготовительные действия:
· надевают тонкие перчатки;
· надевают заземляющий браслет.
После того как материнскую плату поставили на место, закручиваются крепежные болты. Теперь к материнской плате подключаются кабели питания, а также вентиляторы системы охлаждения.
Затем выполняется подключение лицевой панели и бэкплейна с помощью соответствующих кабелей. Теперь можно приступать к установке процессоров и прочих элементов;
- Установка процессоров;
- Установка оперативной памяти;
- Установка накопителей. Тут все просто. Дисковые накопители закрепляются в штатных салазках, после чего вставляются в сервер. Если были заказаны дисковые контроллеры или дополнительные сетевые карты, то они устанавливаются в соответствующие PCI-E слоты и закрепляются винтами. После того, как все установлено на свои места, инженер отдела сборки еще раз проверяет соответствие всех комплектующих заказу и отправляет сервер на стенд для прошивки и тестирования;
- Укладка кабелей. Тут тоже есть свои нюансы, главным из которых является ограниченность пространства. Большинство серверов спроектированы таким образом, чтобы занимать минимум места в стойке. Высота одного монтажного юнита составляет 43,7 мм. Из-за этого места для кабелей после установки материнской платы и прочей периферии остается достаточно мало;
- Прошивка комплектующих. Нужная процедура - процедура необходима для того, чтобы все компоненты сервера работали без ошибок, а также, чтобы повысить уровень безопасности;
- Перепрошивка ipmi. Модуль удаленного управления (IPMI / iLO / iDrac) - один из важнейших элементов сервера. Он представляет из себя независимый микрокомпьютер, работающий всегда, когда на материнской плате присутствует рабочее напряжение;
- Перепрошивка bios. Базовая система ввода-вывода помимо уже перечисленной причины безопасности требует обновления еще для одного важного момента. В прошивке BIOS имеются микрокоды процессоров, поддерживаемых материнской платой, а также микрокоды сетевых интерфейсов и чипсетов;
- Перепрошивка дисковых контроллеров. Ошибки в программном обеспечении таких важных устройств, как дисковые контроллеры могут не просто доставить неприятности, но и стать источником очень крупных проблем. В большинстве случаев процесс очень простой, перепрошивка происходит с помощью родной утилиты, встроенной непосредственно в сам контроллер;
- Перепрошивка сетевых карт. Помимо устранения ошибок, программное обеспечение сетевых карт напрямую может влиять на производительность;
- Тестирование. Покончив с обновлением программного обеспечения, инженер сборки приступает к нагрузочному тестированию собранного сервера. Такое тестирование позволяет выявить большинство проблем еще до того, как сервер будет сдан клиенту.
3. Участие в устранении неполадок аппаратного сервера
Как могут выглядеть типичные сбои сервера:
· сервер вообще не запускается
· проблема с загрузкой сервера - сервер запускается, но показывает «синий экран смерти» (BSOD)
· сервер запускается, на нем загружается операционная система, но некоторые сервисы не работают (например, сайт)
· произошел сбой связи с сервером по сети
· сервер сильно нагревается при работе
· постоянные перезагрузки без видимых причин
· заметно падает скорость выполнения операций.
Как устранить и предотвратить проблемы с сервером
Предотвратить поломки сервера значительно проще и дешевле, чем устранять, когда они уже проявились.
Вот несколько требований, выполняя которые вы сможете снизить вероятность отказа вашего сервера:
· Если у вас собственная серверная, организуйте в ней качественное охлаждение и старайтесь держать ее всегда закрытой, чтобы туда не проникала лишняя пыль. Обязательно используйте источники бесперебойного питания.
· Регулярно проводите профилактическое обслуживание серверов - чистку от пыли, замену термопасты и т.д.
· Используйте специализированное ПО для мониторинга, чтобы отслеживать состояние сервера и вовремя заметить проблемы работы сервера.
· У вас обязательно должно быть настроено резервное копирование и восстановление данных сервера, чтобы предотвратить потерю важной информации в случае, если сервер все же «упадет». Регулярно делайте бекапы, а если есть возможность - используйте отказоустойчивый кластер, тогда при сбоях в работе сервера его работа будет распределена между остальными серверами в кластере.
Если несмотря на все предпринятые меры у вас все же возникли проблемы с сервером, что делать?
В некоторых случаях можно попробовать самостоятельно провести диагностику, чтобы понять, что произошло и как исправить проблемы с сервером:
· Просмотреть логи событий сервера - возможно, по ним удастся понять причину неполадок.
· Физически осмотреть комплектующие сервера, иногда их поломки бывают заметны визуально.
· Если это возможно, запустить тест памяти.
· Запустить проверку жестких дисков на наличие ошибок. · Проверить сервер антивирусом. Это может помочь в устранении неисправностей файлового сервера, часто такие неисправности являются результатом работы вредоносного ПО.
· Проверить загрузку процессора, состояние памяти, использование дискового пространства с помощью специализированного ПО.
4. Участие в создании Raid - массивов
Создается путем подключения через специальный RAID контроллер. На данный момент есть 3 вида контроллеров.
Виды RAID массивов:
RAID 0 или «Чередование» - массив из двух или более дисков для повышения общей производительности. Объем рейда будет общий (HDD 1 + HDD 2 = Общий объем), скорость считывания\записи будет выше (за счет разбиения записи на 2 устройства), но страдает надежность сохранности информации. Если одно из устройств выйдет из строя, то вся информация массива будет потеряна.
RAID 1 или «Зеркало» - несколько дисков копирующих друг друга для повышения надежности. Скорость записи остаётся на прежнем уровне, скорость считывания увеличивается, многократно повышается надежность (даже если одно устройство выйдет из строя, второе будет работать), но стоимость 1 Гигабайта информации увеличивается в 2 раза (если делать массив из двух hdd).
RAID 2 - массив, построенный на работе дисков для хранения информации и дисков коррекции ошибок. Расчет количества HDD для хранения информации выполняется по формуле «2^n-n-1», где n - количество HDD коррекции. Данный тип используется при большом количестве HDD, минимальное приемлемое число - 7, где 4 для хранения информации, а 3 для хранения ошибок. Плюсом этого вида будет повышенная производительность, по сравнению с одним диском.
RAID 3 - состоит из «n-1» дисков, где n - диск хранения блоков четности, остальные устройства для хранения информации. Информацию делится на куски меньше объема сектора (разбиваются на байты), хорошо подходит для работы с большими файлами, скорость чтения файлов малого объема очень
мала. Характерен высокой производительностью, но малой надежностью и узкой специализацией.
RAID 4 - похож на 3й тип, но разделение происходит на блоки, а не байты. Этим решением получилось исправить малую скорость чтения файлов малого объема, но скорость записи осталось низкой.
RAID 5 и 6 - вместо отдельного диска для корреляции ошибок, как в прошлых вариантах, используются блоки, равномерно распределённые по всем устройствам. В этом случае повышается скорость чтения\записи информации за счет распараллеливания записи. Минусом данного типа является долговременное восстановление информации в случае выхода из строя одного из дисков. Во время восстановления идёт очень высокая нагрузка на другие устройства, что понижает надежность и повышает выход другого устройства из строя и потерю всех данных массива. Тип 6 повышает общую надежность, но понижает производительность.
5. Обзор и анализ существующих программных серверов баз данных
Стоит обратить внимание на то, что разрабатываемая ИС будет содержать достаточно много текстовых данных. Соответственно оптимальным вариантом для хранения данных будет использование базы данных. Для её построения необходимо произвести выбор СУБД. СУБД - это система управления базами данных, совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных. Основные функции СУБД:
1) управление данными во внешней памяти (на дисках);
2) управление данными в оперативной памяти с использованием дискового кэша;
3) журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
4) поддержка языков БД (язык определения данных, язык манипулирования данными).
Базы данных стремительно, а в какой-то степени и сумбурно развивающихся информационных технологиях - это сравнительно консервативное направление, где системы управления базами данных и сами базы данных представляют собой «долговременные сооружения и хранилища».
Широкое использование баз данных различными категориями пользователей привело, с одной стороны, к созданию интерфейсов, требующих минимум времени на освоение средств управления системой, а с другой - к построению мощных, гибких СУБД, имеющих, в том числе развитые средства защиты данных от случайного или преднамеренного уничтожения. Появились и средства автоматизации разработки, позволяющие
создавать базу данных любому пользователю, даже не владеющему основами теории БД.
Основные идеи современной информационных технологий основывается на концепции, согласно которой данные должны быть собраны в базы данных с целью отображения адекватного измерения реального мира и удовлетворения информационных пользовательских потребностей. Базы данных создаются и функционируют под управлением специальных программных средств, которые и называются системами управления базами данных.
6. Установка программного сервера
Существует несколько версий WINDOWS SERVER - 2003, 2008 и 2012 года. Исходя из того, что последние версии всегда в большем приоритете.
1. Зайдите в BIOS компьютера и установите загрузку с CD-ROM.
2. Вставьте диск с образом системы, запустите свой ПК, чтобы он начал загрузку с внешнего носителя.
3. После загрузки появится окно, где нужно указать язык, раскладку клавиатуры, и часовой пояс - сделайте это, следуйте далее.
4. Нажмите «Установить».
5. Перед вами появится запрос на выбор системы - есть несколько версий серверного обеспечения. Выберите необходимую версию, жмите «Далее».
6. Примите условия лицензии.
7. Выберите тип установки - если вы ставите Server с нуля, следует выбирать только вариант «Выборочная».
8. Укажите накопитель, куда будет поставлена система, при необходимости разбейте диск на несколько разделов. При делении вам нужно согласиться на создание разделов для системных файлов.
9. Кстати, обычно выбирается раздел «Основной» жёсткого диска.
10. Нажимаем «Далее», и ждём, пока обеспечение загрузится на ПК.
11. После перезагрузки вам предстоит создать пароль для входа в учётную запись - выбирайте надёжную и сложную комбинацию, при желании измените имя пользователя.
12. Далее, перед вами появится стартовое окно системы, где будет написано, что нужно нажать Ctrl+Alt+Del - сделайте это, и введите созданный только что пароль.
13. На этом установка Windows Server завершена - как видите, в процессе нет ничего сложного, почти все действия выполняются автоматически под вашим руководством.
7. Настройка серверного программного обеспечения
1. Для начала необходимо загрузить дистрибутив серверного программного обеспечения.
2. Далее следует запустить скачанный файл. Произведить его установку, следуя инструкциям установочной программы.
3. Выбрать тип сервера базы данных - MySQL. Если на компьютере уже есть MySQL, нужно нажать на кнопку «Продолжить без удаления», чтобы не потерять важные данные. Если на компьютере нет MySQL, нажать «Далее».
4. Выбрать соответствующий вариант установки:
стандартная - если необходимо создать сервер на компьютере; удаленный клиент - если вы устанавливаете клиентское рабочее место, на котором планируется подключаться к стороннему серверу.
5. При выборе стандартной установки следует убедиться, что порт TCP 3055 открыт. Поставить «галочку» в графе «Добавить соответствующие правила в Firewall».
6. Указать данные для подключения к базе данных:
сервер - localhost;
имя базы - db;
пользователь - root;
пароль - masterkey;
порт - 3306.
Если на компьютере уже есть база данных, нажать на кнопку «Продолжить без обновления», чтобы не потерять важные данные. В другом случае, нажать «Далее».
Создание объектов в серверной программе
1. Необходимо запустить программу мониторинга мобильных объектов PCN8.
2. В главном меню программы выбрать «Объекты»> «Таблица».
3. Кликнув правой кнопкой мыши по группе «Объекты», добавить новую группу.
4. Выбрав созданную группу, переименовать её и во вкладке «Машины» нажать на кнопку «+»
5. Ввести уникальный код объекта. Данный код должен соответствовать коду «Вояджера», который будет назначен в программе настройки, и нажать кнопку «ОК».
6. Теперь, когда объект создан, в первую очередь необходимо указать для него пароль. Для этого необходимо в таблице во вкладке «Машины» выбрать созданный объект, переместить ползунок вправо до тех пор, пока не будет видна графа «Пароль» и в соответствующей ячейке ввести пароль. Пароль должен состоять из восьми цифр и / или латинских букв без нижних подчеркиваний, пробелов и других специальных символов. Следует запомнить или записать данный пароль, т.к. он потребуется при дальнейшей настройке прибора.
7.изменить название объекта, открыть его карточку, нажав на кнопку «Подробнее» и указать регистрационные данные (по желанию, для удобства дальнейшей идентификации объекта), после чего нажать на кнопку «Сохранить и закрыть»
8. Администрирование программного сервера
Администрирование серверов - комплекс работ, включающий обслуживание операционной системы (ОС) и общесистемного программного обеспечения (ПО), выполняемых с целью обеспечения стабильной и безопасной работы оборудования и выполнения текущих задач по управлению ОС, общесистемным ПО и пользователями.
Сервер представляет собой специализированное аппаратное устройство, которое предназначается для выполнения конкретных задач, например, программного обеспечения пользователей. Он может располагаться на отдельном компьютерном устройстве, или же сейчас стали использовать особые виртуальные сервера. Но каждый виртуальный сервер действует и выполняет те же функции, как и физическое устройство.
Различают следующие типы серверов назначению:
· web-серверы;
· специализированные вычислительные сервера;
· почтовый;
· прокси-сервер;
· сервер базы данных;
· сервер связи;
· файловый, другие.
Для того чтобы сервер функционировал без перебоев и имел высокую продуктивность, а также производительность крайне важным моментом является администрирование серверов, или как его еще называют управление, представляет собой совокупность мероприятий по обслуживанию ОС и общесистемного программного обеспечения.
Обращаем ваше внимание, что в услугу администрирование сервера, как правило, входит следующее:
· настройка сетевой подсистемы;
· отслеживание атак и блокировок IP-адреса;
· создание удаленных учетных записей;
· обновление ПО;
· отслеживание используемого дискового пространства, другое
9. Установка СУБД
1. Вставить компакт-диск с фирменным программным обеспечением в компьютер. В папке \MySQL\MySQL_5_021, найти и запустить файл setup.exe.
2. После запуска файла появится окно установки: Нажать кнопку «Next», после чего появится окно, где требуется выбрать тип установки: обычная (Typical), полная (Complete), особая (Custom), выбрать установку «Custom», после чего перейти к следующему шагу, нажав кнопку «Next». В появившемся окне для начала установки нажать «Install». Начнется установка СУБД MySQL на компьютер.
3. По завершению установки будет предложено зарегистрироваться как пользователю продукции «». Появится окно «Регистрация продукта», выбрать «Skip Sign-Up» (пропустить регистрацию) и перейти к следующему шагу, нажав на кнопку «Next». Появится сообщение о завершении установки СУБД MySQL. Нажать на кнопку «Finish», после чего начинается следующий этап: настройка СУБД MySQL. Необходимо будет указать рабочие параметры сервера СУБД.
4. Нажать «Next», для перехода к следующему окну.
В появившемся окне выбрать «Detailed Configuration» (детальная настройка) и нажать «Next». В следующем окне «Тип работы» выбираете «Server Machine» (сервер) и нажать кнопку «Next». В следующем окне «Тип базы данных» выбрать «Multifunctional Database» (многофункциональная база данных) и нажать «Next». Появится окно, в котором предлагается выбрать место расположения файлов базы данных.
5. Появится окно «Количество подключений». Выбираете пункт «Manual Setting» (указать количество подключений вручную). В поле «Concurrent connections» (количество одновременных подключений) следует указать 1000. Такое количество пользователей сможет подключиться к БД одновременно.
6. Для перехода к следующей закладке нажать «Next». Появляется окно «Настроек сетевого подключения». Выставляем флаг в поле «Enable TCP/IP Networking» (возможность подключение к сети с использованием TCP/IP протокола), Port Number (номер порта) указывается 3306. Ставим «флаг» «Enable Strict Mode» - этот параметр указывает стандартные настройки сервера БД, далее нажимаем «Next».
7. Откроется окно, управляющее поддержкой иностранных языков и их кодировкой. Следует указать «Standard Character Set» (стандартный набор символов), затем нажать «Next».
8. В окне «Выбор параметров Windows» выставить флаги «Install As Windows Service» (установить как службу). В поле «Service Name» (название службы) оставляем «MySQL». Так же следует выделить флаги в полях: «Launch the MySQL Server automatically» (запустить службу автоматически), «Include Bin Directory in Windows PATH» (изменить системный параметр PATH). Нажать «Next». Откроется окно службы безопасности CУБД. Указать пароль администратора СУБД.
10. На этом настройка СУБД заканчивается, нажать в новом окне кнопку «Execute» для завершения процедуры. По окончанию всех действий на экран будет выведено окно. Нажмите «Finish» для окончания работы программы. Установка базы данных MySQL окончена.
10. Настройка конфигурации СУБД
У каждой базы данных есть набор параметров конфигурации, известных как параметры базы данных. Эти параметры влияют на объем ресурсов системы, выделенных для базы данных. Кроме того, некоторые параметры базы данных предоставляют только описательную информацию и их нельзя изменять, остальные параметры - это флаги, показывающие состояние базы данных. Для изменения этих параметров можно использовать Центр управления DB2 или команду UPDATE DATABASE CONFIG FOR имя_базы_данных USING ключевое_слово.
Следующие параметры конфигурации базы данных заметно влияют на производительность:
DBHEAP
Содержит информацию блока управления для таблиц, индексов, табличных пространствах, пулов буферов и пространства для буферов журналов (LOGBUFSZ), а также информацию о временной памяти, которой пользуются утилиты.
DFT_DEGREE
Задает значение по умолчанию особого реестра CURRENT DEGREE и опции привязки DEGREE
CHNGPGS_THRESH
Улучшает общую производительность приложений базы данных
LOCKLIST
Указывает объем памяти, выделенный списку блокировок
MAXLOCKS
Максимальный процент списка блокировок перед расширением
LOGBUFSZ
Задает часть кучи базы данных (заданную параметром dbheap), используемую как буфер для записей журнала перед их помещением на диск NUM_IOCLEANERS
Задает число асинхронных программ очистки страниц для базы данных.
NUM_IOSERVERS
Указывает количество серверов ввода-вывода базы данных. Серверы ввода-вывода выполняют упреждающую выборку ввода-вывода и асинхронный ввод-вывод с помощью утилит.
11. Язык запросов SQL
База данных - централизованное хранилище данных, обеспечивающее хранение, доступ, первичную обработку и поиск информации.
SQL (Structured Query Language) - представляет из себя структурирован-ный язык запросов (перевод с английского). Язык ориентирован на работу с реляционными (табличными) базами данных. Язык прост и, по сути, состоит из команд (интерпретируемый), посредством которых можно работать с большими массивами данных (базами данных), удаляя, добавляя, изменяя информацию в них и осуществляя удобный поиск.
Для работы с SQL кодом необходима система управления базами данных (СУБД), которая предоставляет функционал для работы с базами данных.
Язык SQL состоит из следующих составных частей:
1. язык манипулирования данными (Data Manipulation Language, DML);
2. язык определения данных (Data Definition Language, DDL);
3. язык управления данными (Data Control Language, DCL).
Язык манипулирования данными состоит из 4 главных команд:
1. выборка данных из БД - SELECT
2. вставка данных в таблицу БД - INSERT
3. обновление (изменение) данных в таблицах БД - UPDATE
4. удаление данных из БД - DELETE
Язык определения данных используется для создания и изменения струк-туры базы данных и ее составных частей - таблиц, индексов, представлений (виртуальных таблиц), а также триггеров и сохраненных процедур.
1. создание базы данных - CREATE DATABASE
2. создание таблицы - CREATE TABLE
3. изменение таблицы (структуры) - ALTER TABLE
4. удаление таблицы - DROP TABLE
Язык управления данными используется для управления правами доступа к данным и выполнением процедур в многопользовательской среде.
Для создания запроса SQL в phpMyAdmin необходимо:
1. Запустить ярлык start denwer.
2. В адресной строке браузера набрать http://localhost/tools/phpmyadmin.
3. В левой части окна выбрать интересующую базу данных или создать ее (если еще не создана). Создание базы данных в phpmyadmin рассмотрено ниже.
4. Если известна таблица, с которой будет работать запрос - в левой части окна выбрать эту таблицу.
5. Выбрать вкладку SQL и начать вводить запрос.
Для создания базы данных в phpMyAdmin необходимо:
1. Запустить ярлык start denwer.
2. В адресной строке браузера набрать http://localhost/tools/phpmyadmin.
3. в открывшемся веб-интерфейсе выбрать вкладку Базы данных;
4. в поле Создать базу данных ввести название базы;
5. щелкнуть по кнопке Создать
12. Участие в проектировании базы данных
Как и любой программный продукт, база данных обладает собственным жизненным циклом (ЖЦБД). Главной составляющей в жизненном цикле БД является создание единой базы данных и программ, необходимых для ее работы.
ЖЦБД включает в себя следующие основные этапы:
1. Планирование разработки базы данных;
2. Определение требований к системе;
3. Сбор и анализ требований пользователей:
4. Проектирование базы данных:
- концептуальное проектирование базы данных - создание концептуальной модели данных, то есть информационной модели. Такая модель создаётся без ориентации на какую-либо конкретную СУБД и модель данных. Чаще всего концептуальная модель базы данных включает в себя: описание информационных объектов, или понятий предметной области и связей между ними; описание ограничений целостности, т.е. требований к допустимым значениям данных и к связям между ними;
- логическое проектирование базы данных - создание логической модели данных; создание схемы базы данных на основе конкретной модели данных, например, реляционной модели данных. Для реляционной модели данных логическая модель - набор схем отношений, обычно с указанием первичных ключей, а также «связей» между отношениями, представляющих собой внешние ключи.
Преобразование концептуальной модели в логическую модель, как правило, осуществляется по формальным правилам. Этот этап может быть в значительной степени автоматизирован.
На этапе логического проектирования учитывается специфика конкретной модели данных, но может не учитываться специфика конкретной СУБД.
- физическое проектирование базы данных - создание схемы базы данных для конкретной СУБД, создание описания СУБД. Специфика конкретной СУБД может включать в себя ограничения на именование объектов базы данных, ограничения на поддерживаемые типы данных и т.п. Кроме того, специфика конкретной СУБД при физическом проектировании включает выбор решений, связанных с физической средой хранения данных (выбор методов управления дисковой памятью, разделение БД по файлам и устройствам, методов доступа к данным, разработка средств защиты данных), создание индексов и т.д.;
13. Конфигурация внешней памяти
Оптимальное конфигурирование подсистемы хранения базы данных - очень важная задача в большинстве систем. Плохо сконфигурированная подсистема хранения может стать причиной возникновения узких мест ввода-вывода, которые могут существенно снизить скорость работы самой быстрой машины. Исторически конфигурирование систем хранения базировалось на глубоком понимании приложений базы данных, что приводило к необоснованному усложнению процесса конфигурирования, к уменьшению его управляемости. Альтернативой этого подхода является модель конфигурации внешней памяти SAME (Stripe and Mirror Everything - расщепление и зеркалирование всех данных), в которой предлагается лучший и более управляемый подход. Эта модель была разработана экспертами корпорации Oracle, проделавших значительную исследовательскую работу по определению оптимальной конфигурации внешней памяти систем баз данных Oracle. Модель базируется на четырех простых предложениях:
1. Расщепляйте все файлы по всем дискам с шириной полосы расщепления, равной 1 Мб.
2. Зеркалируйте данные для обеспечения высокой доступности.
3. Распределяйте данные по секциям, а не по дискам.
4. Размещайте данные, к которым возможен частый доступ, на внешних половинах пространства дисков.
1. Расщепление всех файлов по всем дискам обеспечивает полное использование пропускной способности всех доступных дисководов для любых операций ввода-ввода. Это позволяет равномерно распределить нагрузку по всем дисководам и устранить «горячие участки». Параллельное выполнение операций и операций с интенсивным вводом-выводом не обязательно должно приводить к возникновению узких мест из-за дисковой конфигурации. Для реконфигурации дискового пространства могут потребоваться большие усилия, поэтому расщепление данных по всем дисководам представляет собой наиболее безопасный и оптимальный вариант.
Таблица 1. Время передачи данных для различных размеров полосы расщепления.
Размер полосы расщепления Время позиционирования головок Время передачи данных% времени передачи данных
16 K 10 мсек 1 мсек 10%
64 K 10 мсек 3 мсек 23%
256 K 10 мсек 12 мсек 55%
1 M 10 мсек 50 мсек 83%
2 M 10 мсек 100 мсек 91%
2. Зеркалирование данных на уровне подсистем хранения является лучшим способом предотвращения потери данных. В таких системах данные могут пропасть только в случае одновременного сбоя нескольких дисков, что, учитывая высокую надежность современных дисководов, мало вероятно. Кроме зеркалирования дисков следует также использовать средства мультиплексирования СУБД Oracle. Использование этих средств, однако, ограничено только журнальными и управляющими файлами. Хорошая практическая рекомендация: мультиплексируйте зеркалированные журнальные и управляющие файлы, поскольку мультиплексированные файлы менее подвержены физическому разрушению данных.
3. Иногда требуется разделять или секционировать весь набор данных. Например, АБД может захотеть разделить данные только для чтения и записываемые данные по разным томам. В таких случаях следует размещать секции по всем дискам, а потом объединять и расщеплять их для формирования отдельных логических томов. Логическое разделение файлов данных не компрометирует никаких достоинств методологии SAME.
4. Скорость передачи данных для различных частей поверхности дисков различна - для внешних секторов она выше чем для внутренних. Кроме того, во внешних частях дисков можно размещать больше данных. Поэтому файлы данных с более частым доступом следует размещать на внешних половинах пространства дисков. Журнальные файлы и архивные журнальные файлы, к которым возможен частый доступ при выполнении операций обновления, также следует размещать на внешних половинах пространства дисков. Подобная работа по распределению файлов может привести к дополнительной нагрузке на АБД, поэтому может быть принято простое решение - оставлять внутреннюю часть дисков пустой.
14. Выбор размера блоков данных
Соответствие размера блока базы данных и размера блока файловой системы является залогом наибольшей эффективности операций ввода-вывода. Если определить размер блока БД слишком маленьким, то операционная система считает больше блоков БД, чем необходимо и неизвестно, пригодятся ли дополнительно считанные данные или нет. Если нет, то эти дополнительные блоки прочитаны впустую. Блоки имеющие больший размер обычно лучше из-за механизма поведения индексов. Если каждый блок будет содержать оптимальное количество информации, то нам потребуется прочитать меньше индексных блоков и индексных уровней для того, чтобы найти и прочитать данные. Количество индексных уровней в двоичном дереве (B-tree) прямо влияет на эффективность извлечения данных. Если мы избегаем чтения одного уровня индекса, то мы экономим одну дополнительную операцию ввода-вывода на запрос записи.
15. Сопровождение пространства и объектов
Тема сопровождения объектов баз данных весьма обширна. В этом разделе рассматриваются такие аспекты, как физическое сопровождение системы (использование дискового пространства), аналитическое сопровождение (повышение быстродействия) и документирование объектов баз данных (упрощение сопровождения, повышение наглядности).
Основным средством физического и аналитического сопровождения объектов баз данных в является команда SQL VACUUM и ее аналог - сценарий vacuumdb. Оба средства выполняют две общие функции:
· удаление всех данных, оставшихся в результате отмены транзакций и других операций, оставляющих временные данные;
· анализ операций с базами данных, по результатам которого PostgreSQL конструирует более эффективные запросы.
Для баз данных, работающих в условиях реальной эксплуатации, команду VACUUM рекомендуется выполнять каждую ночь. Хотя команда может выполняться параллельно с обращениями к данным, это замедляет работу сервера. По этой причине сопровождение рекомендуется запланировать на время с минимальным количеством операций с базой данных.
Каждый раз, когда в базе данных создается или удаляется большое количество записей, базу данных следует анализировать командой VACUUM, которая автоматически информирует оптимизатор запросов PostgreSQL о серьезных изменениях в таблице. В результате PostgreSQL получает более достоверный профиль данных, хранящихся в базе, и располагает более качественной информацией для оптимального планирования запросов. Все это способствует быстрому и эффективному получению ответа от базы данных
16. Локально-управляемые табличные пространства
Табличное пространство - логическая единица дискового пространства. Оно может состоять из нескольких файлов данных и содержать множество сегментов данных. Свободное место в табличном пространстве разбито на экстенты, и каждый сегмент данных состоит из одного или более экстентов, где экстент представляет собой просто непрерывный участок пространства в одном файле данных. Обычно сегмент данных соответствует самодостаточному набору взаимосвязанных данных (такому как таблица или фрагмент (секция) индекса), имеющему определенный смысл для конечного пользователя.
Локально управляемое табличное пространство само отвечает за управление свободным местом в нем. В только что установленной системе каждый файл в табличном пространстве делится на чанки одинакового размера (за исключением первых 64 Кбайт файла, которые используются для хранения битовой карты, идентифицирующей прочие используемые чанки). Каждый бит в битовой карте соответствует чанку в файле - если бит установлен, чанк используется, а если бит сброшен, то чанк свободен.
Важнее всего, что при выделении места в локально урпавляемом табличном пространстве серверу Oracle не приходится просматривать таблицу в поисках строки, описывающей подходящий чанк; вместо этого достаточно просмотреть первых несколько блоков файла в поисках первого свободного бита, и установить его. Это намного более эффективный метод поиска и выделения свободного пространства, да еще и с приятным побочным эффектом, - сначала будет выделяться свободное место ближе к началу файла, а это помогает уменьшить размер файлов и ускорить резевное копирование с помощью rman.
Итак, что же в действительности дает использование локально управляемых табличных пространств?
· Решает одну специфическую проблему Oracle, поскольку все необходимые функции временного пространства достигаются использованием отдельного табличного пространства для каждого пользователя.
· Помогает избежать ряда ошибок администрирования.
· Существенно упрощает контроль использования пространства и управление им.
Надо ли использовать локально управляемые табличные пространства? Несомненно - все, что помогает избавиться от сложности и снижает вероятность ошибок, особенно при выполнении рутинных, но продолжительных по времени выполнения задач, - это хорошо. Особенно если учесть, что использование локально управляемых табличных пространств дает еще и ряд преимуществ с точки зрения производительтности.
17. Временные табличные пространства
В противоположность тому, что можно предположить из его наименования, существует в базе данных постоянно, как и все прочие табличные пространства, такие как System и Sysaux. Однако данные во временном табличном пространстве имеют временный характер и существуют только на протяжении существования сеанса пользователя. Oracle использует временные табличные пространства в качестве рабочих областей для выполнения таких задач, как операции сортировки при выполнении запросов пользователей, и операции сортировки при создании индексов. Oracle не позволяет пользователям создавать объекты во временном табличном пространстве.
По определению временное табличное пространство хранит данные только на протяжении существования сеанса пользователя, и его данные не могут быть разделены между всеми пользователями. Производительность временного табличного пространства исключительно важна, когда приложение использует запросы, требующие интенсивной сортировки и хеширования, что подразумевает хранение промежуточных данных во временном табличном пространстве. Самый первый оператор после запуска экземпляра базы Oracle, который использует временное табличное пространство, создает сегмент сортировки, разделяемый всеми операциями сортировки в экземпляре. Когда вы останавливаете базу данных, она освобождает этот сегмент. Вы можете запросить представление V$SORT_SEGMENT, чтобы просмотреть выделение и освобождение места для этого сегмента сортировки. Увидеть, кто в данный момент использует сегмент сортировки, можно, опросив представление V$SORT_USAGE. Используйте представления V$TEMPFILE и DBA_TEMP_FILES, чтобы ознакомиться с подробностями о временных файлах, выделенных в данный момент временному табличному пространству.
Группы временных табличных пространств
Крупные транзакции иногда могут приводить к переполнению временного пространства. Задачи, связанные с объемными сортировками, особенно включающие таблицы с несколькими разделами, приводят к значительной нагрузке на временные табличные пространства, от чего может пострадать производительность. В Oracle Database 10g была введена концепция группы временных табличных пространств, которая позволяет использовать временные табличные пространства в разных сеансах.
Ниже перечислены некоторые из основных характеристик группы временных табличных пространств.
· Группа временных табличных пространств должна состоять минимум из одного табличного пространства. Ограничений на максимальное их количество не существует.
· Если вы удалите все члены группы временных табличных пространств, группа также будет автоматически удалена.
· Группа временных табличных пространств имеет то же самое пространство имен, что и временные табличные пространства, являющиеся частью группы.
· Имя временного табличного пространства не может совпадать с именем любой из групп табличных пространств.
· При назначении временного табличного пространства пользователю можно применять имя группы временных табличных пространств вместо имени конкретного табличного пространства. Имя группы можно также использовать, назначая временное табличное пространство по умолчанию для всей базы данных.
Преимущества групп временных табличных пространств
Использование группы временных табличных пространств вместо обычного одиночного временного табличного пространства обеспечивает следующие преимущества.
· Запросы SQL с гораздо меньшей вероятностью приведут к переполнению места, отведенного для сортировки, потому что теперь запрос может параллельно использовать несколько временных табличных пространств для сортировки.
· Можно специфицировать несколько временных табличных пространств по умолчанию на уровне базы данных.
· Параллельно работающие серверы в параллельных операциях будут эффективно использовать несколько временных табличных пространств.
· Один пользователь может параллельно использовать несколько временных табличных пространств в разных сеансах.
18. Сопровождение сегментов
Другим вопросом, интересующим АБД, является сопровождение пространства для объектов базы данных. Начиная с СУБД Oracle9i, АБД получают возможность сопровождения пространства для объектов автоматически с помощью опции Automatic Segment Space Management (автоматическое управление пространством сегментов). Она упрощает задачи администрирования пространства и устраняет многие задачи оптимизации производительности, связанные с управлением пространством. Она облегчает сопровождение свободного пространства в таблицах и индексах, повышает уровень использования пространства и обеспечивает существенно лучшие «коробочные» производительность и масштабируемость.
До СУБД Oracle9i администрирование управления пространством осуществлялось с помощью структур данных, называемых FREELISTS (списки свободных блоков). С помощью FREELISTS СУБД следила за блоками объектов, в которых имелось достаточное свободное пространство для вставки новых строк. АБД при создании объектов определял для объектов количество списков свободных блоков и количество групп списков свободных блоков (FREELIST GROUPS), а на уровне таблиц использовался параметр PCTUSED (процент использованного пространства), с помощью которого осуществлялось управление размещением и удалением блоков из списков свободных блоков.
Новый механизм, введенный в СУБД Oracle9i, делает управление пространством в объектах полностью прозрачным, используя для этого битовые карты, позволяющие отслеживать использование пространства в каждом блоке данных, выделенном объекту. Состояние битовой карты показывает, сколько в данном блоке данных имеется свободного пространства (например, >75%, от 50% до 75%, от 25% to 50% или <25%), а также, является ли оно сформатированным или нет. Эта новая реализация освобождает АБД от необходимости ручного управления пространством в объектах. Другим преимуществом механизма автоматического управления пространством сегментов является повышение использования пространства в блоках данных. Причина заключается в том, что битовые карты по сравнению с FREELISTS намного лучше приспособлены для отслеживания и управления свободным пространством на уровне блоков данных. Это делает возможным улучшение повторного использования доступного свободного пространства, особенно для объектов со строками переменного размера. Кроме того, механизм Automatic Segment Space Management существенно повышает производительность конкурентных DML-операций, так как различные части битовой карты могут быть использоваться одновременно, устраняя сериализацию при поиске достаточного свободного пространства.
Улучшение производительности и сопровождаемости, обеспечиваемое механизмом Automatic Segment Space Management особенно заметно в среде Real Application Cluster. Механизм Automatic Segment Space Management обеспечил, по сравнению с оптимально настроенным ручным режимом (8 FREELIST GRМеханизм Automatic Segment Space Management доступен только в локально управляемых табличных пространствах (locally managed tablespaces). В операторе CREATE TABLESPACE (создать табличное пространство) появилось новое предложение SEGMENT SPACE MANAGEMENT (управление пространством сегментов), которое имеет два параметра: AUTO (автоматическое) и MANUAL (ручное). Параметр AUTO позволяет использовать механизм Automatic Segment Space Management, а в режиме MANUAL для управления свободным пространством в объектах по-прежнему будут использоваться списки свободных блоков. OUPS, 20 FREELISTS), повышение производительности более чем на 35%.
19. Оптимизация производительности СУБД
Проблема измерения и увеличения производительности сложных программных систем, к числу которых, конечно же, относятся и СУБД, всегда была сложной. Доклад посвящен, большей частью, описанию методик измерения производительности СУБД, систем оперативной обработки транзакций, систем поддержки принятия решений. Первая часть доклада содержит краткое описание проблем, возникающих при измерении производительности и описание подходов к построению квалифицированных методик измерения. Далее подробно рассматриваются тесты TPC (Transaction processing Performance Council - Совет по производительности систем обработки транзакций), а также некоторые другие распространенные методики измерения производительности. При рассмотрении тестов TPC особое внимание уделено как наиболее распространенному в настоящее время тесту TPC-C, предназначенному для измерения производительности систем оперативной обработки транзакций, так и новым разработкам TPC - тестам TPC-D, TPC-E и TPC - S, предназначенных для систем поддержки принятия решений и серверных компонентов системы. В докладе не рассматриваются два наиболее широко известные теста, TPC-A и TPC-B, так как эти методики считаются устаревшими и не поддерживаются TPC в настоящий момент. Наиболее известные среди других рассматриваемых тестов, не относящихся к семейству TPC, - тесты Wisconsin Benchmark и AS3AP. Заключительная часть доклада посвящена краткому обзору основных подходов к улучшению производительности СУБД, применимых к широкому спектру систем, и не зависимых от конкретных продуктов. Доклад не содержит данных по производительности конкретных систем по двум причинам. Первая - эти цифры быстро изменяются и доступны широкому кругу заинтересованных специалистов. Вторая, и, наверное, наиболее важная
- необходимо отчетливо представлять, что означают эти цифры и как их использовать при разработке конкретных систем.
20. Резервирование и восстановление
В ряде приложений сохранность и работоспособность базы данных является чрезвычайно критическим аспектом либо в силу технологических особенностей (системы реального времени), либо в силу содержательного характера данных. В этих случаях применяются подходы так называемого горячего резервирования данных, когда база данных постоянно находится в виде двух идентичных (зеркальных) и параллельно функционирующих копий, размещаемых на двух раздельных системах дисковой памяти.
В других ситуациях для обеспечения сохранности данных используются операции архивирования и резервирования данных. В большинстве случаев архивирование производится обычными средствами архивации файлов для их компактного долговременного хранения, как правило, на внешних съемных носителях. Функции архивирования данных иногда могут входить и в перечень внутренних функций самих СУБД.
Резервирование данных, как правило, не предусматривает специального сжатия данных, а производится через создание специальных копий файлов данных в технологических или иных целях.
Подобные документы
Установка, разработка конфигурации и дальнейшее администрирование FTP-сервера на системе типа UNIX. Настройка операционной системы и удаленного управления. Основные команды; соединение и передача данных. Аутентификация, способы доступа к FTP-серверу.
курсовая работа [1,3 M], добавлен 02.04.2015Общее понятие, основные компоненты и функции операционной системы. Порядок установи операционной системы UbuntuLinux. Особенности инсталляции веб-сервера Nginx для передачи данных по протоколу HTTP. Установка системы управления базами данных MongoDB.
курсовая работа [2,3 M], добавлен 11.06.2014Система управления базами данных как составная часть автоматизированного банка данных. Структура и функции системы управления базами данных. Классификация СУБД по способу доступа к базе данных. Язык SQL в системах управления базами данных, СУБД Microsoft.
реферат [46,4 K], добавлен 01.11.2009Алгоритмы обработки массивов данных. Система управления базами данных. Реляционная модель данных. Представление информации в виде таблицы. Система управления базами данных реляционного типа. Графический многооконный интерфейс.
контрольная работа [2,8 M], добавлен 07.01.2007Установка сервера и системы MooDLE, принципы экспорта/импорта данных. Администрирование системы "Галактика ERP" при помощи "Support". Унификация пунктов меню в различных модулях, настройка общесистемных каталогов. Корпоративные информационные ERP-системы.
методичка [1,7 M], добавлен 03.11.2011Особенности управления информацией в экономике. Понятие и функции системы управления базами данных, использование стандартного реляционного языка запросов. Средства организации баз данных и работа с ними. Системы управления базами данных в экономике.
контрольная работа [19,9 K], добавлен 16.11.2010Система управления базами данных (СУБД) MySQL. Установка, настройка и запуск MySQL. Окончательная настройка нового MySQL сервера. Основные утилиты и журнальные файлы. Работа с виртуальными хостами. Синтаксис для создания таблиц и управление данными.
реферат [3,5 M], добавлен 24.06.2019Назначение и основные функции системы управления базами данных СУБД, особенности и признаки их классификации. Архитектура баз данных (БД). Разработка распределенных БД. Язык структурированных запросов (SQL). Правила Кодда: требования к реляционным БД.
курсовая работа [376,2 K], добавлен 21.07.2012Хранение и обработка данных. Компоненты системы баз данных. Физическая структура данных. Создание таблиц в MS Access. Загрузка данных, запросы к базе данных. Разработка информационной системы с применением системы управления базами данных MS Access.
курсовая работа [694,0 K], добавлен 17.12.2016Классификации баз данных по характеру сберегаемой информации, способу хранения данных и структуре их организации. Современные системы управления базами данных и программы для их создания: Microsoft Office Access, Cronos Plus, Base Editor, My SQL.
презентация [244,3 K], добавлен 03.06.2014