videos

Servidores SQL administrándose solos con políticas

Amigo DBA, vete de vacaciones tranquilo. Crea políticas (directivas) para que tus servidores SQL Server se administren por si solos. En este video te muestro las políticas que yo tengo en mis servidores y como crear las tuyas personalizadas.

Gracias a las políticas de SQL Server vamos a poder exigir el cumplimiento de las directivas que nosotros definamos para que todo siga funcionando como debería en nuestra ausencia. Podremos elegir entre evaluar cada una de las políticas a petición o bajo demanda y su comportamiento, por ejemplo, si van a dejar un log o a prevenir el cambio directamente.

Una vez creadas tus políticas podrás exportarlas e importarlas en el resto de tus servidores para no tener que repetir el trabajo. Esto último te lo muestro en el artículo de la semana pasada que puedes encontrar aquí. No esperes más y toma el control de tus servidores. Usa estas políticas para mantener la coherencia en tus esquemas, asegurar el cumplimiento de normativas internas o automatizar tus tareas.

Espero que te haya gustado el video, si es así por favor, deja tu me gusta y suscríbete al canal que nos ayuda mucho. Si quieres ver más videos como este puedes encontrarlos todos aquí. Si tenéis alguna duda o sugerencia, podéis dejarla en Twitter, por mail o dejarnos un mensaje en los comentarios. Y recuerda que también tenemos un grupo de Telegram al que te puede unir. En este grupo estamos creando una comunidad de usuarios y administradores de SQL Server donde cualquiera pueda preguntar sus dudas y compartir sus casos prácticos para que todos seamos mejores profesionales. ¡Hasta la próxima!

Publicado por Roberto Carrancio en SQL Server, Videos, 0 comentarios

SQL Ledger en video

Ya hablamos en este blog de la funcionalidad Ledger o Libro de Contabilidad de las bases de datos SQL aquí. Por eso, hoy he decidido dedicarle un vídeo para que podáis verlo en acción y comprobar como de útil puede ser para vosotros.

La función ledger o «libro de contabilidad» en SQL Server y Azure SQL registra operaciones de datos, incluyendo detalles del usuario, fecha, hora y tipo de operación. Cada registro está enlazado criptográficamente al anterior, creando una cadena inalterable. Cada registro tiene una firma digital, lo que previene modificaciones sin rastro. Esto permite auditar y verificar la historia de los datos, detectar manipulaciones y cumplir con normativas de seguridad. En Azure SQL, se ofrece un servicio adicional, Azure SQL Ledger, que añade una capa de seguridad almacenando los hashes del libro de contabilidad en un servicio externo basado en blockchain. Esto lo hace especialmente útil en entornos donde, por su criticidad, tenemos que llevar un control exhaustivo de los cambios realizados en los datos.

Espero que te haya gustado el video, si es así por favor, deja tu me gusta y suscríbete al canal que nos ayuda mucho. Si quieres ver más videos como este puedes encontrarlos todos aquí. Si tenéis alguna duda o sugerencia, podéis dejarla en Twitter, por mail o dejarnos un mensaje en los comentarios. Y recuerda que también tenemos un grupo de Telegram al que te puede unir. En este grupo estamos creando una comunidad de usuarios y administradores de SQL Server donde cualquiera pueda preguntar sus dudas y compartir sus casos prácticos para que todos seamos mejores profesionales. ¡Hasta la próxima!

Publicado por Roberto Carrancio en Cloud, SQL Server, Videos, 0 comentarios

MERGE: Una instrucción para dominar a todas (T-SQL Avanzado)

Hoy os he creado un video tutorial detallado sobre cómo usar la función MERGE en T-SQL. He intentado que el video sea una buena herramienta tanto para los principiantes que buscáis entender los fundamentos de MERGE, como para profesionales de SQL que deseen refrescar sus conocimientos.

En este video, desgloso los conceptos fundamentales de la función MERGE y te muestro cómo puedes utilizarla para combinar datos de dos tablas en SQL Server. Aprenderás a realizar operaciones de inserción, actualización y eliminación en una sola instrucción, lo que te permitirá manejar tus datos de manera más eficiente.

Merge

Casos de uso de MERGE

Además de enseñarte cómo usar MERGE, déjame contarte algunos escenarios comunes en los que la función MERGE puede serte especialmente útil. Principalmente la vas a usar para sincronización de tablas (como hemos visto en el video), actualización de datos basada en condiciones específicas o la combinación de datos de múltiples fuentes. Al entender estos casos de uso, podrás ver el verdadero poder de MERGE y cómo puede facilitar tu trabajo con SQL Server con un código más limpio y más eficiente.

Espero que te haya gustado el video, si es así por favor, deja tu me gusta y suscríbete al canal que nos ayuda mucho. Si quieres ver más videos como este puedes encontrarlos todos aquí. Si tenéis alguna duda o sugerencia, podéis dejarla en Twitter, por mail o dejarnos un mensaje en los comentarios. Y recuerda que también tenemos un grupo de Telegram al que te puede unir. En este grupo estamos creando una comunidad de usuarios y administradores de SQL Server donde cualquiera pueda preguntar sus dudas y compartir sus casos prácticos para que todos seamos mejores profesionales. ¡Hasta la próxima!

Publicado por Roberto Carrancio en SQL Server, Videos, 1 comentario

Cambiar propietario Jobs SQL

Cambiar el propietario de nuestros Jobs de SQL Server a priori es una tarea manual que debemos hacer uno a uno. Este es un proceso común cuando un usuario propietario de varios jobs abandona la compañía o cambia de rol y sus trabajos deben ser asignados a otra persona. Sin embargo, con un poco de conocimiento sobre las tablas y procedimientos de sistema de la MSDB y con código T-SQL dinámico vamos a poder automatizar el proceso.

Para cambiar automáticamente el propietario de todos los jobs de un usuario a otro usaremos el siguiente script. Como has podido ver en el video lo que hace es generar dinámicamente los procedimientos sp_update_job y sp_update_schedule con los parámetros necesarios para cada uno de los jobs y programaciones y el nuevo propietario. Para ello hace uso de las tablas de la base de datos msdb sysjobs, sysjobsschedules y sysschedules cruzando estas con la vista syslogins de master donde encontraremos los logins. De esta manera podemos localizar fácilmente los jobs que pertenecían al antiguo usuario y que debemos cambiar el propietario.

Espero que te haya gustado el video, si es así por favor, deja tu me gusta y suscríbete al canal que nos ayuda mucho. Si quieres ver más videos como este puedes encontrarlos todos aquí. Si tenéis alguna duda o sugerencia, podéis dejarla en Twitter, por mail o dejarnos un mensaje en los comentarios. Y recuerda que también tenemos un grupo de Telegram al que te puede unir. En este grupo estamos creando una comunidad de usuarios y administradores de SQL Server donde cualquiera pueda preguntar sus dudas y compartir sus casos prácticos para que todos seamos mejores profesionales. ¡Hasta la próxima!

Publicado por Roberto Carrancio en Cloud, SQL Server, Videos, 0 comentarios

Arreglar CORRUPCIÓN en Base de datos SQL

¿Alguna vez te has encontrado con una base de datos de SQL Server corrupta? En ocasiones podemos encontrar errores de corrupción en bases de datos que se han estropeado debido a un apagado en mitad de una transacción que no ha podido revertirse o a algún otro error de sistema. Cuando esto pasa lo normal es realizar una reparación de la base de datos que elimina los registros erróneos solucionando así el problema. Esto, sin embargo, no parece la mejor de las soluciones y por eso, hoy os traigo una forma de recuperar solo las páginas dañadas desde un backup.


Es importante destacar que esta solución a la corrupción de bases de datos solo la podremos tomar si tenemos un modo de recuperación distinto al simple pues requiere de hacer y restaurar backups de logs. Si este es tu caso estás de suerte.

Paso a paso para recuperar la corrupción

Lo primero que debes hacer es localizar las páginas dañadas haciendo un DBCC CHECKDB, después haz un backup log para salvar todos los cambios al momento actual. Cuando hayas completado el backup log podrás restaurar solo las páginas afectadas del último backup full y hacer otro backup log. En este paso solo te queda restaurar los backup log hasta justo antes de restaurar el backup FULL. Por último restaura el de exactamente después poniendo ya la base de datos online (WITH RECOVERY). De esta manera habrás conseguido salvar la información y solventar el error sin pérdida de datos.

Espero que te haya gustado el video, si es así por favor, deja tu me gusta y suscríbete al canal que nos ayuda mucho. Si tenéis alguna duda o sugerencia, podéis dejarla en Twitter, por mail o dejarnos un mensaje en los comentarios. Y recuerda que también tenemos un grupo de Telegram al que te puede unir. En este grupo estamos creando una comunidad de usuarios y administradores de SQL Server donde cualquiera pueda preguntar sus dudas y compartir sus casos prácticos para que todos seamos mejores profesionales. ¡Hasta la próxima!

Publicado por Roberto Carrancio en SQL Server, Videos, 0 comentarios

Reducir el tamaño de bases de datos SQL

En esta ocasión vengo a explicaros como puedes hacer para reducir el espacio que ocupan nuestras bases de datos liberando el espacio libre que hay en los ficheros. Para ello, tendremos que hacer un Shrink de los ficheros de base de datos. Tendrás que hacerlo tanto en el ficheros de datos como en el de log (o en el que sepamos que existe un problema).

Evita siempre que puedas la operación de reducir de ficheros, sobre todo en los ficheros de datos, ya que consume muchos recursos del servidor y además va a empeorar el rendimiento de nuestra base de datos. Si no queda más remedio o si has eliminado tanta información que merezca la pena hacerlo, ten la precaución de programarlo fuera de horas de trabajo y de reconstruir los índices fragmentados una vez termines.

En los ficheros de log, como en los de TempDB no vas a tener los problemas de fragmentación pero si de consumo de recursos por lo que aunque no tengamos que ser tan estrictos si debemos intervenir con la debida precaución.

Puedes encontrar los script que he usado en el video aquí. Espero que te haya gustado el video, si es así por favor, deja tu me gusta y suscríbete al canal que nos ayuda mucho. Si tenéis alguna duda o sugerencia, podéis dejarla en Twitter, por mail o dejarnos un mensaje en los comentarios. Y recuerda que también tenemos un grupo de Telegram al que te puede unir. En este grupo estamos creando una comunidad de usuarios y administradores de SQL Server donde cualquiera pueda preguntar sus dudas y compartir sus casos prácticos para que todos seamos mejores profesionales. ¡Hasta la próxima!

Publicado por Roberto Carrancio en Cloud, SQL Server, Videos, 0 comentarios

Detectando BLOQUEOS en SQL Server y Azure SQL

Cuando trabajamos con bases de datos SQL Server, los bloqueos pueden ser una de las características de implementación que más dolores de cabeza nos pueden dar como DBAs. A los usuarios también, por supuesto, pero ellos trasladarán sus quejas a nosotros.

Por esto, en el vídeo de hoy, te enseño a detectar bloqueos en SQL Server o Azure SQL. Gracias a procedimientos integrados de sistema como sp_who o sp_who2 podremos verlo de una forma muy básica. Si queremos más nivel de detalle podremos recurrir a procedimientos de terceros como sp_who3, sp_whoisactive o sp_BlitzWho.

Si queremos detectar un bloqueo de una forma rápida y ligera, los procedimientos de sistema sp_who y sp_who2 son un gran aliado. Sin embargo, la información que nos van a mostrar es más bien justa. Si tenemos ocasión, siempre será recomendable de recurrir a procedimientos más completos como los citados en el vídeo.

También podremos hacer uso del siguiente script que nos muestra los procesos con bloqueos:

Como ves, el script hace uso de las vistas de administración dinámica de sistema sys.dm_exec_request y sys.sysprocesses para localizar los bloqueos. Además de la función sys.dm_exec_sql_text para devolver el texto de la consulta que está ejecutando esa sesión. En determinadas ocasiones, dependiendo del bloqueo, es posible que este script no resuelva debido a la función. En esos casos comenta esa parte del código para por lo menos localizar los bloqueos.

Espero que te haya gustado el video, si es así por favor, deja tu me gusta y suscríbete al canal que nos ayuda mucho. Si tenéis alguna duda o sugerencia, podéis dejarla en Twitter, por mail o dejarnos un mensaje en los comentarios. Y recuerda que también tenemos un grupo de Telegram al que te puede unir. En este grupo estamos creando una comunidad de usuarios y administradores de SQL Server donde cualquiera pueda preguntar sus dudas y compartir sus casos prácticos para que todos seamos mejores profesionales. ¡Hasta la próxima!

Publicado por Roberto Carrancio en Cloud, Rendimiento, SQL Server, Videos, 0 comentarios