Отправляет email-рассылки с помощью сервиса Sendsay

MS SQL Server

  Все выпуски  

MS SQL Server - дело тонкое...


Служба Рассылок Subscribe.Ru проекта Citycat.Ru

#048<<#049

СОВЕТ

Как резервировать оставшиеся в Transaction Log записи, если база Master и файлы пользовательской базы повреждены
По материалам статьи Microsoft Knowledge Base «How to Backup the Last Transaction Log When the Master and the Database Files Are Damaged»
Информация в этой статье относится к версиям Microsoft SQL Server 7.0 и 2000

Резервировать можно активный в настоящее время transaction log, даже если файл базы данных поврежден, но только при условии, что файл transaction log доступен (для Microsoft SQL Server 7.0, первичный файл данных и файлы transaction log должны быть доступны в том порядке, в каком они резервировались в последний активный transaction log). Если база данных master также повреждена (например, оба файла данных и устройство master находятся на поврежденных дисках), сначала восстанавливается база данных master, а затем резервируется последний активный transaction log повреждённой базы данных. Однако, если резервная копия базы данных master не доступна, Вы всё еще можете резервировать последний активный transaction log базы данных, используя ниже следующий метод, при условии, что первичный файл данных и файлы transaction log доступны (при использовании Microsoft SQL Server 7.0). При использовании Microsoft SQL Server 2000 должен быть доступен только transaction log.

Microsoft SQL Server 2000:

Если база данных master и файл данных пользовательской базы данных потеряны, но файл transaction log базы данных все еще доступен, Вы можете резервировать последний активный transaction log базы данных, чтобы максимально сократить потери данных. Для этого используйте следующую последовательность действий:

1. Переименуйте файлы transaction log.
2. Выполните Rebuild для базы данных master.
3. Создайте похожую, новую базу данных. Новая база данных не должна быть того же размера, но должна содержать то же самое число данных и журналов.
4. Остановите SQL Server.
5. Удалите все файлы данных недавно созданной базы данных так, чтобы это привело к регенерации (recovery)
Замените журналы новой базы данных первоначальными журналами так, чтобы у Вас появилась возможность резервировать transaction log.

Microsoft SQL Server 7.0:

1. Переименуйте первичный файл базы данных и имеющиеся файлы transaction log.
2. Выполните Rebuild для базы данных master.
3. Создайте похожую, новую базу данных. Новая база данных не должна быть того же размера, но должна содержать то же самое число данных и журналов.
4. Остановите SQL Server.
5. Удалите все файлы данных недавно созданной базы данных так, чтобы это привело к регенерации (recovery)
Замените первичный файл данных и журналы новой базы данных первоначальным так, чтобы у Вас появилась
возможность резервировать transaction log.
6. Перезапустите SQL Server.
7. Выполните представленную ниже команду для последних записей журнала регистрации транзакций:

Backup Log <database_name> to Disk = <device_name> With NO_TRUNCATE

8. Используйте хранимую процедуру sp_dbremove для удаления базы данных. Восстановите базу данных со всеми журналами.

ГОТОВИМСЯ К ТЕСТУ ПО 70-028

ШПАРГАЛКА #9 Продолжение (обзор официального курса Microsoft)
Архив шпаргалок Вы найдёте на следующих сайтах:
http://www.sql.ru/subscribe/
http://subscribe.ru/archive/comp.soft.winsoft.sqlhelpyouself

Мониторинг средствами Transact-SQL

Много полезной информации о работе сервера и состоянии его объектом можно получить включив в запрос специализированные хранимые процедуры, операторы, переменные или за счёт использования флагов трассировки.
Для начала, рассмотрим несколько системных хранимых процедур, с помощью которых можно изучать текущее состояние:
Sp_who – показывает текущих пользователей и процессы;
Sp_lock – показывает активные блокировки, заблокированные процессы и взаимоблокировки;
Sp_spaceused – показывает объём используемого дискового пространства таблицей или базой данных;
Sp_helpdb – показывает информацию о базах данных и их объектах;
Sp_monitor – показывает статистическую информацию о работе сервера, общее время обработки, число чтений и записи, количество подключений и т.п.;
Sp_helpindex – показывает информацию об индексах;
Sp_statistics – показывает информацию обо всех индексах выбранной таблицы.

Далее, рассмотрим некоторые глобальные переменные, позволяющие получить, как конкретные данные, так и статистику по запросам.
@@connections – счётчик подключений после последнего запуска сервера;
@@error – номер последней ошибки оператора T-SQL;
@@spid – идентификатор текущего пользовательского процесса (используется в Sp_who);
@@procid – идентификатор текущей хранимой процедуры.

Теперь, рассмотрим полезные для мониторинга операторы T-SQL.
SET STATISTICS IO – отображает информацию о величине дисковых операций, причиной которых стало исполнение оператора T-SQL;
SET STATISTICS TIME – время компиляции и выполнения операторов в миллисекундах;
SET SHOWPLAN_TEXT ON/OFF – выдаёт информацию об исполнении операторов и запрещает/разрешает серверу обрабатывать запрос.

Также, много полезного можно почерпнуть с помощью разнообразных операторов команды DBCC.
MEMUSAGE – показывает сколько в данный момент используется объектами к кэше данных и процедур;
SQLPERF – статистика сервера с момента запуска, LOGSPACE утилизация базами журналов транзакций, IOSTATS дисковые операции ввода-вывода, LRUSTATS утилизация памяти и кэшей, NETSTATS сетевые операции;
OPENTRAN – информация о самой старой активной транзакции (в т.ч. распределённые и не распределённые реплицированные транзакции) для указанной базы, если таковые существуют;
SHOW_STATISTICS – статистика использования индексов позволяющая определить необходимость их использования оптимизатором запросов;
CHECKDB – распределение и структурная целостность объектов базы данных;
CHECKFILEGROUP – распределение и структурная целостность таблиц в файлгруппе;
CHECKALLOC – распределение страниц данных и индексов для каждой таблицы, входящей в структуру экстентов базы данных;
CHECKTABLE – информация о целостности страниц данных и индексов выбранной таблицы, а также страниц типа TEXT, NTEXT и IMAGE.

И в завершение, с помощью представленных ниже флагов трассировки, можно устанавливать характеристики сервера, выявлять проблемы в его работе, отлаживать запросы и процедуры. Установить/снять флаги можно с помощью DBCC TRACEON/TRACEOFF.
302 – позволяет получить информацию об использовании страниц статистики, избирательности (если есть такая статистика), оценке возможного объёма физических и логических операций IO для индексов. Для удобочитаемости, можно использовать предложение SET SHOWPLAN ON. Для детализации фактического порядка объединения, используйте также флаг 310;
310 – позволяет получить порядок объединения;
325 – позволяет получить информацию о стоимости различных вариантов исполнения предложения ORDER BY (с не кластерным индексом или путём сортировки);
326 – позволяет получить информацию об оценочной и фактической стоимости операций сортировки;
330 – при использовании параметра SET SHOWPLAN (указывающего выдавать подробную информацию по операциям объединения), позволяет получать всю доступную информацию;
1204 – позволяет получить информацию о типе блокировки, которая стала причиной взаимоблокировки, а также текущий оператор, на исполнение которого это повлияло;
1205 – позволяет получить более подробную информацию об операторе, исполнявшемся во время возникновения взаимоблокировки;
1704 – позволяет получить информацию о создании и удалении временной таблицы;
3604 – при установке флагов только с помощью DBCC TRACEON/TRACEOFF, позволяет отправить вывод трассировки клиенту;
3605 – отправляет результаты трассировки в журнал ошибок. При запуске сервера из командной строки, вывод результатов трассировки будет осуществляется также и на экран;
8501 – записывает в журнал подробную информацию об изменениях контекста и состояния, связанных с DTC.

Продолжение следует.

ПОЛЕЗНОСТИ

Отчеты: DataReport
Автор: Сартин Вячеслав.
В Visual Basic 6 поставляется конструктор DataReport, являющийся визуальным средством для создания отчетов, который сильно интегрирован в IDE Visual Basic. Конструктор DataReport обеспечивает только основное функции. Его ни в коей мере нельзя назвать полно функциональным, но имеется одно очень существенное преимущество, он чрезвычайно прост в использование...[подробнее]

Журнал «SQL Magazine OnLine», #03/2001

Триггеры INSTEAD OF для представлений
Автор: Кэлен Дилани.
Истинное предназначение триггеров INSTEAD OF заключается в том, чтобы позволить вносить изменения в те представления, которые при иных условиях обновлять нельзя...[подробнее]
Защита таблиц SQL Server
Автор: Рик Добсон.
Как сформировать учетную запись поьзователя SQL Server из проекта Access...[подробнее]
SQL Server Profiler и приложения для Web
Автор: Кен Спенсер.
SQL Profiler поможет проследить за тем, как приложения взаимодействуют с сервером...[подробнее]
Простое решение комплексных проблем
Автор: Ицик Бен-Ган.
Пользовательские функции (UDF), реализованные Microsoft в SQL Server 2000, обеспечивают возможность построения изящных программных решений при выполнении обработки данных...[подробнее]
Модификация представлений триггерами INSTEAD OF
Автор: Кэлен Дилани, Ицик Бен-Ган.
Триггеры INSTEAD OF позволяют обойти некоторые ограничения, накладываемые на обновляемые представления.... [подробнее]
Трюки с триггерами INSTEAD OF
Автор: Ицик Бен-Ган.
Триггеры INSTEAD OF, впервые реализованные Microsoft в версии SQL Server 2000, позволяют заменить то действие по модификации данных, которое пользовать адресует таблице или представлению. Подобно триггерам AFTER, триггеры INSTEAD OF пользуются доступом к таблицам Inserted и Deleted. Триггеры AFTER имеют дело с двумя образами строк: до проведения изменений и после того как все модификации будут выполнены. Триггеры INSTEAD OF также оперируют двумя образами строк: исходным и конечным. Но в отличие ...[подробнее]
Средства исследования данных в SQL Server 2000. Часть 2.
Автор: Барри де Виль.
Продолжение рассказа о новых возможностях аналитических служб и применяемых алгоритмах...[подробнее]
Сила вычисляемых ячеек
Автор: Рас Уитни.
Вычисляемые ячейки, как и вычисляемые члены размерностей позволяют применять формулы, включающие условия... [подробнее]
Физическая реализация базы данных
Автор: Мишель Пуле.
На протяжении последних месяцев мы прошли весь путь моделирования базы данных. В первых статьях серии я рассказала, как собирать и идентифицировать требования к базе данных ("Моделирование данных" в SQL Server Magazine Online №2 за 2000 год), как разрабатывать модели потоков данных ("Моделирование процессов" в SQL Server Magazine Online №3 за 2000 год), а также рассмотрела модели сущностей и их взаимосвязей (статья "Моделирование сущностей" в SQL Server Magazine Online №4 за 2000 год). Затем я п...[подробнее]
Применение псевдовременных таблиц
Автор: Фернандо Герреро.
Как заставить SQL Server воспринимать наборы данных в качестве параметров...[подробнее]
Ответы на вопросы об XML
Автор: Рич Ролман.
В каких ситуациях целесообразно применять XML для решения стоящих задач...[подробнее]
Подсказки и советы
Автор: Брайан Моран.
Ответы на несколько вопросов, связанных с индексами, и еще на один...[подробнее]
Ответы от Microsoft
Автор: Ричард Веймир.
Руководитель команды разработчиков SQL Server в корпорации Microsoft отвечает на вопросы читателей...[подробнее]
Незамеченные команды
Автор: Майкл Оти.
Скромные утилититы командной строки позволяют задействовать сценарии Windows NT или VBScript...[подробнее]
Как ликвидировать процесс SQL Server
Автор: Павел Негриту.
Чтобы высвободить ресурсы, следует избавиться от "спящих" процессов...[подробнее]
Найти и восполнить
Автор: Уилл Хейни.
Вам необходимо найти записи, которые есть в таблице изменений, но отсутствуют в производственной таблице?... [подробнее]

НОВЫЕ ТЕХНИЧЕСКИЕ СТАТЬИ MICROSOFT

Installation and Customization of Microsoft Project Central
Q291263 - PRB: Custom Stored Procedure Resolvers Don't Fire When Conflict Involves UPDATE and DELETE
Q299299 - BUG: Export of Specific DBCS to Excel Fails When Text Type is Used
Q219264 - INF: Order of Installation for SQL Server 7.0 Clustering Setup
Q281293 - FIX: SQL Mail 2000 Needs Microsoft Outlook 2000 Client
Q290212 - INF: SQL Server 2000 Service Pack 1 Beta Fixlist
Q295727 - BUG: Object Browser May Not Reconnect After SQL Server Restart
Q298951 - FIX: Snapshot Agent for Merge Publication May Fail with 107 Error

ФОРУМ SQL.RU: ДЮЖИНА САМЫХ ПОПУЛЯРНЫХ ТОПИКОВ НЕДЕЛИ

Передача в запросе строки, формируемой из данных
Вопрос об определении последнего id
Как лучше написать запрос, для такой задачи .... ?
То ли сервер глюкавый, то ли руки кривые... HELP!
Уважаемые господа профи...
При UPDATE в рамках DirtyRead транзакции блокируется вся таблица?
Другие действия во время INSERT
Люди! Помогите! Нужен совет по репликации!
Временные таблицы и переменные-таблицы
Unpivoting table
Системные таблицы (пожалуйста, посоветуйте)
Передача в процедуру параметра типа table

ФОРУМ SQL.RU: ВОПРОСЫ ОСТАЛИСЬ БЕЗ ОТВЕТА

SqlServerAgent в SQL2000
Обработка ошибок в MS SQL Server 7.0
Мёртвые блокировки
Ntwdblib.dll, не доходят сообщения сервера?
Фильтр для ComboBox (SQL 2000, Access 2000 - проект)
Краткое описание на русском языке системных хранимых процедур SQL Server 2000
Соединение с сервером...
Backup & статистика
Как данные из sp_spaceused поместить в таблицу?
А как отлаживать хранимые процедуры?
xp_sendmail
Вопрос по репликации
SQL Server Upgrade Wizard в SQL 7.0
adodb.Recordset и форма A2k

#048<<#049


Вопросы, предложения, коментарии, замечания, критику и т.п. присылайте Александру на адрес: MSSQLHelp@pisem.net

sql.ru

Описание рассылки
 Поиск на SQL.RU
Искать: 
Результатов на странице: Формат:
Тип запроса: Раздел:
МИНИФОРМА
ПОДПИСКИ




http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться Relayed by Corbina
Рейтингуется SpyLog

В избранное