Gestionar el acceso a bases de datos SQL Server puede ser una tarea compleja, pero con la integración de grupos externos, podemos simplificar este proceso. En este artículo, te guiaré a través de los pasos para añadir grupos externos utilizando varios proveedores, desde Azure AD, LDAP, Okta, PingIdentity, Google Workspace.
Leer másCategoría: Bases de datos
SQL Server: Cheat Sheet para Desarrolladores y Administradores
Introducción a SQL:
¿Qué es SQL? SQL (Structured Query Language) es un lenguaje de programación diseñado para gestionar y manipular datos almacenados en sistemas de gestión de bases de datos relacionales (RDBMS). Con SQL, puedes realizar diversas operaciones, desde consultas básicas hasta tareas avanzadas de administración de bases de datos.
¿Por qué SQL es Importante? En el corazón de muchas aplicaciones y sistemas, SQL desempeña un papel crucial al permitir a los desarrolladores o administradores interactuar con bases de datos de manera eficiente. Con SQL, puedes extraer información específica, realizar actualizaciones, insertar datos y mucho más.
Estructura de la Guía:
-
Conexión a la Base de Datos: Iniciaremos nuestro viaje aprendiendo cómo conectarnos a una base de datos, estableciendo los cimientos para nuestras futuras operaciones.
-
Consultas Básicas: Exploraremos cómo realizar consultas simples a una sola tabla, aplicando condiciones, ordenando resultados y resumiendo datos.
-
Manipulación de Datos: Aprenderemos a insertar, actualizar y eliminar datos, habilidades esenciales para la gestión efectiva de información.
-
Funciones Útiles: Descubriremos funciones incorporadas que nos ayudarán a extraer información valiosa de nuestras bases de datos.
-
Optimización de Consultas: Mejoraremos la eficiencia de nuestras consultas, utilizando índices y prácticas recomendadas.
-
Administración y Mantenimiento: Exploraremos comandos clave para respaldar, restaurar y monitorear nuestras bases de datos.
-
Ampliando el Cheat Sheet con Ejemplos Prácticos: Abordaremos situaciones más complejas, desde la copia de bases de datos hasta la gestión avanzada de permisos.
Backup de MySQL en Azure Utilizando Azure Automation
Introducción
La seguridad y la disponibilidad de los datos son elementos fundamentales en cualquier infraestructura tecnológica. En este artículo, detallaremos el proceso de configuración de un backup automatizado para una base de datos MySQL alojada en una máquina virtual (VM) Linux en Azure. Utilizaremos Azure Automation y una Identidad Administrada por Usuario (UMI) para lograr una autenticación segura y eficiente.
backup Incremental y Full
Una de las características destacadas de este script es su capacidad para realizar backups incrementales diarios, seguidos de un full backup los domingos. Esto se logra gracias a la configuración del Binary Log en MySQL, que permite identificar y respaldar solo las actualizaciones realizadas desde el último backup.
Personalización del Horario de backup
Si deseas modificar el horario de los backups incrementales, especialmente si no deseas realizar el full backup solo los domingos, el script es altamente personalizable. Los parámetros dayOfWeek
y dayfullbackup
te permiten ajustar fácilmente estos horarios según tus necesidades.
Cluster PostgreSQL 13
En esta ocasión veremos como instalar y configurar un cluster en alta disponibilidad de base de datos bajo PostgreSQL 13.
n primer lugar agregamos el repositorio
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql-pgdg.list > /dev/null
Leer más
Configurar autenticación de Active Directory en PostgreSQL
Para configurar correctamente la autenticación con Active Directory, necesitamos crear un usuario en Active Directory que tenga una relación de uno a uno con un rol de PostgreSQL. En otras palabras, necesitamos crear un usuario en cada sistema con el mismo nombre de inicio de sesión.
En primer lugar creamos el rol en Postgres
Leer másCambiar la ubicación de la carpeta de datos de PostgreSQL
Antes de cambiar la ubicación de los datos de PostgreSQL, primero verificaremos la configuración actual en el servidor PostgreSQL.
Leer másFATAL [search_phase_execution_exception] all shards failed :: {«path»:»/.kibana/doc/
En este POST veremos como solucionar este problema al iniciar Kibana, para solventarel problema creé un nuevo indice vació y mapee el antiguo al nuevo creado.
Al realizar un status del servicio podemos ver los siguientes errores:
May 24 11:29:01 kibana kibana[5107]: ason\":\"all shards failed\",\"phase\":\"query\",\"grouped\":true,\"failed_shards\":[]},\"status\":503}',\n toStrin
May 24 11:29:01 kibana kibana[5107]: FATAL [search_phase_execution_exception] all shards failed :: {"path":"/.kibana/doc/_count","query":{},"body":"{\
Leer más
MySQL [ERROR] Can’t init tc log
Al intentar iniciar el servicio de mariadb comprobamos que no inicia
/etc/init.d/mysql status
mariadb.service – MariaDB database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Thu 2018-08-09 12:43:52 CEST; 1min 3s ago
Process: 1241 ExecStart=/usr/sbin/mysqld $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=exited, status=1/FAILURE)
Process: 1151 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 1148 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 1145 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Main PID: 1241 (code=exited, status=1/FAILURE)
Status: «MariaDB server is down»
Revisando el log comprobamos el siguiente error:
tail -3 /var/log/mysql/error.log
2018-08-09 12:45:00 139927639765568 [ERROR] Can’t init tc log
2018-08-09 12:45:00 139927639765568 [ERROR] Aborting
Eliminamos el log TC y iniciamos el servicio de nuevo
rm /var/lib/mysql/tc.log
/etc/init.d/mysql start
:wq!
Script en bash para hacer backup de MySQL
En esta ocasión vamos a ver un pequeño script con el cual realizar backups de MySQL
#!/bin/bash
# Credenciales BBDD
user=»usuario»
password=»contraseña»
host=»localhost»
db_name=»bbdd»# definimos las variables del path y la fecha
backup_path=»/backup»
date=$(date +»%d-%b-%Y»)# Establecemos los permisos predeterminados
umask 177# Dump de la base de datos
mysqldump –user=$user –password=$password –host=$host $db_name > $backup_path/$db_name-$date.sql #Comprimir backup
xz -9 $backup_path/$db_name-$date.
sql # Eliminar archivos de más de 30 días
find $backup_path/* -mtime +30 -exec rm {} \;
lo añadimos en el crontab
rokitoh@red-orbita:# cronta -l
0 0 * * * /usr/bin/backupmysq.sh
Un saludo
:wq!
Instalar servidor SQL Server 2012
Definition Wiki:
Microsoft SQL Server es un sistema para la gestión de bases de datos producido por Microsoftbasado en el modelo relacional. Sus lenguajes para consultas son T-SQL y ANSI SQL. Microsoft SQL Server constituye la alternativa de Microsoft a otros potentes sistemas gestores de bases de datos como son Oracle, PostgreSQL o MySQL.