МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • SQL Server 2000

    данных с одного диска или сервера на другой. Если требуется скопировать

    базу данных на один или несколько удаленных серверов, можно выполнить

    резервное копирование базы данных и разослать копии. Другой способ —

    выполнить отсоединение базы данных и разослать пользователям все ее

    файлы. У себя на сервере пользователи смогут выполнить присоединение базы

    данных и сразу же начать работать с ней. Процедура отсоединения и

    присоединения занимает гораздо меньше времени, чем создание и

    восстановление резервной копии. Кроме того, отсоединенную базу данных

    можно записать на компакт-диски и разослать пользователям. Пользователи

    смогут работать с базой данных непосредственно с компакт-диска в режиме

    «только для чтения». Такой подход особенно эффективен при рассылке

    каталогов, которые не должны изменяться.

    Если планируется скопировать базу данных на компакт-диск,

    предварительно необходимо установить все ее группы файлов в режим «только

    для чтения». Для этого используется команда ALTER DATABASE MODIFY

    FILEGROUP filegroup_name READONLY.

    Выполнять операции присоединения и отсоединения базы данных могут

    только члены фиксированной роли сервера sysadmin. Эти права не могут быть

    переданы никаким другим способом, кроме как включением пользователей в

    эту фиксированную роль сервера.

    Для отсоединения базы данных используется следующая хранимая процедура:

    sp_detach_db [@dbname =] "dbname" [, [@skipchecks =] "skipchecks"]

    Аргумент "dbname" указывает имя базы данных, которую необходимо

    отсоединить. Аргумент "skipchecks" управляет обновлением статистики при

    отсоедине-

    нии. Если значение этого аргумента равно TRUE, то обновление статистики

    пропускается, если же указывается FALSE, то обновление статистики будет

    выполнено. Для отсоединения базы данных pubs нужно использовать следующую

    команду:

    ЕХЕС sp_detach_db "pubs"

    После отсоединения базы данных вы получаете в свое распоряжение набор

    обычных файлов, с которыми можно выполнять обычные операции, в том числе

    и архивирование с использованием утилиты NT Backup.

    Для присоединения отсоединенной базы данных используется системная

    хранимая процедура sp_attach_db:

    sp_attach_db [@dbname =] "dbname", [(Pfilenamel =] "filenameji"

    [,...16]

    Аргумент "filename_n" должен содержать полный путь к первичному файлу

    присоединяемой базы данных. Описание остальных файлов базы данных

    хранится в первичном файле. Если положение этих файлов было изменено, то

    необходимо явно указать их положение при вызове хранимой процедуры —

    через запятую в аргументе "f i lename_n".

    Количество файлов, которое можно присоединить с помощью хранимой

    процедуры sp_attach_db, ограничивается 16. Если необходимо выполнить

    подключение базы данных с большим количеством файлов, используется

    команда CREATE DATABASE FOR ATTACH.

    Для присоединения базы данных pubs нужно выполнить следующую команду:

    sp_detach_db"pubs".

    "d:\mssql\data\pubs.mdf" .

    "d:\mssql\data\pubs_log.Idf"

    Если база данных состоит из одного файла данных и одного файла журнала

    транзакций, то ее можно присоединить, указав только первичный файл. База

    данных должна быть отсоединена от сервера с помощью хранимой процедуры

    sp_detach_db. Для присоединения такой базы данных используется следующая

    хранимая процедура:

    sp_attach_sing1e_file_db [@dbname =] "dbname".

    [@physname =] "physicaljiame"

    Сервер автоматически создаст для базы данных файл журнала транзакций и

    выполнит удаление из базы данных поддержку репликации, если она была

    установлена.

    Для присоединения базы данных pubs с использованием только первичного

    файла необходима следующая команда: sp_attach_single_file_db "pubs",

    "d:\mssql\data\pubs.mdf"

    Передача прав владения

    Если администратор баз данных вашей компании увольняется и ему на смену

    приходит другой человек, необходимо передать права владения всеми

    объектами, включая базы данных, новому администратору.

    Для передачи прав владения базой данных от одного пользователя другому

    используется следующая хранимая процедура:

    sp_changedbowner [(Ploginame =] "login"

    [,[@map =] remap_al1as_f1ag]

    Рассмотрим назначение каждого из аргументов хранимой процедуры. О

    [Ologiname =] "login". Имя учетной записи пользователя, которого

    требуется сделать владельцем базы данных. Эта учетная запись не должна

    иметь доступа к базе данных ни через псевдоним, ни через отображение в

    пользователя базы данных. В противном случае перед выполнением хранимой

    процедуры необходимо сначала удалить все отображения учетной записи в

    пользователя базы данных.

    О [map =] remap_al i as_fl ag. Этот аргумент может принимать значение

    TRUE или FALSE. Значение TRUE означает, что учетная запись старого

    владельца базы данных будет отображаться в учетную запись нового

    владельца. Если задано FALSE, учетная запись старого владельца

    уничтожается. Если этот аргумент опускается, то есть принимает значение

    NULL, то все существующие dbo будут отражены в учетную запись нового

    владельца базы данных. Хранимая процедура sp_changedbowner должна

    выполняться в контексте базы данных, владельца которой необходимо

    изменить. Например, для изменения владельца базы данных KHSU необходимо

    выполнить следующую команду:

    USE khsu

    EXEC sp_changedbowner "MATRIXXAdmlnistrator"

    Изменение имени базы данных

    При рассмотрении команды ALTER DATABASE мы уже говорили, что она

    позволяет изменить имя базы данных. Однако для изменения имени базы

    данных также можно использовать следующую хранимую процедуру:

    sp_renamedb [@old_name =] "old_name". [@new_name =] "new_name"

    Аргумент "old_name" должен содержать старое имя базы данных. Новое же

    имя указывается с помощью аргумента "new_name".

    Права на выполнение этой хранимой процедуры имеют только члены

    фиксированной роли сервера sysadmin.

    Просмотр свойств базы данных

    Часто бывает необходимо получить исчерпывающую информацию о структуре и

    параметрах базы данных. В этом разделе будут рассмотрены средства

    Transact-SQL, с помощью которых можно получить различную информацию о

    базе данных. Для просмотра значения параметров конфигурации базы данных,

    установленных с помощью хранимой процедуры sp_dboption или средствами

    Enterprise Manager, можно использовать системную хранимую процедуру

    sp_dboption с указанием только имени базы данных. Например, для получения

    информации о параметрах базы данных pubs можно выполнить следующую

    команду: EXEC sp_dbopt1on "pubs"

    Будет возвращен примерно следующий результат:

    The following options are set:

    published

    trunc. log on chkpt. torn page detection auto create statistics auto update

    statistics

    Как видно, возвращается список только тех параметров, которые были

    установлены. Для получения значения конкретного параметра необходимо

    указать не только имя базы данных, но и имя интересующего параметра

    конфигурации:

    ЕХЕС spjboption "pubs", "ANSI null default"

    В результате выполнения этой команды будет получен примерно следующий

    результат:

    OptionName CurrentSetting

    ANSI null default off

    Если выполнить хранимую процедуру sp_dboption вообще без аргументов, то

    она выдаст список всех доступных параметров конфигурации:

    Settable database options:

    ANSI null default

    ANSI nulls

    ANSI padding

    ANSI warnings

    arithabort

    auto create statistics

    auto update statistics

    autoclose

    autoshrink

    concat null yields null

    cursor close on commit

    dbo use only

    default to local cursor

    merge publish

    numeric roundabort

    offline

    published

    quoted identifier

    read only

    recursive triggers

    select into/bulkcopy

    single user

    subscribed

    torn page detection

    trunc. log on chkpt.

    Помимо хранимой процедуры sp_dboption для получения значения тех же и

    некоторых дополнительных параметров конфигурации можно использовать

    следующую команду: DATABASEPROPERTY("database_name". "property")

    Аргумент database_name должен содержать имя базы данных, свойства которой

    необходимо просмотреть. Возможные значения аргумента property и их

    назначение перечислены в табл. 14.2.

    Таблица Аргументы команды DATABASEPROPERTY

    Аргумент

    IsAnsiNullDefault

    IsAnsiNullEnabled

    IsAnsiWarningEnabled

    IsAutoClose

    IsAutoShrink

    IsAutoUpdateStatistics

    IsBulkCopy

    IsCloseCursorOnCommit-Enabled

    IsDboOnly

    IsDetached

    IsEnergencyMode

    IsFulltextEnabled

    IsInLoad

    IsInRecovery

    IsInStandby

    IsLocalCursorsDefault

    IsNotRecovered IsNullConcat

    IsOffline IsQuotedldentifiersEnabled

    leReadOnly

    IsRecursiveTriggersEnabled

    IsShutDown

    Назначение

    Аналог аргумента "ANSI null default" процедуры sp_dboption

    Аналог аргумента "ANSI nulls" процедуры sp_dboption

    Аналог аргумента "ANSI warning" процедуры sp_dboption

    Аналог аргумента "autoclose" процедуры sp_dboption

    Аналог аргумента "autoshrink" процедуры sp_dboption

    Аналог аргумента "auto update statistic" процедуры sp_dboption

    Аналог аргумента "select into/bulk copy" процедуры sp_dboption

    Аналог аргумента "cursor close on commit" процедуры spjdboption

    Аналог аргумента "dbo use only" процедуры sp_dboption

    База данных отделялась командой sp_detach

    Разрешение работы с «подозрительной» базой

    Поддержка полнотекстового поиска

    База данных была загружена из резервной копии

    Выполняется восстановление базы данных

    База данных работает в режиме «только для чтения»

    Аналог аргумента "default to local cursor" процедуры sp_dboption

    Восстановление базы данных завершилось с ошибкой

    Аналог аргумента "concat null yields null" процедуры sp_dboption

    Аналог аргумента "offline" процедуры sp_dboption

    Аналог аргумента "quoted identifier" процедуры sp_dboption

    Аналог аргумента "read only" процедуры sp_dboption

    Аналог аргумента "recursive triggers" процедуры sp_dboption

    В базе при запуске сервера возникают ошибки__

    продолжение &

    Таблица (продолжение)

    Аргумент Назначение

    IsSingleUser Аналог аргумента "single user" процедуры

    sp_dboption

    IsSuspect Имеются сомнения в целостности базы данных

    IsTruncLog Аналог

    аргумента "trunc. log on chkpt." процедуры

    sp_dboption

    Version Внутренний номер версии сервера SQL Server,

    ________________________ на котором была создана база

    данных_________

    Результатом выполнения команды DATABASEPROPERTY будет либо значение О,

    соответствующее значению FALSE или OFF хранимой процедуры sp_dbopt1 on,

    либо значение 1, соответствующее значению TRUE или ON. Исключением из

    правила является значение, возвращаемое для параметра Version. Для этого

    параметра возвращается значение типа int, которое может принимать любое

    положительное значение. Если значение параметра не определено, то команда

    вернет значение NULL.

    Приведем пример использования команды DATABASEPROPERTY для получения

    информации о режиме слияния двух значений NULL, установленном для базы

    данных pubs: SELECT DATABASEPROPERTY ("pubs", " IsNullConcat")

    Сервер вернет примерно следующий результат:

    О

    (1 row(s) affected)

    Для получения некоторой общей информации о базе данных можно

    использовать следующую хранимую процедуру: spjielpdb [[@dbname=] "name"]

    Эта хранимая процедура выдает информацию о текущем размере базы данных

    с точностью до десятков килобайт, имя учетной записи, являющейся

    владельцем базы данных, идентификационный номер базы данных, дату

    создания базы данных и ее текущий статус. Кроме того, эта хранимая

    процедура выдает информацию о файлах базы данных: логическое и физическое

    имя файла базы данных, его идентификационный номер в базе данных, текущий

    и максимальный размер, шаг приращения, а также принадлежность к той или

    иной группе файлов.

    Для получения информации о файлах базы данных из хранимой процедуры

    spjielpdb происходит вызов хранимой процедуры sp_helpfile, которая и

    выдает информацию о параметрах файла. Поэтому формат результата

    выполнения этих хранимых процедур одинаков. Более подробно формат данных

    будет рассмотрен ниже.

    Для получения информации о базе данных pubs можно использовать

    следующую команду:

    ЕХЕС spjielpdb "pubs"

    Объем информации, возвращаемый этой командой, достаточно велик, поэтому

    возможности привести эту информацию в книге нет. Однако вы можете

    выполнить указанную команду в Query Analyzer и посмотреть, что же будет

    выдано в ответ.

    Для получения информации о конкретном файле базы данных можно

    использовать следующую хранимую процедуру: sp_helpfile [[^filename = ]

    "name"]

    Эта процедура выдает информацию о файле в следующих столбцах: О Name —

    логическое имя файла в базе данных;

    О Filename— физическое имя файла в операционной системе, которое включает

    полный путь к файлу;

    О Filegroup— имя группы файлов, к которой принадлежит файл;

    О Si ze — текущий размер файла;

    О Maxsize— максимальный размер файла, установленный при его создании;

    О Growth — шаг прироста размера файла;

    О Usage— тип использования файла; возможно одно из двух значений: data

    only (файл используется для хранения данных) или log on!у (файл

    используется для хранения журнала транзакций).

    Для получения информации о группе файлов можно использовать следующую

    хранимую процедуру: sp_helpfilegroup [[Ofilegroupname =] "name"]

    Эта хранимая процедура выполняется в контексте базы данных, информацию

    о которой необходимо получить. В результате выполнения процедуры будет

    выдана информация об идентификационном номере группы, количестве

    включенных в нее файлов, а также информация о самих файлах.

    Для получения информации о группе файлов PRIMARY базы данных pubs можно

    использовать следующую команду: ЕХЕС sp_helpf11egroup "primary"

    Будет получен примерно следующий результат: groupname groupid

    fllecount

    PRIMARY 1 1

    f11e_in_group fileid filename size maxsize growth

    pubs 1 pubs.mdf 2688 KB Unlimited Ш

    В столбце Filename будет указан полный путь к файлу.

    Для просмотра информации об использовании пространства внутри базы

    данных можно применить следующую, системную хранимую процедуру:

    sp_spaceused [[@objname =] "objname"] [, [@updateusage =]

    "updateusage"]

    Аргумент "objname" содержит имя таблицы базы данных, о которой

    необходимо получить информацию. Аргумент "updateusage" управляет

    выполнением команды DBCC UPDATEUSAGE и может принимать значения TRUE или

    FALSE.

    Если процедура sp_spaceused запускается без аргументов, то будет

    выведена информация об использовании пространства в текущей базе данных.

    В результате выполнения sp_spaceused в контексте базы данных pubs будет

    получен примерно следующий результат:

    database_name

    pubs

    reserved data

    database_s1ze 3.63 MB

    Index size

    unallocated space 1.10 MB unused

    2584 KB 1120 KB 1288 KB 176 KB

    Как видно, результат состоит из двух наборов. В столбце database_name

    указано имя базы данных, о которой выводится информация, в столбце

    database_s1 ze — первоначальный размер базы данных, а в столбце unal I

    ocated space— пространство, которое было освобождено при сжатии.

    В столбце reserved отображается сумма зарезервированного для базы данных

    пространства (database_size - "unallocated space" = data + index_size +

    unused). В столбце data указан объем памяти, занимаемый данными, а в

    столбце index_size— объем памяти, занимаемый индексами. Размер свободного

    пространства в базе данных выводится в столбце unused.

    Чтобы получить информацию об использовании пространства в таблице

    titleauthor, можно использовать следующую команду: ЕХЕС sp_spaceused "

    titleauthor"

    В результате процедура выдаст примерно следующее:

    name rows reserved data index_size unused

    titleauthor 25 48 KB 8 KB 40 KB 0 KB

    В столбце name указано имя таблицы, о которой выводится информация, а в

    столбце rows — число строк данных, которое введено в таблице. Объем памяти,

    выделенный в базе данных для таблицы, указывается в столбце reserved (data

    + index_s1ze + unused). В столбце data указан объем памяти, занимаемой

    данными, хранящимися в таблице, а в столбце i ndex_si ze — объем памяти,

    отведенный для индекса. Объем свободного пространства указывается в столбце

    unused

    Для получения информации о журнале транзакций Transact-SQL предлагает

    команду DBCC SQLPERF, выдающую информацию об использовании журналов

    транзакций в каждой из баз данных, созданных на сервере.

    Для получения информации об использовании журналов транзакций нужно

    выполнить следующую команду: DBCC SQLPERF (LOGSPACE)

    В результате будет выдана следующая информация: DatabaseName

    LogSize(MB) Log Space Used ( % ) Status

    |Samp! e_3 |1.9921875 |33.039215 |0 |

    |Sample_2 |1.9921875 |34.264706 |0 |

    |Sample 1 |1.9921875 |33.553921 |0 |

    |Distributi|0.9921875 |56.98819 |0 |

    |on | | | |

    |Abba |0.9921875 |38.877953 |0 |

    |Northwi nd|0.9921875 |46.948818 |0 |

    | | | | |

    |Pubs |0.9921875 |55.610237 |0 |

    |Msdb |2.4921875 |35.442791 |0 |

    |Tempdb |0.4921875 |85.079521 |0 |

    |Model |0.7421875 |45.328949 |0 |

    |Master |1.2421875 |34.709118 |0 |

    (12 row(s) affected)

    DBCC execution completed. If DBCC printed error messages, contact your

    Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.