Está en la página 1de 17

SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

1.1

ADMINISTRACIÓN DE SERVICIOS
SEMANA 5

Configuración de Servicios III

Todos los derechos de autor son de la exclusiva propiedad de IACC o de los otorgantes de sus licencias. No está
IACC-2019
permitido copiar, reproducir, reeditar, descargar, publicar, emitir, difundir, poner a disposición del público ni
utilizar los contenidos para fines comerciales de ninguna clase. 1
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

APRENDIZAJE ESPERADO
 Determinar la configuración de base de datos de
acuerdo a los requerimientos entregados.

IACC-2019
2
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

INTRODUCCIÓN ................................................................................................................................... 4
1. DEFINICIÓN DE UNA BASE DE DATOS EN MYSQL........................................................................ 5
2. ARQUITECTURA DE SERVIDORES DE BASES DE DATOS ............................................................... 7
2.1. MAESTRO - ESCLAVO ........................................................................................................... 7
2.2. MAESTRO - MAESTRO ......................................................................................................... 8
2.3. CLUSTERS........................................................................................................................... 10
3. INSTALACIÓN Y CONFIGURACIÓN DE MYSQL ........................................................................... 11
4. LISTADO DE ERRORES COMUNES AL INSTALAR Y CONFIGURAR SERVIDORES MYSQL ............. 13
COMENTARIO FINAL.......................................................................................................................... 15
REFERENCIAS ..................................................................................................................................... 16

IACC-2019
3
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

INTRODUCCIÓN
Las bases de datos se encuentran insertas en Durante el presente contenido se identificará
la vida diaria de tal forma que muchas veces y realizará una instalación del motor de base
la gente no se da cuenta de que está de datos MySQL. Adicionalmente, se
utilizando una, como es el caso, por ejemplo, revisarán algunas de las arquitecturas
de un directorio telefónico o un diccionario. recomendadas para distintos tipos de
Wikipedia, Google y Yahoo! se consideran situación que pudieran presentarse en una
bases de datos en formato electrónico. organización y sus diferentes parámetros de
configuración.
Hoy en día todas las organizaciones necesitan
estructurar información, ya sea en pequeños Dependiendo de las necesidades de la
o grandes volúmenes, de forma que esta organización, una base de datos puede ser
pueda ser recuperada cuando sea necesario. configurada de distintas maneras, como un
En estos casos, las organizaciones suelen servidor stand alone o servidor esclavo, con
apoyarse en motores de bases de datos servidores maestro-maestro o distintas
especializados tanto en almacenar formas de arquitectura distribuida. A
información como en recuperarla. Uno de continuación se estudiarán algunas de estas
estos motores es MySQL. configuraciones y sus ventajas.

IACC-2019
4
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

1 DEFINICIÓN DE UNA BASE DE DATOS EN MYSQL


Todos los días se utilizan las bases de datos, incluso de manera inconsciente, ya que estas no son
más que un conjunto organizado de información. Por lo general, las bases de datos contienen texto
o números, pero también pueden contener imágenes, sonidos o videos.

Algunas personas pueden pensar que una base de datos y una lista son muy similares, en el sentido
de que ambas están organizadas; sin embargo, esta apreciación es errada. El principal problema que
surge al almacenar información en cualquier formato es que llega un momento en que buscar dicha
información se torna complicado. Por ejemplo: si se tiene una lista con 1.000.000 de elementos y se
busca uno en particular, ciertamente esta es una tarea muy difícil, y que empeorará a medida que
aumenta el universo de datos.

Un motor de base de datos, como MySQL, Oracle, SQL Server y PostgreSQL, por nombrar algunos,
es un programa especializado en manejar grandes volúmenes de información, cuyo
almacenamiento debe ser realizado pensando en que la recuperación posterior de dicha
información sea eficiente.

Asimismo, las bases de datos tienen la posibilidad de extraer una colección de datos disparejos
desde el universo de información almacenada. En la actualidad existen muchos paradigmas de bases
de datos, sin embargo, el más utilizado es el modelo relacional. En este tipo de bases de datos las
consultas se realizan utilizando un lenguaje llamado SQL por sus siglas en inglés de lenguaje
estructurado de consulta (SQL, Structured Query Language).

Debido a la gran versatilidad y eficiencia de SQL, se han desarrollado diferentes versiones del mismo,
destacándose dentro de estas MySQL, un gestor de base de datos de código abierto, actualmente
desarrollado, distribuido y soportado por Oracle Corporation. Dentro de las características más
importantes de MySQL destacan:

 Las bases de datos MySQL son relacionales: Una base de datos relacional almacena los
datos en tablas separadas en lugar de colocar todos los datos en un gran almacén. Las
estructuras de la base de datos están organizadas en archivos físicos optimizados para la
velocidad. El modelo lógico, con objetos como bases de datos, tablas, vistas, filas y
columnas, ofrece un entorno de programación flexible, en el cual se configuran reglas que
gobiernan las relaciones entre diferentes campos de datos, como uno a uno, uno a muchos,
únicos, requeridos u opcionales, y punteros entre diferentes tablas. La base de datos hace
cumplir estas reglas, de modo que con una base de datos bien diseñada, las aplicaciones
que acceden a la misma nunca trabajarán sobre datos inconsistentes, duplicados,
huérfanos, desactualizados o faltantes.

IACC-2019
5
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

 El software MySQL es de código abierto: Código abierto u Open Source significa que es
posible que cualquiera pueda usar y modificar el software. Cualquier persona o institución
puede descargar el software MySQL desde internet, usarlo sin pagar nada, estudiarlo y
modificar el código fuente para cambiarlo y adaptarlo a sus necesidades. El software MySQL
usa la GPL -licencia pública general de GNU- para definir lo que puede y no puede hacer con
el mismo en diferentes situaciones. Si las restricciones de la GLP no se adaptan a las
necesidades del usuario, se puede comprar una aplicación comercial para integrar MySQl
en aplicaciones comerciales.

 MySQL es muy rápido, confiable, escalable y fácil de usar: MySQL Server puede ejecutarse
cómodamente en una computadora de escritorio o portátil, junto con otras aplicaciones,
servidores web, etc. que requieren poca o ninguna atención. Si se dedica una máquina
completa a MySQL, puede ajustar la configuración para aprovechar toda la memoria, la
potencia de la CPU y la capacidad de Entrada / Salida disponible. MySQL también puede
escalar a grupos de máquinas conectadas en red.
MySQL Server se desarrolló originalmente para manejar grandes bases de datos mucho más
rápido que las soluciones existentes y se ha utilizado con éxito en entornos de producción
altamente exigentes durante varios años. Aunque está en constante desarrollo, MySQL
Server ofrece hoy un conjunto de funciones útiles. Su conectividad, velocidad y seguridad
hacen que sea muy adecuado para acceder a bases de datos en internet.

 MySQL Server funciona en cliente / servidor o sistemas embebidos: El software de base de


datos MySQL es un sistema cliente / servidor que consta de un servidor SQL multiproceso
que admite diferentes back-end, varios programas y bibliotecas de clientes diferentes,
herramientas administrativas y una amplia gama de interfaces de programación de
aplicaciones (API).

 Disponibilidad de una gran cantidad de software MySQL: MySQL Server tiene un conjunto
práctico de características desarrolladas en estrecha colaboración con las comunidades de
expertos, por lo cual es muy probable que las aplicaciones o idiomas favoritos del usuario
sean compatibles con el servidor de base de datos MySQL.

IACC-2019
6
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

2 ARQUITECTURA DE SERVIDORES DE BASES DE DATOS


MySQL es una base de datos altamente flexible y poderosa que se puede ajustar a las necesidades
de cada organización, hasta el punto en el cual un servidor de bases de datos stand alone puede
perfectamente cumplir con las necesidades de una organización. Sin embargo, a medida que esta
crece y, por lo tanto, la información que se necesita almacenar se incrementa, se llega a un punto
en que el método de respaldo normal se tornará poco práctico, ya sea por el tamaño de los respaldos
o porque el proceso toma demasiado tiempo y afecta las operaciones. En estos casos, es posible
utilizar otra arquitectura que solucione estos problemas.

2.1. MAESTRO - ESCLAVO


En esta arquitectura existe un servidor maestro, el cual replica la información a un esclavo. Esta
replicación no tiene por qué ser en tiempo real, ya que también puede ser de forma asíncrona, lo
cual la hace ideal para conexiones de larga distancia o cuando se utilizan conexiones intermitentes.
La replicación no es necesariamente de todas las bases de datos, puede ser de una base de datos o,
incluso, de una tabla dentro de una base de datos.

Arquitectura maestro - maestro

Fuente: https://bit.ly/2ZD3ts5

Las ventajas de tener un servidor replicado son varias:

 Permite crecer a una organización: Cuando una máquina se encuentra sobrepasada, es posible
agregar otra, lo cual permite repartir la carga. Todas las operaciones de escritura se deben seguir
realizando sobre el maestro, pero la lectura de datos se puede realizar sobre el esclavo.

 Respaldos: En caso de que ocurra un desastre y se pierda una máquina, la otra tendrá una copia
fiel de la información.

IACC-2019
7
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

 Facilidad de los respaldos: Hacer un respaldo en una máquina de producción no siempre es


posible, pues estas operaciones consumen muchos recursos. Al tener un esclavo, es posible
realizar los respaldos sobre este.

 Análisis: Las áreas de gestión de una organización están constantemente generando reportes,
algunos de los cuales suelen tener impacto en los servidores de bases de datos. Al tener un
esclavo, es posible separar las tareas de forma que los reportes de gestión se realicen sobre este
servidor sin impactar al maestro.

Obviamente, es posible tener más de un esclavo, obteniendo una mayor distribución de la carga si
en la organización se realiza un mayor número de lecturas que de escrituras.

Arquitectura maestro – esclavo extendida

Fuente: https://bit.ly/2KqNGG8

2.2. MAESTRO - MAESTRO


En esta arquitectura cada servidor es maestro y esclavo al mismo tiempo. Este tipo de arquitectura
es utilizado cuando se desea que ambos servidores sean capaces de realizar, de manera simultánea,
lectura y escritura de datos.

Arquitectura maestro – maestro


Fuente: https://bit.ly/2YS8KdS

IACC-2019
8
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

De igual forma, es posible expandir esta arquitectura para tener más de dos maestros compartiendo
la información entre ellos. En estos casos, es posible que se utilicen dos tipos de configuración.

Arquitectura con doble maestro

Fuente imagen: https://bit.ly/2KqNGG8

En la configuración con múltiples maestros, todos los servidores envían las transacciones al resto de
los equipos, manteniéndose todas actualizadas. Sin embargo, esto puede requerir gran capacidad
de procesamiento y grandes velocidades de conexión para mantener todos los servidores
correctamente actualizados.

Otra posible configuración es la replicación circular:

Arquitectura con replicación circular

Fuente: https://bit.ly/2KqNGG8

IACC-2019
9
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

En esta replicación cada servidor es maestro del siguiente y esclavo del anterior, esto causa que los
datos fluyan desde un servidor a otro y así sucesivamente hasta completar el ciclo. Este tipo de
configuración tiene la desventaja de que las actualizaciones son más lentas que en una
configuración multimáster, pues los cambios deben viajar, desde A hasta B, luego a C y finalmente
a D.

2.3. CLUSTERS
Los clusters son el siguiente paso en cuanto a replicación se refiere. Este es un tipo especial de
arquitectura, pues, a diferencia de las anteriormente estudiadas, no es replicación y, por lo tanto, sí
requiere una conexión permanente para mantener los datos de manera sincrónica

En este tipo de arquitectura se requieren al menos dos nodos donde resida la información, los cuales
se encargan de mantener la información sincronizada, el manejo de carga, la recuperación y
disponibilidad en todo momento. Además, se requiere de un nodo de administración, en donde se
realizan las configuraciones y se enciende o detiene el cluster. Finalmente, se necesita un nodo de
aplicación, el cual debe estar conectado a todos los nodos de datos y se encarga de realizar las
consultas o escrituras.

Replicación mediante Clusters

Fuente: https://bit.ly/2KC8jzg

IACC-2019
10
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

3 INSTALACIÓN Y CONFIGURACIÓN DE MYSQL


MySQL dispone de un excelente asistente de instalación, el cual crea el archivo de configuración
my.ini e instala MySQL como un servicio. Esta opción es ciertamente recomendada para usuarios
inexpertos o para aquellos que instalan MySQL por primera vez. Adicionalmente, la instalación
manual también está disponible, la cual ofrece varios beneficios entre los que se destaca la rapidez
para ejecutar una copia de seguridad, reinstalar o trasladar las bases de datos. También se tiene
más control sobre cómo y cuándo arrancará MySQL, pudiendo ser instalado en cualquier lugar,
como una unidad USB portátil.

Independientemente del método de instalación a utilizar, la secuencia lógica de pasos para instalar
MySQL es la siguiente:

 Paso 1: Descargar MySQL.

Se debe descargar MySQL desde dev.mysql.com/downloads/. Se recomienda escanear el


archivo en busca de virus y verificar su suma de comprobación MD5 utilizando una
herramienta como fsum.

 Paso 2: Extraer los archivos.

Por defecto, estos se extraen en la carpeta de mysql-x.x.xx-win32, sin embargo, esta


ubicación puede ser cambiada a, por ejemplo, c:/mysql, ya que MySQL se puede instalar en
cualquier parte del sistema. Si se desea una instalación liviana, es posible eliminar todas las
subcarpetas, excepto los contenedores, los datos, los scripts y los recursos compartidos.

 Paso 3: Mover la carpeta de datos (opcional).

Se recomienda colocar la carpeta de datos en otra unidad o partición para facilitar las copias
de seguridad y la reinstalación, por ejemplo, se puede crear la carpeta llamada D:
MySQLdata y mover el contenido de C: mysqldata a ella.
.
 Paso 4: Crear un archivo de configuración

MySQL proporciona varios métodos de configuración, pero, en general, es más fácil crear
un archivo my.ini en la carpeta mysql. Hay cientos de opciones para ajustar MySQL a los
requisitos exactos del usuario, pero el archivo my.ini más simple es:

IACC-2019
11
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

[mysqld]
# directorio de instalación
basedir = C: / mysql /

# directorio de datos

datadir = D: / MySQLdata /

 Paso 5: Probar instalación

El servidor MySQL se inicia ejecutando C: mysqlbinmysqld.exe. Utilice una ventana de


comando desde Inicio…Ejecutar - cmd, e ingrese los siguientes comandos:

cd mysqlbin

mysqld

Esto iniciará el servidor MySQL que escucha las solicitudes en el puerto local del host 3306.
Ahora se puede iniciar la herramienta de línea de comandos MySQL y conectarse a la base
de datos. Ahora se debe abrir otra ventana de comando y escribir:

cd mysqlbin
mysql -u root

Esto mostrará un mensaje de bienvenida y el indicador mysql>. Ingrese el comando show


databases para ver una lista de las bases de datos predefinidas.

 Paso 6: Cambiar la contraseña de root

El usuario root de MySQL es una cuenta todopoderosa que puede crear y destruir bases de
datos. Si está en una red compartida, es recomendable cambiar la contraseña
predeterminada, que por defecto está en blanco. Desde el indicador de mysql>, ingrese:

UPDATE mysql.user SET password = “CLAVE NUEVA” WHERE USER = 'root';


FLUSH PRIVILEGES;

Se le solicitará la contraseña la próxima vez que inicie la línea de comandos de MySQL.

IACC-2019
12
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

Ingrese exit en el indicador mysql> para detener el cliente de la línea de comandos. Ahora
debe cerrar MySQL con el siguiente comando:

mysqladmin.exe -u root shutdown

 Paso 7: Instalar MySQL como un servicio de Windows

La forma más fácil de iniciar MySQL es agregarlo como un servicio de Windows. Desde un
indicador de comando, ingrese:

cd mysqlbin

mysqld – install

Se debe abrir el Panel de control, luego la opción Herramientas administrativas,


posteriormente Servicios y hacer doble clic en MySQL. Es necesario establecer el tipo de
inicio en Automático para garantizar que MySQL se inicie cada vez que se arranque el PC.
Alternativamente, se puede establecer el tipo de inicio en "Manual" e iniciar MySQL cada
vez que elija el comando net start mysql. Se debe tener en cuenta que el servicio de
Windows se puede eliminar utilizando:

cd mysqlbin

mysqld –remove

4 LISTADO DE ERRORES COMUNES AL INSTALAR Y


CONFIGURAR SERVIDORES MYSQL
Al instalar y ejecutar MySQL por primera vez pueden aparecer ciertos errores que impiden que el
servidor MySQL se inicie. El primer recurso para solucionar problemas del servidor es el registro de
errores o error log. El servidor MySQL usa el registro de errores para registrar información relevante
al error que impide que el servidor se inicie. Este se encuentra en el directorio de datos especificado
en el archivo my.ini. La ubicación predeterminada del directorio de datos es C: \ Archivos de
programa \ MySQL \ MySQL Server XX

Los siguientes ejemplos muestran algunos mensajes de error comunes que se pueden encontrar al
instalar MySQL y al iniciar el servidor por primera vez:

IACC-2019
13
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

 Si el servidor MySQL no puede encontrar la base de datos de privilegios de mysql u otros


archivos críticos, muestra estos mensajes:

System error 1067 has occurred.

Fatal error: Can't open and lock privilege tables:

Table 'mysql.user' doesn't exist

Error del sistema 1067 ha ocurrido.

Error grave: no se pueden abrir y bloquear las tablas de privilegios:

La tabla 'mysql.user' no existe

Estos mensajes a menudo se producen cuando la base de MySQL o los directorios de datos se
instalan en ubicaciones diferentes a las ubicaciones predeterminadas.

 Al reinstalar o actualizar MySQL sin primero detener y eliminar el servicio MySQL existente
e instalar MySQL usando el instalador de MySQL, es posible que aparezca este error:

Error: Cannot create Windows service for MySql. Error: 0

Error: No se puede crear el servicio de Windows para MySql. Error: 0

Esto ocurre cuando el asistente de configuración intenta instalar el servicio y encuentra un


servicio existente con el mismo nombre. Una solución a este problema es elegir un nombre
de servicio que no sea mysql al usar el asistente de configuración. Esto permite que el nuevo
servicio se instale correctamente, pero deja el servicio obsoleto en su lugar. Aunque esto es
inofensivo, es mejor eliminar los servicios antiguos que ya no están en uso.

Para eliminar de forma permanente el antiguo servicio MySQL, ejecute el siguiente comando
como usuario con privilegios administrativos, en la línea de comandos:

C: \> SC DELETE mysql

[SC] DeleteService SUCCESS

IACC-2019
14
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

COMENTARIO FINAL
Durante el presente contenido se han estudiado las particularidades del proceso de instalación y
configuración del gestor de bases de datos MySQL.

Las bases de datos son un servicio de gran importancia para las organizaciones, pues se encargan
de almacenar gran cantidad de datos, así como de recuperarlos de manera eficiente. El proceso de
instalación de un gestor de bases de datos es muy similar a la instalación de otros servicios.

Además, existen distintas arquitecturas de base de datos que se deben considerar, dependiendo de
las necesidades de cada organización, pues cada una de ellas presenta diferentes ventajas y
desventajas significativas.

IACC-2019
15
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

REFERENCIAS
DuBois, P. (2014). MySQL Cookbook: Solutions for Database developers and administrators. 3.a

edición. EE.UU.: O’Reilly.

Schwartz, B.; Zaitsev, P.; Tkachenko; Zawodny, J. D.; Lentz, A. y Balling, D. J. (2012). High

performance MySQL: Optimization, backups, and replication. . 3.a edición. EE.UU.: O’Reilly.

PARA REFERENCIAR ESTE DOCUMENTO, CONSIDERE:

IACC (2019). Configuración de servicios III. Administración de servicios.


Semana 5.

IACC-2019
16
SEMANA 5 – ADMINISTRACIÓN DE SERVICIOS

IACC-2019
17

También podría gustarte