powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / FILEPROPERTY(name, 'SpaceUsed')
16 сообщений из 16, страница 1 из 1
FILEPROPERTY(name, 'SpaceUsed')
    #39700922
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выполняется реиндекс и шринк базы данных, после чего нужно посмотреть размер ее файлов. Пытаюсь это сделать следующим образом:

Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT name,
		file_size = 8 * size,
		free = 8 * (size - FILEPROPERTY(name, 'SpaceUsed')),
		autogrowth = 8 * 2 * CASE is_percent_growth WHEN 0 THEN growth ELSE growth * size / 100 END
	FROM sys.database_files
	WHERE growth > 0
	ORDER BY [type], name



Вроде работает, но если запускать данный запрос сразу, то значение free будет неверным. С задержкой 10 секунд (для моей тестовой базки) - результат возвращается правильный.

Собственно вопрос - каким образом можно заставить FILEPROPERTY(name, 'SpaceUsed') вернуть правильный результат сразу? Ну или кто знает иное решение?
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39700939
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrF Выполняется реиндекс и шринк базы данных , после чего нужно посмотреть размер ее файлов.
бессмысленное мероприятие, если только вы не отрезаете свободное место в хвосте файла
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39700944
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
komradбессмысленное мероприятие, если только вы не отрезаете свободное место в хвосте файла

Мне нужно определиться - нужно ли делать шринк данного файла после произведенных операций.
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39700946
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFkomradбессмысленное мероприятие, если только вы не отрезаете свободное место в хвосте файла

Мне нужно определиться - нужно ли делать шринк данного файла после произведенных операций.
так ответ и так известный
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39700956
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaKтак ответ и так известный

Далеко не однозначно.
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39700974
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39700990
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
komrad,

Про фрагментацию индексов известно ( вот, к примеру ), но это решается довольно просто - выполнением INDEX_REORGANIZE для таблиц с высокой фрагментацией.

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

Проблема в том что FILEPROPERTY(name, 'SpaceUsed')) в данной ситуации возвращает правильное значение лишь через некоторое время...
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39700991
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
komrad,

Про фрагментацию индексов известно ( вот, к примеру ), но это решается довольно просто - выполнением INDEX_REORGANIZE для таблиц с высокой фрагментацией.

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

Проблема в том что FILEPROPERTY(name, 'SpaceUsed')) в данной ситуации возвращает правильное значение лишь через некоторое время...
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39700994
WarAnt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrF,

DBCC UPDATEUSAGE
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39700995
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WarAntAndrF,

DBCC UPDATEUSAGE

Пробовал - не помогает :(
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39700997
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFПро фрагментацию индексов известно ( вот, к примеру ), но это решается довольно просто - выполнением INDEX_REORGANIZE для таблиц с высокой фрагментацией.Не путайте внутреннюю и внешнюю фрагментацию.
Shrink порождает внешнюю, reorganize убирает внутреннюю.
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39701002
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
invmНе путайте внутреннюю и внешнюю фрагментацию.
Shrink порождает внешнюю, reorganize убирает внутреннюю.

Хм. А где это написано? Вроде он должен работать с уже имеющимся файлом. Или я ошибаюсь, тогда где почитать?

Если ошибаюсь, то какое из зол лучше?
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39701006
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFтогда где почитать? https://blog.devart.com/sql-server-index-fragmentation-in-depth.html

Заезженная рекомендация "опытных собаководов" - если уж и делать shrink. то с опцией truncateonly.
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39701035
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
invmAndrFтогда где почитать? https://blog.devart.com/sql-server-index-fragmentation-in-depth.html

Заезженная рекомендация "опытных собаководов" - если уж и делать shrink. то с опцией truncateonly.

В свойствах диска настроена автоматическая дефрагментация файлов раз в неделю. Так что внешняя выправится, пусть и не сразу (сейчас она, кстати, 0% у файла базы в 3,7 ТБ).

Просто он уже вылез за допустимый предел мониторинга и потому дюже хочется его уменьшить.

Ну ладно, этот-то сделаем ручками.

Но на будущее дюже хотелось бы разобраться с вопросом...
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39701054
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFНо на будущее дюже хотелось бы разобраться с вопросом...Для этого нужно внимательно читать предлагаемые материалы.
Чтобы не писать подобное:AndrFВ свойствах диска настроена автоматическая дефрагментация файлов раз в неделю. Так что внешняя выправится
...
Рейтинг: 0 / 0
FILEPROPERTY(name, 'SpaceUsed')
    #39701067
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFinvmесли уж и делать shrink. то с опцией truncateonly.

В свойствах диска настроена автоматическая дефрагментация файлов раз в неделю. Так что внешняя выправится, пусть и не сразу:-)
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / FILEPROPERTY(name, 'SpaceUsed')
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]