|
Программирование >> Программирование баз данных
файловые группы предоставляют возможность выборочно выполнять операции резервного копирования и восстановления или даже просто распределять нагрузку по вводу и выводу, а это очень удобно. Ключевое слово name Ключевое слово NAME выполняет другие функции по сравнению с тем, что может показаться на первый взгляд. С помощью этого ключевого слова определяется имя файла, но не физическое, а логическое, т.е. такое имя, которое используется в самой СУБД SQL Server для ссылки на файл с данными. Пользователь применяет указанное имя, если ему требуется изменить размеры (увеличить или уменьшить) базы данных и (или) файла. Ключевое слово filename Данное ключевое слово полностью соответствует своему буквальному смыслу - оно обозначает физическое имя действительного файла операционной системы на жестком диске. Именно в этом файле будут храниться данные или журнал (в зависимости от того, в каком разделе оператора CREATE DATABASE задано имя файла). В параметре, обозначенном с помощью этого ключевого слова, также могут использоваться значения, предусмотренные по умолчанию (при условии, что в операторе создания базы данных применяется простой синтаксис, который был описан в первую очередь), зависящие от того, относится ли ключевое слово к самой базе данных или к журналу. Создаваемый файл размещается в подкаталоге MSSQL. l\MSSQL\Data основного каталога Program Files\Microsof t SQL Server (или каталога, указанного в качестве основного каталога SQL Server, если во время инсталляции программного обеспечения СУБД было решено отказаться от предусмотренного по умолчанию значения). Если речь идет о физическом файле базы данных, то для него применяется такое же имя, как и для базы данных, с расширением .mdf. Если же речь идет о журнале, то рассматриваемый файл принимает такое же имя, как и файл базы данных, но приобретает суффикс Log и расширение . Idf. Если решено явно задать имя файла, то допускается указывать другие расширения, но автор настоятельно рекомендует придерживаться заданных по умолчанию значений mdf (база данных) и Idf (журнал). Дополнительно отметим, что вторичные файлы имеют по умолчанию расширения . ndf. Следует учитывать, что параметр FILENAME может рассматриваться как необязательный только при том условии, если применяется чрезвычайно простой синтаксис оператора создания базы данных (с помощью которого новая база данных создается на основе базы данных model), описанный в данной главе в первую очередь. А если предоставляется какая-либо дополнительная информация, то необходимо и явно задать имя файла, и обязательно ввести полный путь к файлу. Ключевое слово size Ключевое слово SIZE не представляет собой что-то особенно сложное- оно определяет размер базы данных. По умолчанию размер задается в мегабайтах, но размеры могут быть заданы в килобайтах с использованием обозначения КБ вместо МБ после числового значения размера. Если же база данных должна быть значительно больше обычного, то могут применяться обозначения GB (гигабайты) или даже ТВ (терабайты). Следует учитывать, что это значение не должно быть меньше размера базы данных model, а также должно быть указано целым числом (без десятичной точки и дробной части), поскольку в противном случае будет получено сообщение об ошибке. Если значение параметра SIZE не будет задано, то создаваемая база данных первоначально примет такие же размеры, как и база данных model. Ключевое слово maxsize Ключевое слово MAXSIZE также почти полностью соответствует своему буквальному смыслу (т.е. определяет максимальный размер базы данных), но применяется немного иначе по сравнению с параметром SIZE. Дело в том, что в СУБД SQL Sender предусмотрен специальный механизм, позволяющий автоматически вьщелять дополнительное дисковое пространство для базы данных (если потребуется ее увеличение) по мере необходимости. Параметр MAXSIZE определяет максимальный размер, до которого может вырасти база данных. И в этом случае по умолчанию заданное число рассматривается как определяемое в мегабайтах (MB), но, подобно параметру SIZE, могут применяться суффиксы KB, GB или ТВ для задания других единиц измерения размера. Небольшим отличием этого параметра от параметра SIZE является то, что для него не предусмотрено четко заданное значение, применяемое по умолчанию. Таким образом, если значение параметра MAXSIZE не задано, такая ситуация рассматривается как отсутствие ограничения по максимуму, поэтому максимум практически достигается только после того, как на жестком диске не остается больше места для расширения базы данных. После достижения базой данных размеров, заданных в параметре MAXSIZE, пользователи начинают получать сообщения об ошибках с указаниями на то, что применяемые ими операции вставки данных не могут быть выполнены. А если максимального размера достигает журнал, то утрачивается возможность осуществлять в базе данных какие-либо действия, регистрируемые в журнале (а таковым является большинство действий). Сам автор рекомендует задавать так назьшаемые предупреждения. Предупреждения можно использовать для получения сообщений о возникновении определенных условий (например, связгшных с тем, что база данных или журнал почти полностью заполнились). Способы создания предупреждений будут описаны в главе 24. Кроме того, автор рекомендует всегда задавать в операторе создания базы данных значение MAXSIZE и выбирать его таким образом, чтобы оно было по меньшей мере на несколько мегабайт меньше по сравнению с тем, которое приводит к переполнению диска. Важность этой рекомендации обусловлена тем, что после полного заполнения диска могут возникнуть ситуации, в которых не удастся больше зафиксировать в базе данных какую-либо информацию, предназначенную для постоянного хранения. А если завершаются неудачей попытки СУБД отвести больше места для хранения журнала, то результаты могут оказаться катастрофическими. Кроме того, даже в операционной системе могут иногда возникать проблемы, если дисковое пространство полностью исчерпывается. Следует также учитывать, что на одном и том же жестком диске может быть предусмотрено размещение файлов, относящихся к разным базам данных. В таком случае нельзя допускать, чтобы в процессе расширения каждая из баз данных могла занять полный объем диска за вычетом нескольких мегабайтов, поскольку при этом не исключается возможность полного заполнения диска (если будет происходить расширение всех баз данньгх). Ключевое слово filegrowth Итак, параметр SIZE определяет начальный размер базы данных, параметр MAXSIZE позволяет указать, насколько больших размеров может достичь в конечном итоге файл базы данных, а параметр FILEGROWTH определяет, сколько этапов расширения потребуется, чтобы размеры файла базы данных достигли этого максимума. В качестве значения параметра FILEGROWTH задается число, указывающее величину в байтах, килобайтах (КБ), мегабайтах (МБ), гигабайтах (GB) или терабайтах (ТВ), на которую могут каждый раз увеличиваться размеры файла базы данных. Еше один вариант состоит в том, что может быть задано значение в процентах, на которое допускается увеличение размера файла базы данньгх. При использовании этого варианта размер увеличивается на указанный процент от текущего размера файла базы данных. Таким образом, если указано, что файл базы данных с первоначальными размерами 1GB должен увеличиваться, согласно значению FILEGROWTH, на 20%, то в первый раз в результате увеличения он увеличится до 1. 2GB, во второй раз - до 1.44GB и т.д. Ключевое слово log on Опция LOG ON позволяет определить характеристики конкретного набора файлов, в которые должна записываться информация журнала, а также указать, где именно должны находиться файлы этого набора. Если данная опция не предусмотрена, то СУБД SQL Server создает журнал в единственном файле и определяет для этого файла по умолчанию размер, равный 25% от размера файла данных. Во всех прочих отношениях файл журнала имеет такие же параметры спецификации файла, как и файл самой базы данных. Настоятельно рекомендуется хранить файлы журнала на жестком диске, отличном от того, на котором находятся основные файлы данных. Это позволяет избежать конфликтов между операциями ввода-вывода, применяемыми к файлам журнала и файлам базы данных, находящимися на одном и том же диске, а также предусмотреть дополнительную защиту на случай отказа одного из жестких дисков. Ключевое слово collate Ключевое слово COLLATE имеет отношение к проблемам выбора порядка сортировки, чувствительности к регистру, а также зависимости от выбранной кодовой страницы. Применяемая по умолчанию схема упорядочения (collation) задается при инсталляции СУБД SQL Server, но указанное значение можно перекрывать на уровне базы данных (а также, как будет описано ниже, на уровне столбца). Ключевое слово for attach Опция FOR ATTACH может использоваться для присоединения существующего набора файлов базы данных к текущему серверу. Рассматриваемые файлы должны составлять часть базы данных, которая была в какой-то момент отсоединена от базы данных должным образом с использованием процедуры sp detach cib. При обычных условиях присоединение набора файлов в базе данных осуществляется с помощью процедуры sp attach db, но команда CREATE DATABASE с ключевым словом FOR ATTACH имеет свое преимущество в том, что позволяет обеспечить доступ к файлам, количество которых может превышать 32 тысячи, тогда как возможности процедуры sp attach db ограничиваются всего лишь 16 файлами.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |