Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Database Page Verify  [new]
Lisichkin
Member

Откуда:
Сообщений: 499
Добрый день!
Имеется в наличии несколько баз, созданных в "давние времена".
Поэтому в опции баз данных "Page Verify" стоят значения или NONE или TORN_PAGE_DETECTION.

Помогите понять, какие действия необходимо провести над базами после перевода "Page Verify" в CHECKSUM (кроме выполнения проверки базы на наличие ошибка командой DBCC CHECKDB)?

С Уважением,
Александр.
12 фев 15, 14:09    [17255950]     Ответить | Цитировать Сообщить модератору
 Re: Database Page Verify  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
Lisichkin
какие действия необходимо провести над базами после перевода "Page Verify" в CHECKSUM

для чего? для поиска битых страниц или какая цель?
12 фев 15, 14:21    [17256034]     Ответить | Цитировать Сообщить модератору
 Re: Database Page Verify  [new]
Lisichkin
Member

Откуда:
Сообщений: 499
На текущий момент данные страниц не содержат контрольной суммы (Page Verify=NONE)

После перевода Page Verify в CHECKSUM, я читал, что только вновь создаваемые страницы будут содержать контрольные суммы - старые данные нет.
12 фев 15, 14:27    [17256082]     Ответить | Цитировать Сообщить модератору
 Re: Database Page Verify  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
Lisichkin
я читал, что только вновь создаваемые страницы будут содержать контрольные суммы - старые данные нет.

не только, ещё те, которые будут подняты в память, помечены грязными и скинуты на диск...
остальные останутся без изменений...и CHECKDB вам тут тоже не поможет для "старых страниц" никак
12 фев 15, 14:30    [17256117]     Ответить | Цитировать Сообщить модератору
 Re: Database Page Verify  [new]
Lisichkin
Member

Откуда:
Сообщений: 499
И что "Пива НЭТ? Совсем НЕТ?"

P.S. Только пожалуйста не предлагайте переливать данные в новыю базу....
12 фев 15, 14:33    [17256160]     Ответить | Цитировать Сообщить модератору
 Re: Database Page Verify  [new]
o-o
Guest
Lisichkin
После перевода Page Verify в CHECKSUM, я читал, что только вновь создаваемые страницы будут содержать контрольные суммы - старые данные нет.

старые не будут до момента их перезаписи обратно на диск.
а так все правильно.
а надо-то что?
12 фев 15, 14:34    [17256163]     Ответить | Цитировать Сообщить модератору
 Re: Database Page Verify  [new]
o-o
Guest
Lisichkin
И что "Пива НЭТ? Совсем НЕТ?"

P.S. Только пожалуйста не предлагайте переливать данные в новыю базу....

ну так не переливайте, перестройте вообще все индексы и кучи тоже,
благо в 2008 и им можно устроить REBUILD
12 фев 15, 14:36    [17256189]     Ответить | Цитировать Сообщить модератору
 Re: Database Page Verify  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
Lisichkin
И что "Пива НЭТ? Совсем НЕТ?"

P.S. Только пожалуйста не предлагайте переливать данные в новыю базу....


на сколько я понимаю, если ваша цель контрольная сумма на страницах с данными, то перестроить все индексы
12 фев 15, 14:37    [17256210]     Ответить | Цитировать Сообщить модератору
 Re: Database Page Verify  [new]
Lisichkin
Member

Откуда:
Сообщений: 499
Всем, спасибо.
После выполнения скрипта:

DECLARE @TableName VARCHAR(255)
DECLARE @sql NVARCHAR(500)
DECLARE @fillfactor INT
SET @fillfactor = 80
DECLARE TableCursor CURSOR FOR
SELECT OBJECT_SCHEMA_NAME([object_id])+'.'+name AS TableName
FROM sys.tables
OPEN TableCursor
FETCH NEXT FROM TableCursor INTO @TableName
WHILE @@FETCH_STATUS = 0
BEGIN
SET @sql = 'ALTER INDEX ALL ON ' + @TableName + ' REBUILD WITH (FILLFACTOR = ' + CONVERT(VARCHAR(3),@fillfactor) + ')'
EXEC (@sql)
FETCH NEXT FROM TableCursor INTO @TableName
END
CLOSE TableCursor
DEALLOCATE TableCursor
GO


Как мне проверить, что все страницы базы содержат контрольную сумму? Есть какая-нибудь команда DBCC??
12 фев 15, 15:02    [17256411]     Ответить | Цитировать Сообщить модератору
 Re: Database Page Verify  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
Lisichkin
Как мне проверить, что все страницы базы содержат контрольную сумму? Есть какая-нибудь команда DBCC??


все страницы не будут содержать контрольную сумму...команды на проверку наличия контрольной суммы на страницах - нет...только писать свой скрипт и парсить все страницы...утопия!
12 фев 15, 15:09    [17256456]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить