Entradas de] Mauro Bernal

Truncar Fecha en SQL Server

Porque trabajas todo el día con un motor MS SQL Server, y te toca cambiar los formatos de visualización de las fechas, aquí te dejo una ayuda memoria: De la siguiente manera es posible quitar las horas y los segundos a una fecha. select getdate() — La manera correcta (desde SQL Server 2008) select cast(getdate() […]

Reparar una base dañada de MS SQL Server

Últimamente me ha tocado quemarme las pestañas por casos de bases de datos dañadas. Una mala infraestructura, y/o un mal plan de backups termina provocando este tipo de post luego de sufrir por un rato… Reparar una base dañada El siguiente es un error común cuando se daña una base:Msg 824, Level 24, State 2, Line 11SQL Server detected a logical consistency-based I/O error: incorrect pageid (expected 1:49876; actual 17253:-991032068). It occurred during a read of page (1:49876) in database ID 15 at offset 0x000000185a8000 in file ‘E:\Bases\SBDAXXXX.MDF’.  Additional messages in the SQL Server error log or system event log may provide more detail. This is a severe error condition that threatens database integrity and must be corrected immediately. Complete a full database consistency check (DBCC CHECKDB). This error can be caused by many factors; for more information, see SQL Server Books Online. A continuación los pasos que […]

Listar Triggers

Como identificar las triggers que hay en tu base de datos Siempre es útil poder listar las triggers que tienes funcionando en tu server de producción. Para ellos es que surge el siguente script: SELECT O.name AS [Trigger] ,OBJECT_NAME(parent_obj) AS Tabla ,OBJECTPROPERTY( id,’ExecIsUpdateTrigger’) AS Es_Update ,OBJECTPROPERTY( id,’ExecIsDeleteTrigger’) AS Es_Delete ,OBJECTPROPERTY( id,’ExecIsInsertTrigger’) AS Es_Insert ,OBJECTPROPERTY( id,’ExecIsAfterTrigger’) […]

Directorio de Backup de MS SQL predeterminado

Restaurar backup es un proceso, que en algunos casos se debe desarrollar diariamente. Por ello es bueno optimizar los tiempos. A continuación un Tips para que al buscar el backup con el Microsoft SQL Server Management Studio les abra en un directorio que ustedes elijan. En este caso estoy trabajando con SQL Server 2008 R2 […]

Obtener Base Actual

Cuando trabajamos con campos calculados a veces es necesario incluir el nombre de la base sobre la que está realizando la consulta. De esta manera si realizamos esta misma consulta en varias veces, y unimos el resultado tendremos siempre un dato agrupador que nos identificará la base origen. Esta función es DB_NAME(). Ejemplo: select db_name() as […]

Listar Tamaño de las Bases de Datos

El siguiente script en TSQL lista todas las bases de datos con sus respectivos tamaños en Megas y Gigas. SELECT DB_NAME(db.database_id) DatabaseName, round((CAST(mfrows.RowSize AS FLOAT)*8)/1024,2) RowSizeMB, round((CAST(mflog.LogSize AS FLOAT)*8)/1024,2) LogSizeMB, round((CAST(mfrows.RowSize AS FLOAT)*8)/1024+(CAST(mflog.LogSize AS FLOAT)*8)/1024,2) DBSizeMB, round((CAST(mfrows.RowSize AS FLOAT)*8)/1024/1024+(CAST(mflog.LogSize AS FLOAT)*8)/1024/1024,2) DBSizeGB FROM sys.databases db LEFT JOIN (SELECT database_id, SUM(size) RowSize FROM sys.master_files WHERE type […]

Verificar Backups por TSQL

Verificar que se hayan realizado correctamente los backups es tarea fundamental de un DBA. Para ello contamos con una serie de tablas provistar por Microsoft SQL Server para almacenar dicha información: msdb.dbo.backupfile msdb.dbo.backupmediafamily msdb.dbo.backupmediaset msdb.dbo.backupset   Los siguientes scripts pueden facilitar dicha tarea. Más adelante trabajaremos con más detalle.   Atención:   Si copian y pegan […]