Convertir un servidor slave en master en MySQL

A veces ocurre… que el servidor maestro MySQL se nos ha corrompido o por X motivos, ya no se puede utilizar, y la única opción que nos queda es enviar el curriculum a otra empresa, o bien si hicimos los deberes correctamente, deberíamos de tener un servidor slave dónde hay una réplica más o menos reciente de los datos del antiguo maestro, apartir de ahí, estamos de suerte, ya que en algún caso en concreto, nos interesará poder convertir esa base de datos esclava en maestra para que nuestras aplicaciones la puedan utilizar y volver a crear slaves apartir de esta.

Para convertir un servidor slave a master en MySQL, solo tendremos que realizar estos sencillos pasos.

(Todos estos pasos los realizamos en nuestro slave)

# mysql> STOP slave;
# mysql> RESET slave;

# Borramos en el fichero my.cf toda la configuración que teniamos de nuestro slave y añadimos log-bin para que actue como maestro
# Reiniciamos MySQL
# Indicamos a nuestras aplicaciones la nueva ubicación del nuevo maestro, y apartir de ahora, ya se podrían crear esclavos apartir de este nuevo maestro

Y voila¡¡¡¡¡¡¡¡ ya hemos convertido el servidor mysql slave en servidor master¡¡¡

Replicación y ditribución de carga de MySQL

Replicación es la copia sincronizada entre dos o más servidores de bases de datos, de forma de que cualquiera de ellos puede entregar los mismos resultados a sus clientes. Se basa en un esquema «maestro-esclavos», en el que el maestro mantiene la base de datos original y los esclavos las copias.

El funcionamiento es el siguiente: los servidores esclavos se conectan al maestro para consultar sus logs y asg mantenerse informados de las operaciones de modificación que ha realizado (insert, delete, update, …) para a su vez poder realizarlas también ellos y mantener una replica exacta de la base de datos del servidor maestro. Los servidores esclavos sólo sirven para consultas.

Esto nos proporciona:

  • Replica automática de los datos en máquinas remotas.

  • Balanceo de la carga (de las consultas).

  • Alta disponibilidad mediante redundancia de servidores.
  • Si cae el maestro

  • Copias de seguridad en esclavos sin interrumpir maestro.
Continuar leyendo «Replicación y ditribución de carga de MySQL»

Manual de Referencia MySQL 5 en español

//theora.com/images/MySQL.jpg

Descripción:

Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original.

Tabla de contenidos:

* Prefacio.
* 1. Información general.
* 2. Instalar MySQL.
* 3. Curso (tutorial) de MySQL.
* 4. Usar los programas MySQL.
* 5. Administración de bases de datos.
* 6. Replicación en MySQL.
* 7. Optimización de MySQL.
* 8. Programas cliente y utilidades MySQL.
* 9. Estructura de lenguaje.
* 10. Soporte de conjunto de caracteres.
* 11. Tipos de columna.
* 12. Funciones y operadores.
* 13. Sintaxis de sentencias SQL.
* 14. Motores de almacenamiento de MySQL y tipos de tablas.
* 15. El motor de almacenamiento InnoDB.
* 16. MySQL Cluster.
* 17. Introducción a MaxDB.
* 18. Extensiones espaciales de MySQL.
Continuar leyendo «Manual de Referencia MySQL 5 en español»

La biblia de MySQL – Manual en español de MySQL [PDF]

//theora.com/images/MySQL.jpg

MySQL HA CRECIDO. Lo que durante un tiempo se consider6 como un sencillo juguete para su uso en sitios Web, se ha convertido en la actualidad en una solucion viable y de mision critica para la administracion de datos. Antes, MySQL se consideraba como la opcion ideal para sitios Web; sin embargo, ahora incorpora muchas de las funciones necesarias para otros entornos y conserva su gran velocidad. MySQL supera desde hace tiempo a muchas soluciones comerciales en velocidad y dispone de un sistema de permisos elegante y potente, y ahora, ademas, la version 4 incluye el motor de almacenamiento InnoDB compatible con ACID.
MySQL 4 es rapido, dispone de funciones de volcado online e incorpora una gran cantidad de funciones nuevas. Son pocas las razones para desechar MySQL como solucion de base de datos. MySQL AB, la compaiiia responsable del desarrollo de MySQL, dispone de un sistema de asistencia eficiente y a un precio razonable, y, como ocurre con la mayor parte de las comunidades de codigo abierto, encontrara una gran cantidad de ayuda en la Web. Las funciones estandar no incluidas todavia en MySQL (corno las vistas y 10s procedimientos almacenados) estan en fase de desarrollo y es posible que esten disponibles para cuando lea estas lineas.
Son muchas las razones para escoger MySQL como solucion de mision critica para la administracion de datos.

Continuar leyendo «La biblia de MySQL – Manual en español de MySQL [PDF]»

Cómo chequear, reparar u optimizar tablas o bases de datos MySQL con mysqlcheck

El cliente mysqlcheck comprueba y repara tablas MyISAM. También puede optimizar y analizar tablas.

mysqlcheck es similar a myisamchk, pero funciona de forma distinta. La principal diferencia operacional es que mysqlcheck debe usarse cuando el servidor mysqld está en ejecución, mientras que myisamchk debe usarse cuando no lo está. El beneficio de usar mysqlcheck es que no tiene que parar el servidor para comprobar o reparar las tablas.

mysqlcheck usa los comandos SQL CHECK TABLE, REPAIR TABLE, ANALYZE TABLE, y OPTIMIZE TABLE de forma conveniente para los usuarios. Determina los comandos a usar en función de la operación que quiera realizar, luego envía los comandos al servidor para ejecutarlos.

Hay tres modos generales de invocar mysqlcheck:

shell> mysqlcheck [opciones] nombre_de_base_de_datos [tablas]
shell> mysqlcheck [opciones] –databases DB1 [DB2 DB3…]
shell> mysqlcheck [opciones] –all-databases

Si no nombra ninguna tabla o usa las opciones –databases o –all-databases, se comprueban todas las bases de datos.

mysqlcheck soporta las siguientes opciones:

Continuar leyendo «Cómo chequear, reparar u optimizar tablas o bases de datos MySQL con mysqlcheck»