Министерство сельского хозяйства Российской Федерации
КУБАНСКИЙ ГОСУДАРСТВЕННЫЙ АГРАРНЫЙ УНИВЕРСИТЕТ
Кафедра информационных систем
Курсовая работа
по дисциплине: Операционные системы, среды и оболочки
на тему: Развертывание сервера базы
данных на базе операционной системы Windows 7
выполнил студент группы ИТ1201
Саранчук Иван Сергеевич
Руководитель проекта доцент
Бардин Александр Константинович
Краснодар 2014 г.
Реферат
Тема работы: "Развертывание сервера базы данных на основании операционной системы Windows 7"
Кол-во: ___ стр.,19 рисунков, 8 используемых источников.
Целью работы является развертывание сервера базы данных на основании операционной системы Windows 7.
Эта работа объясняет принципы построения и применения данной
архитектуры. Курсовая работа может применяться в области программирования, для
изучения работы и принципов построения такой архитектуры.
Содержание
Введение
Часть 1. Теория
1.1 Виды серверов баз данных
1.2 Выбор среды
1.3 Сервер базы данных SQL
1.4 Язык SQL
1.5 Хранимые и присоединенные процедуры
1.6 Операционная среда серверов
1.7 Ссылочная целостность реляционных БД
1.8 Транзакции и целостность БД
1.9 Согласованность чтения и тупиковые ситуации
1.10 Архитектура
1.11 Сетевой доступ
1.12 Протоколы уровня приложений
1.13 Основные компоненты
Часть2. Моделирование задачи
2.1 Диаграмма иерархии функций (BFD)
2.2 Диаграмма потоков данных (DFD)
2.3 Диаграмма реализации сервера (UML)
2.4 Описание потенциальной среды разработки
Часть 3. Реализация
3.1 Установка MySQL Server 5.6 на Windows 7
3.2 Настройка MySQLServer 5.6
3.3 Запуск и работа с MySQL server 5.6
Заключение
Список используемых источников
Введение
Современные СУБД в основном являются приложениями Windows, так как данная среда позволяет более полно использовать возможности персональной ЭВМ, нежели среда DOS. Снижение стоимости высокопроизводительных ПК обусловил не только широкий переход к среде Windows, где разработчик программного обеспечения может в меньше степени заботиться о распределении ресурсов, но также сделал программное обеспечение ПК в целом и СУБД в частности менее критичными к аппаратным ресурсам ЭВМ.
Общепринятыми, также, являются технологии, позволяющие использовать возможности других приложений, например, текстовых процессоров, пакетов построения графиков и т.п., и встроенные версии языков высокого уровня (чаще - диалекты SQL и/или VBA) и средства визуального программирования интерфейсов разрабатываемых приложений. Поэтому уже не имеет существенного значения на каком языке и на основе какого пакета написано конкретное приложение, и какой формат данных в нем используется.
Целью работы является развертывание сервера базы данных на основании операционной системы Windows 7.
Данная работа объясняет принципы построения и применения данной архитектуры. Курсовая работа может применяться в области программирования, для изучения работы и принципов построения такой архитектуры
база операционная система сервер
Клиент-серверная СУБД располагается на сервере вместе с БД и осуществляет доступ к БД непосредственно, в монопольном режиме. Все клиентские запросы на обработку данных обрабатываются клиент-серверной СУБД централизованно. Недостаток клиент-серверных СУБД состоит в повышенных требованиях к серверу. Достоинства: потенциально более низкая загрузка локальной сети; удобство централизованного управления; удобство обеспечения таких важных характеристик как высокая надёжность, высокая доступность и высокая безопасность.
Наиболее часто используемые средства управления данными это MS SQL Server, Oracle Database, Apache, MySql.
Рассмотрим каждый из примеров.
Microsoft SQL Server - система управления реляционными базами данных (СУРБД), разработанная корпорацией Microsoft. Основной используемый язык запросов - Transact-SQL, создан совместно Microsoft и Sybase. Transact-SQL является реализацией стандарта ANSI/ISO по структурированному языку запросов (SQL) с расширениями. Используется для работы с базами данных размером от персональных до крупных баз данных масштаба предприятия; конкурирует с другими СУБД в этом сегменте рынка.
Oracle Database, (Oracle RDBMS) - объектно-реляционная система управления базами данных компании Oracle. Продукт, который компания выпускает с момента своего основания.
База данных, разработанная специально для работы в сетях распределенных вычислений Grid, предназначенная для эффективного развертывания на базе различных типов оборудования, от небольших серверов до мощных симметричных многопроцессорных серверных систем, от отдельных кластеров до корпоративных распределенных вычислительных систем. СУБД предоставляет возможность автоматической настройки и управления, что делает ее использование простым и экономически выгодным.
Apache. HTTP-сервер (произносится /ə. ˈpж. ʧi/, назван именем группы племён североамериканских индейцев апачей; кроме того, является сокращением от англ. apatchy server; среди русскоязычных пользователей общепринято искажённое апа́ч) - свободный веб-сервер. Apache является кроссплатформенным ПО, поддерживает операционные системы Linux, BSD, Mac OS, Microsoft Windows, Novell NetWare, BeOS.
Основными достоинствами Apache считаются надёжность и гибкость конфигурации. Он позволяет подключать внешние модули для предоставления данных, использовать СУБД для аутентификации пользователей, модифицировать сообщения об ошибках и т.д. Поддерживает IPv6.
MySQL - свободная реляционная система управления базами данных. Разработку и поддержку MySQL осуществляет корпорация Oracle, получившая права на торговую марку вместе с поглощённой Sun Microsystems, которая ранее приобрела шведскую компанию MySQL AB. Продукт распространяется как под GNU General Public License, так и под собственной коммерческой лицензией.является решением для малых и средних приложений. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.
Гибкость СУБД MySQL обеспечивается поддержкой большого
количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM,
поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие
транзакции на уровне отдельных записей. Благодаря открытой архитектуре и
GPL-лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц.
В случае потребности бизнес процессов компании в подготовке т обработке данных необходим выделенный вычислительный ресурс. Как правило, параметры такого узла напрямую зависят от масштаба базы данных, количества пользователей, динамики и характера обращений к данным.является наиболее приспособленной для применения в среде СУБД. Для исполнения приложений клиента на большинстве хостинг-площадок провайдеры предоставляют небольшое количество ресурсов (как вычислительных, так и дисковых).
Основные преимущества MySQL:
· Многопоточность, поддержка нескольких одновременных запросов;
· Оптимизация связей с присоединением многих данных за один проход;
· Записи фиксированной и переменной длины;
· Odbc драйвер;
· Гибкая система привилегий и паролей;
· Гибкая поддержка форматов чисел, строк переменной длины и меток времени;
· Интерфейс с языками c и perl, php;
· Совместимость с ansi sql;
· Бесплатна в большинстве случаев;
· Хорошая поддержка со стороны провайдеров услуг хостинга;
· Быстрая поддержка транзакций через механизм innodb.
По всем этим причинам MySQL стала незыблемым стандартом в
области СУБД для web, а теперь в ней развиваются возможности для использования
ее в любых критичных бизнес-приложениях.
Сервер БД обслуживает базу данных и отвечает за целостность и сохранность данных, а также обеспечивает операции ввода-вывода при доступе клиента к информации.
Архитектура клиент-сервер состоит из клиентов и серверов. Основная идея состоит в том, чтобы размещать серверы на мощных машинах, а приложениям, использующим языковые компоненты СУБД, обеспечить доступ к ним с менее мощных машин-клиентов посредством внешних интерфейсов.
Специфика сервера базы данных заключается в том, что данные как правило обрабатываются транзакционно, т.е. система запрашивает небольшой объем данных, проводит над ними операцию и затем сохраняет. Это накладывает определённые требования к аппаратной части сервера БД, а именно:
· Большой объем оперативной памяти для кэширования наиболее интенсивно используемых участков базы данных
· Высокопроизводительная дисковая подсистема, характеризующаяся в первую очередь способностью обрабатывать большое количество мелких запросов в единицу времени (iops - inputs/outputspersecond)
· Высокая вычислительная мощность для
обработки информации
Большинство СУБД используют язык SQL (StructuredQueryLanguage - язык структурированных запросов), так как он удобен для описания логических подмножеств БД.
Назначение SQL:
· Создание БД и таблицы с полным описанием их структуры;
· Выполнение основных операций манипулирования данными (такие как вставка, модификация и удаление данных из таблиц);
· Выполнение простых и сложных запросов.
Одна из ключевых особенностей языка SQL заключается в том, что с его помощью формируются запросы, описывающие какую информацию из базы данных необходимо получить, а пути решения этой задачи программа определяет сама.
Имя сервера
Каждый SQL Server имеет уникальное имя, как правило, совпадающее с именем компьютера, на котором он исполняется.
Пользователь SA
Как и в большинстве, если не во всех, серверах баз данных, в SQL Server существует пользователь, наделенный всеми административными полномочиями - это System Administrator или SA. После начальной установки сервера пароль SA пуст, поэтому первое действие администратора SQL Server - назначение этого пароля.
Существуют расширенные версии языка SQL, которые поддерживают такие расширения, как хранимые и расширенные процедуры, а также управление ходом программы через ветвления и организацию циклов.
Хранимые процедуры - это предварительно откомпилированные предложения языка SQL, которые сохраняются на сервере базы данных, использующей язык SQL. Клиент запускает хранимую процедуру с помощью команды EXECUTE<имя процедуры>. Таким образом, по сети передаются только два слова. Поскольку эта процедура уже откомпилирована и оптимизирована, серверу не нужно тратить время на компиляцию и оптимизацию.
В качестве хранимых процедур обычно используются часто выполняемые запросы.
Присоединенные процедуры (триггеры) подобны хранимым процедурам и исполняются в ответ на события, происходящие в БД. Когда с некоторыми приложениями языка SQL связана присоединенная процедура, выполнение этого предложения всегда запускает целую серию команд, входящих в эту процедуру. Присоединенная процедура автоматически выполняет одно или более предложений языка SQL, всякий раз, когда выполняет предложения INSERT, UPDATE или DELETE.
Самое важное применение присоединенных процедур заключается в
обеспечении ссылочной целостности.
Примеры серверов БД: SQLSERVER (Microsoft), SQLBASESERVER, Oracle SERVER (Oracle Corporation), IBMDB2, Informix. Каждый сервер БД может работать на определенных типах компьютеров и сетей. Операционными системами серверов могут быть MSDOS, OS/2, Xenix, Unix, Dec VMS/ Рабочие станции пользователей обычно работают под управление MSDOS, OS/2, Xenix, Unix.
Существуют возможности смешанного использования различных ОС.
Большая часть SQL-серверов может хранить описание БД в системном каталоге,
который обычно бывает доступен пользователям. Для обращения к этому каталогу
используются SQL-запросы. Реляционные СУБД могут использовать информацию,
хранящуюся в системном каталоге для оптимизации SQL-запросов.
Большинство SQL-серверов поддерживают ссылочную целостность реляционных БД, состоящих из отдельных таблиц, которые могут быть объединены на основе общей информации, рассмотрим на следующем примере: база данных содержит таблицу клиентов и таблицу заказов, которые связаны полем номера клиента, содержащимся в обеих таблицах. Поскольку может быть более одного заказа от одного клиента, соотношение таблиц - "один-ко-многим". Когда таблицы соединены, то таблица клиентов является родительской, а таблица заказов - дочерней. Если запись-родитель стирается, а соответствующие ей дочерние записи - нет, то говорят, что дочерние записи "осиротели". Ссылочная целостность означает, что ни в одной таблице не допустимы записи-"сироты". Запись может осиротеть тремя способами:
. Родительская запись удалена;
2. Родительская запись изменена таким образом, что связь между "родителем" и "потомками" потеряна;
. Введена дочерняя запись без соответствующей родительской. Поддержание ссылочной целостности возможно несколькими способами:
1) Через ключи, хранящиеся в таблицах БД (родительские таблицы содержат первичные ключи, представляющие собой комбинации внешних ключей, которые могут быть найдены внутри каждой из дочерних таблиц).
2) Использование присоединенных процедур - процедурная
ссылочная целостность. Присоединенные программы обеспечивают ссылочную
целостность за счет автоматического выполнения предложений SQL всякий раз,
когда встречается одно из предложений UPDATE/INSERT или DELETE (либо
запрещается удаление родительской записи, либо стираются все дочерние записи).
Транзакция - совокупность логически взаимосвязанных запросов, направленных на согласованное изменение некоторого множества строк в одной или нескольких таблицах БД. Обычно при выполнении транзакций обновляется несколько таблиц и индексов, связанных с этими таблицами.
Для того чтобы гарантировать синхронизацию обновления и
целостность данных, в серверах обычно используется принцип "все или
ничего", означающий, что в БД вносятся либо все обновления или ни одно из
них. С этой целью ведется журнал транзакций, в котором регистрируется
информация обо всех затребованных изменениях. Этот журнал обеспечивает
возможность "прокрутить назад" совершенные транзакции и восстановить
предыдущее состояние БД. Это становится важно, когда изменения в БД,
предусмотренные в одной транзакции, реализованы лишь частично, например, из-за
сбоя аппаратуры.
Характерна для многопользовательских СУБД. Для её реализации серверы обладают средствами автоматической блокировки.
Уровни, на которых блокируется таблица во время обновлений:
· Вся таблица;
· Страница (физический блок размером от 1 до 4 Кбайт, содержащий несколько записей).