Bienvenidos sean a este post, hoy haremos una breve introduccion a las distintas tareas administrativas relacionadas a la configuracion, administracion y mantenimiento de las bases en mysql, comencemos con algunos conceptos basicos de mysql:
- mysql server, el daemon o servicio se llama mysqld y es el encargado de todas las transacciones en nuestras bases y tablas, en conjunto con safe_mysqld son los encargados de iniciarlo, monitorizarlo y reiniciarlo en caso de ser necesario
- clientes mysql y utilidades, son un conjunto de programas que nos permiten acceder, manipular nuestras bases de datos y realizar nuestras tareas administrativas entre las utilidades estan: mysql, cliente para la conexion al servidor; mysqladmin, comando de linea para ejecutar tareas administrativas en un servidor, desde reiniciarlo hasta monitorearlo; isamchk y myisamchk, sirven para realizar analisis y optimizacion de las tablas, tambien nos permite recuperarlas en caso de que se dañen; mysqldump, se usa para hacer copias de seguridad de nuestras bases o copiar bases a otros servidores.
- SQL, es el lenguaje del servidor (Structured Query Language) y si bien nosotros podemos efectuar un monton de tareas administrativas por medio de mysqladmin, lo ideal es hacerlo por medio del lenguaje propio del servidor al cual podremos acceder por el cliente mysql, y desde el mismo poder ejecutar las consultas necesarias, recuerden visitar nuestros posts anteriores para estudiar sobre consultas de SQL.
- El directorio de datos, este es el lugar donde se almacena las bases de datos y los archivos de estructura de los mismos, es necesario tener un concepto de como trabajan y su estructura para poder realizar un buen mantenimiento de las mismas.
Nuestro siguiente paso sera la administracion general, trata sobre todo el acceso y operacion del daemon mysqld, pasemos a ver algunas de sus tareas:
- Inicio y desconexion del servidor, como lo indica es la capacidad de tener los conocimientos basicos para conectar o desconectar, iniciar y reiniciar el servicio de manera correcta, como programar los mismos y sobre todo como actuar antes una falla de inicio del mismo.
- Mantenimiento de cuentas de usuario, deberas conocer la diferencia entre los usuarios de mySQL y los del sistema operativo, tambien se configura que usuarios pueden conectarse, desde que equipo, los parametros permitidos, etc
- Mantenimiento de archivos del registro, es para entender que ficheros y archivos de registro puede mantener una copia, asi como y cuando ejecutar las operaciones de mantenimiento sobre ellas.
- Copia y respaldo de las bases de datos, como todas las copias en informatica son para ser utilizadas en caso de una caida masiva de nuestro servidor, en este caso se veran los procedimientos habituales para tener una copia actualizada y en caso de ser necesaria utilizarla.
- Ajuste del servidor, esto es para poder optimizar el acceso a nuestras bases de datos, en este caso estudiaremos como balancear el tipo de acceso a las bases y cual debemos priorizar, si la consulta o la insercion, etc
- Multiples servidores, bajo ciertas circunstancias necesitaremos mas de un servidor, ya sea uno de desarrollo para pruebas, para probar una version mas nueva y todo esto sin afectar al de produccion, para estas situaciones debera conocer como hacer multiples instalaciones.
- Actualizaciones de mySQL, en este caso es como saber llevar un minucioso control de las actualizaciones disponibles para el servidor, cliente y otros, como hacer un deploy del mismo sin afectar al server dado que las actualizaciones mejoran performance, corrigen errores, etc. Por esto es necesario tener un buen control de las mismas.
En nuestro siguiente caso sera la seguridad sobre la informacion de nuestros datos y archivos en mySQL, para ello deberemos tener los conocimientos para:
- Seguridad de sistema de archivos, estos son los permisos sobre los archivos en el sistema operativo, tanto en UNIX como en Windows por medio de NTFS, donde deberemos establecer los permisos suficientes para que mySQL pueda acceder a los archivos pero no los usuarios del sistema, para estos casos siempre es mas recomendable utilizar un sistema basado en UNIX como son los Linux por lo cual nos enfocaremos mas a este tipo de permisos.
- Seguridad del servidor, en este caso se debera entender el concepto de los privilegios que se le concedera a un usuario para poder trabajar con las bases, recuerden siempre conceder los permisos estrictamente necesarios a los usuarios estandares para evitar posibles errores y perdida de datos en el servidor.
Y por ultimo, hablaremos sobre la reparacion y mantenimiento de bases de datos donde tendremos dos tipos de acciones a tomar, las cuales describiremos a continuacion:
- Recuperacion de caidas, aca aprenderemos a como recuperarnos de un desastre, esto involucra la copia y respaldo de nuestras bases, el chequeo de nuestras bases y estructuras, y como corregir otros tipos de errores que afectan al servidor de produccion.
- Mantenimiento preventivo, es llevar un programa de mantenimiento de nuestros servidores, copias, programar tareas de chequeo, en fin todas las necesarias para minimizar cualquier eventualidad o desastre.
Estos son los conceptos basicos que se deberan entender para llevar un buen mantenimiento de nuestros servidores y bases de datos, como llevar la seguridad de los mismos, copias y respaldos, mantenimiento y otras acciones pero no se preocupen en las proximos dias o semanas, iremos desarrollando paso a paso como efectuar las mismas, con ejemplos y explicaciones de los mismos, espero les haya sido util sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.
Tengo un Patreon donde podes acceder de manera exclusiva a material para este blog antes de ser publicado, sigue los pasos del link para saber como.


Tambien podes donar
Es para mantenimiento del sitio, gracias!
$1.50