Buenas tardes queridos lectores, el día de hoy les traigo un post muy básico, pero útil en determinadas circunstancias, cuando queremos saber la versión de SQL de la instancia; recordemos que podemos tener múltiples instancias de base de datos, y nos interesaría saber la versión de la instancia actual
Aqui encontrarás las respuestas que estabas buscando acerca de lo relacionado con TI
Como saber la versión de SQL que tengo
Login failed SQL SERVER Error 18456
Buenas noches queridos lectores, en este día de inicio de primavera, les traigo este post con un error muy simple, pero que puede ser complicado de diagnosticar.
Introducción
Cambiar Primary Key NonClustered a Clustered en SQL SERVER
Buenas tardes queridos lectores, regresamos a escribir acerca de SQL SERVER, y les plantearé el siguiente problema:
Cuando se creó una base de datos, crearon las llaves primarias como NonClustered, eso está correcto si vas a utilizar otro índice que sea Clustered, sin embargo, en este caso no hay indice clustered en la tabla, por lo que ahora se desea que la llave primaria ahora sea clustered, así que lo que tenemos que hacer el eliminar la llave primaria NonClustered, para después crearla nuevamente, pero ahora como Clustered.
Tablas en memoria RAM SQL SERVER
Buenas tardes queridos lectores, el día de hoy les traigo un post sobre las tablas en memoria en SQL SERVER. Las tablas en memoria comenzaron desde SQL SERVER 2012, y mejoraron en las siguientes versiones.
Les dejo también un video más explicativo
Error de instancia SQL SERVER por falta de memoria
Configurar memoria máxima SQL SERVER
![]() |
| Configurar memoria máxima en SQL SERVER |
Problema al asignar un máximo de memoria menor al requerido
Identity SQL Server se incrementa en 1000
Buenas tardes queridos lectores, el día de hoy veremos lo que llamaremos un "bug" en SQL SERVER que tiene que ver con la identidad, es decir un campo Identity que de la nada se incrementa en mil, y no sabemos porque, pues aquí tendrán la respuesta.
En ocasiones podemos apreciar que el campo Identity en SQL SERVER puede aumentar en 1000 (mil) posiciones en un campo int o 10000 (diez mil) en un campo bigint, esto se da a partir de la versión 2012 de SQL SERVER y esto es porque SQL SERVER reserva en cache un espacio de estas posiciones, por lo que, en caso de reinicio estos valores se desperdician.
Guardar resultado de TOP a variable
Buenas tardes queridos lectores, el día de hoy les traigo este post, y hablaremos sobre como guardar en una variable el resultado de una consulta con la clausula TOP, en ocasiones nos resultará útil una consulta de este tipo, y con mayor razón guardarla en una variable, aunque no siempre es tan sencillo.
Restaurar base de datos master SQL SERVER
Como buenos DBA que somos debemos prepararnos para lo peor como por ejemplo que el servidor donde está nuestra base de datos colapse. Ciertamente serán muy pocas veces las que necesitaremos restaurar el la base de datos master, pero como les dije, hay que estar preparado para todo. Pues bien, vamos a empezar.
The DELETE statement conflicted with the REFERENCE constraint "FK_subplan_job_id" SQL SERVER
Buenos días queridos lectores, el día de hoy veremos como eliminar un job que ha sido creado desde un plan de mantenimiento y el cual no es posible eliminar por un error en la llave foránea, pero bien, entremos en materia
Eliminar job creado desde un plan de mantenimiento
Respaldar JOBS en SQL SERVER - Respaldar y Restaurar msdb
Buen día en este último día de marzo de 2022 queridos lectores, el día de hoy les traigo un post acerca de como respaldar y restaurar los jobs de una instancia, y dicho sea de paso, también como respaldar y restaurar la base de datos msdb.
¿Qué es la base de datos msdb?
¿Como crear un job?
¿Como respaldar los jobs?
BACKUP DATABASE [msdb] TO
DISK = N'D:\msdb_bak.bak' WITH NOFORMAT,
NOINIT, NAME = N'msdb-Full Database Backup', SKIP, NOREWIND, NOUNLOAD,
STATS = 10
GO
Eliminar job
USE msdb ;
GO
EXEC sp_delete_job
@job_name = N'Job de Prueba' ;
GO
Ahora procedemos a restaurar los jobs restaurando la base de datos msdb
¿Como restaurar los jobs?
USE [master]
RESTORE DATABASE [msdb] FROM
DISK = N'D:\msdb_bak.bak'
WITH FILE = 1,
NOUNLOAD, STATS = 5
GO
Al ejecutar este query obtendremos el siguiente resultado:
Msg 3101, Level 16, State 1, Line 2
Exclusive access could not be obtained
because the database is in use.
Msg 3013, Level 16, State 1, Line 2
RESTORE DATABASE is terminating
abnormally.
Completion time:
2022-03-31T13:23:21.3588502-06:00
El resultado de este query nos muestra un error, que nos indica que la base de datos está en uso, esto es correcto, debido a que el Agente SQL esta en ejecución, por lo cual procedemos a detener el agente.
Ahora volvemos a ejecutar el query del restore y obtendremos el siguiente resultado:
Una ves restaurada la base de datos procedemos a iniciar el servicio del agente y a corroborar que los jobs se han restaurado:
También veremos que la historia de ejecución de JOB se conserva:
Como podemos observar la historia de ejecución también se restauró debido a que esta almacenada dentro de la misma base de datos.
Hasta aquí el post queridos lectores, espero haya sido de su agrado y de utilidad, espero compartan, comenten y cualquier duda estamos a la orden.
Les dejo un video para mayor claridad
Saludos
Operating system error 5(Access is denied.). [SQLSTATE 42000] (Error 3201) BACKUP DATABASE is terminating abnormally. [SQLSTATE 42000] (Error 3013)
Buenos dias queridos lectores, el día de hoy volveremos a hablar sobre SQL SERVER, ahora con un error que me apareció al querer realizar un respaldo en una carpeta en la RED.
Cuando queremos realizar un respaldo en la red, aparece el siguiente error que les muestro a continuación:
Operating system error 5(Access is
denied.). [SQLSTATE 42000] (Error 3201)
BACKUP DATABASE is terminating abnormally. [SQLSTATE 42000] (Error 3013)
Tablas temporales en SQL SERVER
Buenas noches queridos lectores, el día de hoy veremos un tema útil acerca de las tablas temporales.
Las tablas temporales, son tablas que son escritas en la base de datos tempdb, solo permanecen en memoria, mientras la instancia esta activa o se limpia la caché, es importante eliminar las tablas temporales cuando ya no las estemos utilizando para liberar memoria, pues bien comencemos a hacer tablas temporales que es lo que nos gusta y como aprendemos
Estados de una base de datos SQL SERVER
Una base de datos siempre se encuentra en un estado específico. Esos estados pueden ser ONLINE, OFFLINE, SUSPECT, etc. Se puede comprobar el estado de la base de datos, mediante alguna sentencias T-SQL, y también mediante entorno gráfico.
Ejecutar la misma consulta a todas las bases de Datos SQL SERVER
En ocasiones necesitamos realizar el mismo query en todas las bases de datos de un servidor. Imaginemos un servidor que tiene muchas bases de datos, cada base de datos es una sucursal, y nos gustaría saber, en que base de datos hay empleados dados de alta y en cual no, esto para saber que base de datos sobra y poderla borrar, o para lo que se les ocurra.
Cambiar nombre a columna de tabla SQL SERVER
En ocasiones es necesario cambiar el nombre de una columna en una tabla de base de datos SQL SERVER, ya sea porque nos equivocamos en el nombre y hasta ahora nos dimos cuenta, o, por funcionalidad misma del programa. Es lógico pensar que ese cambio se realice con una sentencia ALTER, sin embargo, para este caso no es así, existe un stored procedure del sistema, que nos permite realizar ésta acción, pero vamos a pasar a lo interesante y a lo que nos
gusta que es hacerlo.
Desactivar llaves foráneas en SQL SERVER
En algunos casos, sobre todo en bases de datos de prueba, es necesario desactivar las restricciones de alguna tabla para poder realizar algunas pruebas, y, aunque las restricciones nos sirven precisamente para guardar la integridad de la información, habrá algunos casos especiales en que necesitemos brincarnos la protección.
LOG Shipping (Transvase de Registros) en SQL SERVER
Log Shipping es una técnica de alta disponibilidad y recuperación de desastres que nos permitirá, restaurar una base de datos almacenada en otra instancia con el log de transacciones de la primera, de manera que siempre existan dos bases de datos, relativamente iguales, no confundir con las bases de espejo, ya que esa es una técnica distinta con características distintas.
No se puede borrar usuario en una base de datos
Buenas tardes queridos lectores, feliz día de muertos, el día de hoy les mostraré como borrar un usuario de la base de datos que se resiste a ser eliminado.
Los escenarios pueden ser diversos, pero en el escenario que a mi me sucedió fue que restaure una base de datos en otro servidor, lo que me ocasionó usuarios huérfanos, por lo cual, me disponía a borrar y volver a crear
Auditoria en SQL SERVER
Buenas tardes queridos lectores, el día de hoy les traigo la manera de realizar una auditoria en SQL SERVER, imaginemos que hay datos que se borran, y nadie sabe quien fue, y obviamente el culpable aventará la piedra y esconderá la mano, pues bien, con este método sabremos quien fue el responsable de que los datos se borraran, así que acompáñenme a revisar este post.
Code Snippets en el Management Studio de SQL Server
Vamos a observar algunos snippets que ya vienen instalados predeterminadamente en Management Studio y como utilizarlos.
Para utilizar los snippets, debemos presionar las teclas Ctrl + K + S o X, depende lo que queramos hacer, ya que existen dos tipos de snippets. Primero presionaremos Ctrl + K + X para crear un fragmento de código.
Featured Post
Permitir ping en firewall de Windows
Buenos días queridos lectores, ya mucho tiempo sin escribir nada, el día de hoy les mostraré como habilitar el ping en el firewall de Windo...

























