Espacio inutilizado de los datafiles, ¿ como calcularlo?

29/08/2005 - 17:35 por Claudia Villatoro | Informe spam
hola, buen dia a todos,

nuevamente traigo esta inquietud y espero vuestra ayuda

lo que necesito es conocer por datafiles el espacio inutilizado por
datafiles, no por base de datos, esto porque estoy diseñando un
procedimiento que cuando haya mucho espacio inutilizado entonces envie
alertas, al consultar el procedimiento sp_spaceused me da de la base de
datos (supongo que incluye los logs y no me sirve asi) por otro lado cuando
comparo los valores del sp_spaceused versus los tamaños que reporta el
entreprise hay inconsistencia,

lo quenecesito es saber de donde tomar los valores que aparece como espacio
utilizado por datafiles asi como sale cuando hacemos el shrink


Ubicacion :
Tamaño Actual : 81.00 MB
Espacio Utilizado : 74 MB


espero puedan ayudarme, sldes y feliz dia !!!!

Preguntas similare

Leer las respuestas

#1 Ricardo I. Pacheco H.
29/08/2005 - 19:37 | Informe spam
select * from sysfiles

"Claudia Villatoro" escribió en el mensaje
news:
hola, buen dia a todos,

nuevamente traigo esta inquietud y espero vuestra ayuda

lo que necesito es conocer por datafiles el espacio inutilizado por
datafiles, no por base de datos, esto porque estoy diseñando un
procedimiento que cuando haya mucho espacio inutilizado entonces envie
alertas, al consultar el procedimiento sp_spaceused me da de la base de
datos (supongo que incluye los logs y no me sirve asi) por otro lado


cuando
comparo los valores del sp_spaceused versus los tamaños que reporta el
entreprise hay inconsistencia,

lo quenecesito es saber de donde tomar los valores que aparece como


espacio
utilizado por datafiles asi como sale cuando hacemos el shrink


Ubicacion :
Tamaño Actual : 81.00 MB
Espacio Utilizado : 74 MB


espero puedan ayudarme, sldes y feliz dia !!!!


Respuesta Responder a este mensaje
#2 Alejandro Mesa
29/08/2005 - 22:53 | Informe spam
Claudia,

Esa info no se guarda, debes calcularla. Chequea el texto del procedimiento
sp_spaceused para que veas como microsoft lo hace. en cuanto a las
inconsistencias, debes actualizar la info sobre espacio usado, lo cual puedes
hacer usando:

- dbcc updateusage

ó

- sp_spaceused @updateusage = 'true'

Al parecer debemos restar el tamaño reservado de las entradas en sysindexes
para indid = 0, 1, 255 (ve sysindexes en los libros en linea para mas info)
del tamaño del archivo de data. Si la bd tiene solamente un archivo mdf,
entonces es facil, de lo contrario habria que restarle a cada archivo de data
el tamaño reservado de las entradas en sysindexes que estan en ese archivo.


Ejemplo: -- bd con un solo archivo de data

use bd
go

declare @bytesperpage dec(15,0)
declare @pagesperMB dec(15,0)

select
@bytesperpage = low
from
master.dbo.spt_values
where
number = 1
and type = 'E'

select @pagesperMB = 1048576 / @bytesperpage

select
[name],
ltrim(str([size] / @pagesperMB,15,2) + ' MB') file_size,
ltrim(str(([size] - (select sum(convert(dec(15),reserved)) from sysindexes
where indid in (0, 1, 255))) / @pagesperMB,15,2)+ ' MB') as 'unallocated
space'
from
sysfiles
where
groupid != 0
go


AMB

"Claudia Villatoro" wrote:

hola, buen dia a todos,

nuevamente traigo esta inquietud y espero vuestra ayuda

lo que necesito es conocer por datafiles el espacio inutilizado por
datafiles, no por base de datos, esto porque estoy diseñando un
procedimiento que cuando haya mucho espacio inutilizado entonces envie
alertas, al consultar el procedimiento sp_spaceused me da de la base de
datos (supongo que incluye los logs y no me sirve asi) por otro lado cuando
comparo los valores del sp_spaceused versus los tamaños que reporta el
entreprise hay inconsistencia,

lo quenecesito es saber de donde tomar los valores que aparece como espacio
utilizado por datafiles asi como sale cuando hacemos el shrink


Ubicacion :
Tamaño Actual : 81.00 MB
Espacio Utilizado : 74 MB


espero puedan ayudarme, sldes y feliz dia !!!!



Respuesta Responder a este mensaje
#3 Claudia Villatoro
30/08/2005 - 19:30 | Informe spam
muchas gracias !!!


"Alejandro Mesa" escribió en el
mensaje news:
Claudia,

Esa info no se guarda, debes calcularla. Chequea el texto del
procedimiento
sp_spaceused para que veas como microsoft lo hace. en cuanto a las
inconsistencias, debes actualizar la info sobre espacio usado, lo cual
puedes
hacer usando:

- dbcc updateusage

ó

- sp_spaceused @updateusage = 'true'

Al parecer debemos restar el tamaño reservado de las entradas en
sysindexes
para indid = 0, 1, 255 (ve sysindexes en los libros en linea para mas
info)
del tamaño del archivo de data. Si la bd tiene solamente un archivo mdf,
entonces es facil, de lo contrario habria que restarle a cada archivo de
data
el tamaño reservado de las entradas en sysindexes que estan en ese
archivo.


Ejemplo: -- bd con un solo archivo de data

use bd
go

declare @bytesperpage dec(15,0)
declare @pagesperMB dec(15,0)

select
@bytesperpage = low
from
master.dbo.spt_values
where
number = 1
and type = 'E'

select @pagesperMB = 1048576 / @bytesperpage

select
[name],
ltrim(str([size] / @pagesperMB,15,2) + ' MB') file_size,
ltrim(str(([size] - (select sum(convert(dec(15),reserved)) from sysindexes
where indid in (0, 1, 255))) / @pagesperMB,15,2)+ ' MB') as 'unallocated
space'
from
sysfiles
where
groupid != 0
go


AMB

"Claudia Villatoro" wrote:

hola, buen dia a todos,

nuevamente traigo esta inquietud y espero vuestra ayuda

lo que necesito es conocer por datafiles el espacio inutilizado por
datafiles, no por base de datos, esto porque estoy diseñando un
procedimiento que cuando haya mucho espacio inutilizado entonces envie
alertas, al consultar el procedimiento sp_spaceused me da de la base de
datos (supongo que incluye los logs y no me sirve asi) por otro lado
cuando
comparo los valores del sp_spaceused versus los tamaños que reporta el
entreprise hay inconsistencia,

lo quenecesito es saber de donde tomar los valores que aparece como
espacio
utilizado por datafiles asi como sale cuando hacemos el shrink


Ubicacion :
Tamaño Actual : 81.00 MB
Espacio Utilizado : 74 MB


espero puedan ayudarme, sldes y feliz dia !!!!



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida