
- •1. История развития баз данных
- •3. Модели данных [1]
- •1. История развития баз данных
- •1.1. Файлы и файловые системы
- •1.2. Базы данных на больших эвм
- •1.3. Эпоха персональных компьютеров
- •1.4. Распределенные базы данных
- •1.5. Особенности настоящего периода:
- •2. Проблемы обработки информации
- •Основные функции субд
- •Типовая организация современной субд
- •3. Модели данных [1]
- •3.1. Системы управления файлами
- •3.2. Иерархические базы данных
- •3.3. Сетевые базы данных
- •3.4. Реляционные базы данных
- •Недостатки реляционных систем
- •3.5. Объектно-ориентированные базы данных
- •Преимущества и недостатки оосубд [8, с.817]
- •3.6. Объектно-реляционные базы данных
- •4. Реляционная модель данных [2]
- •5. Операции над отношениями
- •5.1. Теоретико-множественные операции реляционной алгебры
- •5.1.1 Объединение отношений
- •5.1.2. Пересечение отношений
- •5.1.3. Разность отношений
- •5.1.4. Расширенное декартово произведение
- •5.2. Специальные операции реляционной алгебры
- •5.2.1. Операция фильтрации
- •5.2.2. Операция проектирования
- •5.2.3. Операция условного соединения
- •5.2.4. Операция деления
- •5.2.5.Примеры использования операций реляционной алгебры
- •Целостность [8]
- •6. Проектирование бд Жизненный цикл бд
- •Проектирование бд
- •Проектирование бд с учетом конкретной архитектуры Архитектура клиент-сервер
- •Структура сервера базы данных
- •Проектирование распределенных бд
- •11.1. Концепции распределенных баз данных
- •Этапы проектирования реляционной базы данных
- •6.1. Разработка технического задания
- •6.2. Разработка структуры бд
- •6.3. Нормализация
- •6.3.1. Первая нормальная форма
- •6.3.2. Вторая нормальная форма
- •6.3.3. Третья нормальная форма
- •6.3.4. Нормальная форма Бойса-Кодда
- •6.3.5. Четвертая и пятая нормальные формы
- •6.3.6. Денормализация
- •Проектирование реляционной базы данных на основе декомпозиции универсального отношения (плоской таблицы)
- •7.Язык запросов sql (Structured Query Language)
- •7.1. История развития
- •7.2. Как работает sql?
- •7.3. Интерактивный и встроенный sql
- •7.4. Типы данных
- •7.6. Оператор выбора select (MySql)
- •7.6.1. Предикаты предложения where
- •7.6.2. Примеры использования оператора select
- •7.6.3. Применение агрегатных функций и вложенных запросов в операторе выбора
- •8. Система управления базами данных (субд) MySql
- •8.1. Преимущества MySql перед другими субд. Недостатки
- •8.2. Инструментарий, поставляемый с MySql
- •8.3. Установка и завершение связи с сервером
- •8.4. Команды sql для MySql. Правила оформления листингов
- •8.5. Основы использования MySql
- •8.5.1. Замечания по организации работ с MySql
- •8.5.2. Программы MySql
- •8.5.2.1. Стандартные опции программ MySql
- •8.5.2.2. Конфигурационные файлы
- •8.5.2.3. Переменные среды
- •8.5.2.4. Клиенты mysql и mysqlc
- •Программирование приложений
- •Использование специализированных библиотек и встраиваемого sql
- •Odbc - открытый интерфейс к базам данных на платформе ms Windows
- •Jdbc - мобильный интерфейс к базам данных на платформе Java
- •9. Администрирование бд
- •9.1. Управление данными на предприятии
- •9.2. Основные функции dba
- •9.3. Администрирование в MySql [1])
- •9.3.1. Обеспечение доступности данных
- •9.3.2. Поддержание целостности данных
- •9.3.3. Подготовка к катастрофе
- •9.3.4. Поддержка пользователей
- •9.3.5. Разработка и внедрение стандартов
- •9.3.6. О хранении данных
- •9.3.6.1. Журнал транзакций
- •9.3.6.2. Журнальные файлы
- •9.3.7. Безопасность
- •9.3.7.1. Схемы привилегий
- •9.3.7.2. Задание привилегий
- •9.3.8. Оптимизация
- •9.3.8.1. Оптимизация запросов
- •9.3.8.2. Оптимизатор запросов
- •9.3.8.3. Выбор типа столбцов и эффективность запросов
- •9.3.8.4. Эффективная загрузка данных
- •9.3.8.5. Оптимизация для администратора
- •10. Транзакции и параллельные вычисления
- •10.1. Параллельные запросы
- •10.2. Транзакции
- •10.3. Уровни изоляции
- •10.4. Выполнение транзакций
- •10.5. Блокировки
- •10.6. Программные блокировки
- •Мониторы транзакций
- •12. Направления и тенденции развития баз данных
- •12.1. Ограничения реляционных систем
- •12.2. Особенности построения информационных хранилищ
- •Что достигается через использование технологии хранилищ данных?
- •Проблемы хранилищ данных
- •12.3. Olap-технология
- •Правила для olap-систем
- •12.3.1. Реляционные olap-системы
- •12.3.2. Многомерные olap-системы
- •12.3.3. Принципы построения многомерной базы данных
- •12.4. Oltp-технологии
- •13. Интеграция субд в среду Web
- •13.1. Публикация бд в Интернете
- •13.1.1. Общие концепции публикации бд в Интернете
- •13.1.2. Технологии публикации бд в Internet.
- •13.2. Сценарии JavaScript, jScript и vbScript
- •13.3. Элементы управления ActiveX
- •13.4. Апплеты и сервлеты Java
- •13.5. Интерфейсы
- •13.5.1. Интерфейсы cgi и WinCgi
- •13.5.2. Интерфейс isapi/nsapi
- •13.5.3. Asp, php, idc/htx-страницы
- •13.5.4. Формирование Web-страниц
- •13.5.5. Интерфейсы ole db, ado, odbc
- •13.6. Статическая публикация бд
- •13.7. Динамическая публикация бд
- •13.9. Протоколы передачи гипертекста
- •13.10. Универсальный указатель ресурсов
- •13.11. Состав и теги html-документа
- •13.15. Двухуровневые Web-приложения
- •13.16. Трехуровневые Web-приложения
- •13.17. Многоуровневые Web-приложения
- •13.18. Характеристики интерфейсов ole db, ado и odbc
- •Список использованной литературы
- •Приложения 1. Типы таблиц, поддерживаемых MySql
- •Приложение 2. Встроенные функции
- •Управляющие функции sql для MySql
- •Статистические функции
- •Математические функции
- •Строковые функции
- •Функции работы с датой и временем
- •Приложение 3. Инструкции языка sql для MySql
- •Приложение 4. Маленькая база для маленькой компании (OpenOffice_MySql) Приложение 5. MySql – начинающим администраторам Приложение 6. О метаданных
8.5.2.1. Стандартные опции программ MySql
Программные опции позволяют управлять функционированием большинства утилит MySQL. Эти опции можно задавать в командной строке или конфигурационном файле. Некоторые опции определяются посредством установки значений для переменных среды.
Заданные в командной строке опции обладают большим приоритетом по сравнению с опциями, заданными другим способом. Аналогичным образом, установки конфигурационных файлов имеют больший приоритет, чем значения переменных среды.
Ниже кратко описываются некоторые из опций (в скобках дается вариант короткой формы записи):
--help (-?) – выводит справочную информацию о самой программе и завершает работу;
--compress (-C) – активизирует средства сжатия протокола, используемого для взаимодействия между клиентом и сервером. Используется только клиентскими программами;
--defaults-file=path_name – определяет путь и имя конфигурационного (единственного) файла. Если эта опция задается, ее следует разместить первой в командной строке;
--host=host_name (-h host_name) – определяет главный компьютер, на котором запущен сервер. Используется только клиентскими программами;
--password[=пароль] (-p[=пароль]) – определяет пароль, используемый при подключении к серверу. Пароль должен размещаться сразу за именем опции без промежуточных пробелов. Используется только клиентскими программами. Не рекомендуется использование факультативной части опции ([=пароль]);
--port=port_num – указывает номер порта, который следует использовать при подключении к серверу;
--print-defaults – выводит значения опций, которые используются при вызове программы, если в командной строке отсутствуют опции. В выводимый список входят значения, которые извлекаются из конфигурационных файлов. Если эта опция задается, ее следует разместить первой в командной строке;
--set-variable=var=value (-o var=value) – позволяет устанавливать значения переменных (операционных параметров). В данном случае переменной var присваивается значение value;
--socket=path_name (-S path_name) – для клиентских программ определяет полный путь и имя файла разъема для подключения к серверу;
--user=user_name (-u user_name) – эта опция сообщает имя пользователя для подключения к серверу;
--verbose (-v) – определяет режим генерации большего количества выводимых данных. Опцию можно использовать несколько раз, повышая объем вывода.
8.5.2.2. Конфигурационные файлы
Конфигурационные файлы применяются для записи и хранения программных опций MySQL, что исключает необходимость ввода этих опций в командной строке каждый раз при вызове программы. Образцы конфигурационного файла можно найти (расширения .cnf или .ini) в подкаталогах инсталляции MySQL.
Все определенные в конфигурационном файле опции могут перекрываться опциями, заданными в командной строке.
MySQL просматривает в поисках опций несколько файлов. Отсутствие конфигурационного файла не приводит к возникновению ошибки в работе программы.
В ОС Windows считываются следующие файлы:
SYSTEMDIR\my.ini. Файл my.ini определяет глобальные опции для всех программ, связанных с работой MySQL. Он размещается в системном каталоге Windows (C:\Windows или C:\WindowsNT).
C:\my.cnf. Файл my.cnf определяет преимущественно опции сервера и размещается в корневом каталоге.
DATADIR\my.cnf. Этот файл задает опции для программ, запускаемых отдельными пользователями, и размещается обычно в каталоге c:\mysql\data или в другом месте, указанном с помощью опции --defaults-file.
Обратите внимание! Хотя для разделения компонентов пути в Windows используется символ “\”, внутри конфигурационных файлов для этой цели используется символ “/”.
Глобальные конфигурационные файлы считываются всеми программами, опции которых можно задавать через файлы. Расположенный в каталоге данных сервера конфигурационный файл (в системном каталоге Windows) предназначен только для отдельной программы-сервера. Что касается пользовательских файлов, то они используют опции, задаваемые конфигурационными файлами, размещенными в каталогах данных пользователей.
Внутри конфигурационных файлов опции распределяются по группам. Названия групп внутри файлов записываются в квадратных скобках и обычно соответствуют имени программ. Например:
[client]
user=ivanov
password=Vasia
[mysql]
no-auto-rehash
[mysqlshow]
status
Заданные в группе [client] опции используются всеми программами. Все стандартные программы ищут как группу [client], так и группу с собственным названием.
Все следующие за названием группы опции относятся к данной группе. Конфигурационный файл может содержать любое число групп, причем опции указанных позже групп обладают большим приоритетом, чем опции групп, приведенных первыми. Поэтому если одна опция определяется несколько раз, при запуске используется значение, указанное последним.
Каждая опция должна определяться в отдельной строке. Первое слово в такой строке является именем опции, представленным в длинном формате без начальных дефисов. Если необходимо задать значение для какой-нибудь опции, отделите его от названия опции символом равенства “=”. Например,
…
port=3306
user=vasia
Если в конфигурационном файле надо задать значение некоторой переменной, используется конструкция set-variable=var=const. Например,
set-variable=max_allowed_packet=24M
Пустые строки и строки, начинающиеся с символов “#” или “;”, рассматриваются как комментарии и пропускаются программой.
Необходимо следить, чтобы в группу [client] не помещались опции, понятные только одной команде, это приведет к появлению сообщения об ошибке при обращении к этому файлу других команд.
Размещение конфигурационных файлов в других операционных системах может отличаться от расположения их в ОС Windows.