Haz que producción se distinga visualmente
¿Alguna vez ejecutaste un comando en producción creyendo que estabas conectado a staging o a dev? A mí me pasó, y tuve que pasar el resto del día reconstruyendo a mano un conjunto de datos para unos clientes muy molestos.
La solución es dejar clarísimo cuándo estás conectado a producción.
Una forma fácil de hacerlo es crear una identidad visual diferente para tu base de datos de producción.
En Beekeeper Studio me gusta poner mi base de datos de producción en red y la de staging en yellow. La barra de estado de Beekeeper se adapta al color que elijas, así que siempre queda claro cuándo estoy conectado a producción.
Revisa los cambios antes de aplicarlos
Si tienes dos clientes llamados Adam Smith, es fácil darle al Adam equivocado una mejora de suscripción gratis. Pregúntame cómo lo sé.
He cometido este error varias veces: a veces por mi culpa, pero otras por una GUI de bases de datos confusa que aplicaba los cambios automáticamente y hacía difícil entender qué había pasado.
Diseñé Beekeeper Studio para mostrar de forma explícita los cambios pendientes, así puedes ver lo que va a pasar antes de hacer clic en apply. En lo personal, me gusta usar el botón Copy to SQL para ejecutar el SQL directamente y revisar el resultado dentro de una transacción antes de aplicarlo (más abajo te cuento), otro flujo de trabajo integrado en Beekeeper Studio.
Ejecuta el SQL riesgoso dentro de una transacción
Me encantan las transacciones de bases de datos. Es como tener un gran botón de undo para presionar cada vez que me equivoco.
Lo curioso es que durante AÑOS no usé transacciones en las GUI de bases de datos. Aunque las entendía y las usaba seguido en mis apps de Ruby on Rails, nunca encontré una interfaz que dejara claro en qué estado de la transacción estaba. Siempre sentía que era más probable equivocarme, así que las evitaba por completo.
Ese miedo a lo desconocido es la razón por la que dedicamos una cantidad absurda de tiempo a pulir la interfaz de transacciones de Beekeeper Studio para que fueran claras, transparentes y fáciles de usar. En el video puedes ver que queda claro cuándo estás en modo de transacción manual y qué acciones puedes tomar para entrar y salir de él.
No dejes transacciones abiertas
¡Sorpresa! ¿No te acabo de decir lo geniales que son las transacciones? Resulta que también pueden ser un problema. Si dejas una transacción abierta, puede bloquear toda la base de datos para los demás. Abrir una transacción y luego irte a casa el fin de semana no es buena idea.

Digamos que sí usas transacciones, haces un cambio y te vas a comer. ¿Dejaste la transacción abierta? Ojalá que no: podrías haber dejado a todos sin acceso a la base de datos mientras terminas tus dumplings.
Aunque dejar una transacción abierta normalmente no bloquea toda la base de datos, sí puede provocar una caída si bloquea otras transacciones de producción.
He visto el daño que esto causa de primera mano, por eso Beekeeper Studio revierte automáticamente las transacciones después de un tiempo de espera, normalmente 10 minutos. Pierdes tus cambios, pero no provocas una caída.
Usa el modo de solo lectura para evitar errores
A veces los errores son inevitables. Por eso Beekeeper ofrece un modo Read Only: aunque tus credenciales tengan acceso total, Beekeeper te impedirá hacer cambios.
Es muy sencillo: marca una conexión como de solo lectura para evitar ejecutar por accidente una consulta destructiva, eliminar una tabla o cambiarle el nombre a todos los usuarios por Test User.
Si quieres hacer cambios, tienes que salir explícitamente del modo de solo lectura.
Medidas de protección sensatas para tu base de datos de producción
Aunque hagas todo bien y reduzcas los riesgos de tu trabajo en producción usando Beekeeper Studio, sigue siendo sensato tener estas medidas de protección a nivel de sistema:
- Respaldos periódicos disponibles por si necesitas restaurar alguno
- Practica la restauración de respaldos con regularidad
- Nodos secundarios en espera disponibles por si el nodo primario se cae
- No compartas credenciales entre varias personas
- Limita al máximo los permisos de las credenciales de la base de datos
- Sé organizado y ten un proceso de tickets para los cambios en producción
- Prueba todos los cambios en Dev y Staging antes de ejecutarlos en Producción (si es posible)
Beekeeper está hecho para producción
Espero que esta guía te ayude a trabajar con más confianza en producción.
El enfoque obsesivo de Beekeeper en la usabilidad va más allá de su buen aspecto: creamos nuestros flujos de trabajo para darte confianza cuando trabajas en producción y ayudarte a evitar errores inesperados.
Disfruta no borrar producción por accidente tanto como nosotros :-).
Beekeeper Studio es un cliente de bases de datos gratuito y de código abierto
La mejor herramienta de consultas y edición de SQL que he usado. Tiene todo lo que necesito para administrar mi base de datos. - ⭐⭐⭐⭐⭐ Mit
Beekeeper Studio es rápido, intuitivo y fácil de usar. Es compatible con muchísimas bases de datos y funciona de maravilla en Windows, Mac y Linux.
Lo que dicen los usuarios de Beekeeper Studio
"Beekeeper Studio reemplazó por completo mi antiguo flujo de trabajo con SQL. Es rápido, intuitivo y hace que trabajar con bases de datos vuelva a ser agradable."
"He probado muchas GUI de bases de datos, pero Beekeeper logra el equilibrio perfecto entre funciones y simplicidad. Simplemente funciona."