11 cosas que todo DBA novato/junior debería de conocer

ORACLE-DBA

Aquí os dejo algunos consejos para aquellos que acaban de empezar como DBA Oracle o para quienes quieran empezar en este fascinante mundo del DBA.


¿Acabas de empezar tu carrera profesional como DBA Oracle?. Ser DBA es mucho más complejo que saber programar en SQL, un DBA debe conocer bien el funcionamiento interno de la Bases de Datos y de todos sus procesos. En el trabajo diario del DBA, este va a tener que trabajar codo con codo con los administradores de Sistemas, con los operadores, con los analistas y con los desarrolladores con lo que además de tener conocimientos de Bases de Datos, el DBA también debería de tener unos buenos conocimientos de Sistemas Operativos, análisis y diseño, performance, hardware y resolución de incidencias software.

En el siguiente listado tienes 11 cosas que tu como DBA novato /junior deberías conocer y con las cuales deberías empezar a estar familiarizado. Espero que este articulo te sea de utilidad.

1. Instalación y configuración de Oracle

Los procedimientos para la instalación del software del RDBMS Oracle en diferentes sistemas operativos (Linux, Windows Server, Unix, por nombrar algunos) pueden variar considerablemente de unos a otros. Cada plataforma tiene sus propios requisitos peculiares y específicos. Conocer los procedimientos de instalación de Oracle es un punto fuerte, pero no hay sustituto para la experiencia práctica. Aprende a instalar y configurar la Base de Datos usando los GUI Oracle Universal Installer (OUI) y Database Create Assistant (DBCA) y en modo desatendido (silence mode) usando tus propios ficheros de respuesta. Lee, escucha, observa y siempre estate atento a las oportunidades para obtener esa experiencia práctica.

2. Monitoreo y ajuste básico

Hay tantos problemas diversos que pueden afectar el rendimiento de una base de datos Oracle. Como nuevo DBA, debe ser capaz de comprender los diferentes tipos de cuellos de botella que pueden ocurrir y ser capaz de encontrar soluciones. Para mencionar solo algunos: use eventos de espera comunes, verifique si se está utilizando el índice correcto y vuelva a generar índices y tablas si es necesario para eliminar la fragmentación, aprende a utilizar las herramientas de análisis de sentencias SQL explain plan y tkprof para analizar los planes de ejecución y los costes de cada sentencia, buscando cuales son aquellas que pueden estar colapsando el sistema por consumo de CPU, accesos a disco, etc..

3. Copia de seguridad y recuperación de bases de datos

Una de las principales responsabilidades de un DBA de Oracle es garantizar la continuidad y la disponibilidad de la base de datos. De hecho, varias compañías usan KPI basadas en el tiempo medio de disponibilidad entre fallas para evaluar el desempeño de los DBA. Hay habilidades que deberá recoger para garantizar la disponibilidad de la base de datos. Una de ellas es poder utilizar las funciones de copia de seguridad y restauración nativas de Oracle con RMAN e integrarlas con otras herramientas similares de terceros como Dataprotector, Netbackup etc.

4. Comprensión básica de los problemas de seguridad de la base de datos

Nadie espera que un DBA de Oracle tenga un conocimiento profundo de todos los aspectos de la seguridad de la base de datos Oracle. Si eres nuevo en el trabajo, al menos debe conocer los problemas de seguridad básicos. Por ejemplo, un DBA nuevo debe conocer los roles, los perfiles, las cuentas de usuario, los privilegios de nivel de objeto y de sistema, y los conceptos relacionados. La inyección SQL también es un área con la que un DBA junior debe de estar familiarizado.

5. Diseño de base de datos

Los equipos de desarrollo de software a menudo interactúan con los DBA para adelantarse a las fallas en el diseño de la base de datos y para evitar modificaciones costosas en la estructura de la base de datos. Uno de los conceptos clave con el que cualquier DBA debería estar familiarizado es la normalización de la Base de Datos, al menos hasta la tercera forma normal. Lo más probable es que sepas cómo normalizar una base de datos, pero en la práctica, la normalización de la Base de Datos puede ser un arma de doble filo. Existen escenarios específicos en el diseño de bases de datos en los que es posible que desee desnormalizar una base de datos y promover la redundancia de datos de forma controlada con el fin de acelerar el acceso general a la base de datos.

6. Buen conocimiento de los paquetes del RDBMS

Un DBA principiante debe comprender el propósito detrás de la serie de paquetes DBS que vienen incluidos con el motor de la Base de Datos Oracle. Estos paquetes amplían las funcionalidades de la Base de Datos. Sin estos paquetes, no sería posible usar PL/SQL con muchas características estándar de Oracle. Como nuevo DBA, no necesitas conocer todos y cada uno de estos paquetes, pero al menos debes de tener una buena idea de la utilidad y la funcionalidad que ofrecen cada uno de esos paquetes.

7. Programación en SQL y PL/SQL

Además de saber programar en el lenguaje SQL, un lenguaje no procedimental que se utiliza para ejecutar sentencias tanto DDL como DML, un DBA principiante también debe saber programar en PL/SQL. Aunque se considera que el PL/SQL es un conjunto de habilidades del desarrollador, un DBA debe poder usar PL/SQL para crear trabajos o procedimientos almacenados o para consultar las tablas del sistema. El conocimiento de PL/SQL también permitirá a un DBA leer el código escrito por los programadores y afinar sus consultas.

8. Wizards & GUI vs. línea de comando

Los asistentes y las herramientas GUI que vienen con un DBMS son excelentes para aumentar la productividad y obtener resultados rápidos. Pero en una serie de escenarios, los asistentes no proporcionan la flexibilidad o complejidad requerida. Un buen DBA sabrá cómo arremangarse y utilizar efectivamente la línea de comandos de PowerShell/bash o escribir SQL sin formato para, digamos, crear una tabla con uno o más índices directamente desde SQL*Plus.

9. Sistemas Operativos

Como DBA, debes de estar familiarizado con el Sistema Operativo en el que se encuentra su RDBMS. Debes comprender los matices de su sistema operativo, como la configuración de seguridad, la integración con Active Directory, LDAP (Lightweight Directory Access Protocol) y las convenciones de nomenclatura. Además, ¿cómo se inicia su RDBMS? ¿Qué scripts se utilizan para iniciar, cerrar o bloquear usuarios de su base de datos?. Aprender los comandos básicos del Sistema Operativo te sera de gran utilidad a la hora administrar la Base de Datos.

10. Shell Scripting

Relacionado con el punto anterior para ser DBA eficiente, es importante saber cuándo las secuencias de comandos del Sistema Operativo, como PowerShell o bash pueden ayudarlo a administrar sus servidores y automatizar tareas, como por ejemplo arrancar y parar Bases de Datos, automatizar los procesos de backup, monitorear el Sistema Operativo, etc..

11. Sistemas de Almacenamiento

En la mayoría de las bases de datos, el cuello de botella principal es el acceso al disco. Comprender dónde se almacena su base de datos y cómo el RDBMS accede a los datos físicos es importante. ¿Está su base de datos en un disco local o una SAN (red de área de almacenamiento)? Si su empresa tiene un equipo de almacenamiento, conózcalos y comprenda qué herramientas utilizan para monitorizar las operaciones de entrada y salida a disco de la Base de Datos.


Acerca del Autor

José Francisco Gómez es un DBA experimentado con más de 15 años de experiencia como DBA Oracle. Sus especialidades son principalmente la administración del RDBMS Oracle, los entornos de alta disponibilidad Oracle RAC y Oracle Dataguard, el tuning de Base de Datos y el análisis y optimización de sentencias SQL y paquetes PL/SQL.

 

Acerca de JulianOrtiz0506

Soy administrador de bases de datos y desarrollador web, desde mis inicios en el mundo de la informática, he implementando proyectos personales y empresariales. Por consiguiente esto me ha permitido contar con una amplia calificación y destreza sobre mis áreas de conocimiento. Sobre todo suelo estar en constante aprendizaje, diariamente me estoy informando sobre nuevas tecnologías. Ya queme gusta estar actualizado en la tecnología de punta para todas las plataformas que me apasionan y con las cuales trabajo día a día.

Ver todas las entradas de JulianOrtiz0506 →

Deja una respuesta

Tu dirección de correo electrónico no será publicada.