replica en mysql

7
Módulo 7. Administración de MySQL Guía de Prácticas y Laboratorios Día 2 Francisco Medina López Marzo 2010 Práctica 1. Administrando los privilegios de Usuarios Duración: 10 min. Objetivo:  El participante aplicara como conceder privilegios a los usuarios creados en la Base de Datos. Instrucciones: Seleccione la respuesta correcta. 1. El privil egio GRANT OPTION se ree re a: a ) Permitir al usuario cargar datos de un arc hiv o b) Permitir al usuario trasnfe rir sus privilegios c ) Permitir al usuari o solamen te acceder a la base de datos d ) Permitir al usuar io borrar priv ileg ios 2. El privilegio USAGE se reere a: a ) Permitir al usuario cargar datos de un arc hiv o b) Permitir al usuario transfe rir sus privilegios c ) Permitir al usuari o solamen te acceder a la base de datos d ) Permitir al usuar io borrar priv ileg ios 3. El privil egio RELOAD se ree re a: a ) Permitir al usuario cargar datos de un arc hiv o b) Permitir al usuario transfe rir sus privilegios c ) Permitir al usuari o solamen te acceder a la base de datos d ) Permitir al usuar io borrar priv ileg ios 4. El privil egio FILE se reer e a: a ) Permitir al usuario cargar datos de un arc hiv o b) Permitir al usuario transfe rir sus privilegios c ) Permitir al usuari o solamen te acceder a la base de datos d ) Permitir al usuar io borrar priv ileg ios 1

Upload: eduardo-cadenas-sarabia

Post on 05-Jul-2015

239 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Replica en Mysql

5/6/2018 Replica en Mysql - slidepdf.com

http://slidepdf.com/reader/full/replica-en-mysql 1/7

 

Módulo 7. Administración de MySQLGuía de Prácticas y Laboratorios

Día 2

Francisco Medina López

Marzo 2010

Práctica 1. Administrando los privilegios de Usuarios

Duración: 10 min.

Objetivo:El participante aplicara como conceder privilegios a los usuarios creados en la Base de Datos.

Instrucciones: Seleccione la respuesta correcta.

1. El privilegio GRANT OPTION se refiere a:

a ) Permitir al usuario cargar datos de un archivo

b) Permitir al usuario trasnferir sus privilegios

c) Permitir al usuario solamente acceder a la base de datos

d ) Permitir al usuario borrar privilegios

2. El privilegio USAGE se refiere a:

a ) Permitir al usuario cargar datos de un archivob) Permitir al usuario transferir sus privilegios

c) Permitir al usuario solamente acceder a la base de datos

d ) Permitir al usuario borrar privilegios

3. El privilegio RELOAD se refiere a:

a ) Permitir al usuario cargar datos de un archivo

b) Permitir al usuario transferir sus privilegios

c) Permitir al usuario solamente acceder a la base de datos

d ) Permitir al usuario borrar privilegios

4. El privilegio FILE se refiere a:

a ) Permitir al usuario cargar datos de un archivo

b) Permitir al usuario transferir sus privilegios

c) Permitir al usuario solamente acceder a la base de datos

d ) Permitir al usuario borrar privilegios

1

Page 2: Replica en Mysql

5/6/2018 Replica en Mysql - slidepdf.com

http://slidepdf.com/reader/full/replica-en-mysql 2/7

 

Laboratorio 1. Administrando los privilegios de Usuarios

Duración: 15 min.

Objetivo: El participante aplicara como crear usuarios, así como darle privilegios a estos dentro de la base dedatos.

Instrucciones:Escriba lo que se le pide a continuación.

1. Cree un usuario llamado bill, con la contraseña secret, que tenga privilegios de select, update, insert y delete

sobre la tabla departamento.

2. Escriba el código que revoque todos los privilegios del usuario.

Práctica 2. Administrando la Base de Datos

Duración: 15 min.

Objetivo: El participante aplicara y entenderá cuales son las tareas diarias de administración de las bases de datosen MySQL.

Instrucciones: Seleccione la respuesta correcta.

1. Cual de los siguientes logs, esta activado por default:

a ) Query Log.

b) Slow query Log.

c) Error Log.

d ) Binary Log.

e) Todos los anteriores.

2. El comando SHOW se usa para mostrar:

a ) La lista de las bases de datos accesibles.

b) La lista de las tablas de la base de datos.

c) La lista de la columnas de una tabla especifica

d ) Todas las anteriores

3. El script mysqladmin  es usado para:

a ) Recargar privilegios para asegurar que no ninguno tenga efecto.

b) Revisar el status del servidor.

c) Parar e iniciar el servidor.

d ) Cerrar y abrir los archivos log.

e) Ninguna de las anteriores.

2

Page 3: Replica en Mysql

5/6/2018 Replica en Mysql - slidepdf.com

http://slidepdf.com/reader/full/replica-en-mysql 3/7

 

Laboratorio 2. Administrando la Base de Datos

Duración: 15 min.

Objetivo: El participante interpretara los logs de MySQL

Instrucciones: Realice varias consultas para que almacene datos en los diferentes logs de MySQL,

Práctica 3. Respaldos y Recuperación de las Bases de Datos MySQL

Duración: 15 min. Objetivo: El participante conocerá las tareas básicas de respaldos y recuperación de bases deDatos. Instrucciones: Seleccione la respuesta correcta.

1. : Si deseas hacer una recuperación de un respaldo es necesario

a ) Tirar el servidor de la Base de Datos.

b) Bloquear y limpiar las tablas

c) Las dos opciones anteriores

d ) Ninguna de las anteriores.

2. Se deben de bloquear las tablas manualmente antes de ejecutar.

a ) Un respaldo manual

b) mysqldump

c) mysqlhotcopy

d ) Ninguna de las anteriores.

3. Que tipo de tablas se puede consultar con CHECK TABLE:

a ) InnoDB and MyISAM

b) solamente MyISAM

c) MyISAM y BDB

d ) InnoDB y BDB

4. Que tipo de tablas se puede reparar con REPAIR TABLE:

a ) InnoDB and MyISAM

b) solamente MyISAMc) MyISAM y BDB

d ) InnoDB y BDB

5. Si al ejecutar CHECK TABLE aparece lo siguiente Table is already up to date , significa:

a ) Se necesita ejecutar REPAIR TABLE

b) No esta soportado CHECK TABLE

c) La tabla esta bien

d ) Ninguna de las anteriores.

3

Page 4: Replica en Mysql

5/6/2018 Replica en Mysql - slidepdf.com

http://slidepdf.com/reader/full/replica-en-mysql 4/7

 

Laboratorio 3. Respaldos y Recuperación de las Bases de Datos MySQL

Duración: 15 min. Objetivo: El participante creara respaldos de la Base de Datos Instrucciones: Cree unrespaldo y recuperación de la Base de Datos usando cada uno de los métodos mencionados.

Laboratorio 4. Tablas Federadas

Introducción: Las tablas federadas permiten acceder a datos en tablas de bases de datos remotas en lugar detablas locales. Se implementan a través del motor FEDERATED que está disponible desde la versión MySQL 5.0.3.

Con el motor MySQL FEDERATED no hay archivo de datos locales para una tabla (por ejemplo, no hay fichero .MYD). En su lugar, una base de datos remota almacena los datos que normalmente estarían en la tabla. Esto necesita eluso de la API del cliente MySQL para leer, borrar, actualizar e insertar datos. La recuperación de datos se inicia vía

un comando SELECT * FROM tbl_name . Para leer el resultado, los registros se tratan uno a uno usando la funciónde la API C mysql_fetch_row() y luego se convierten desde las columnas del conjunto de resultados SELECT alformato que el handler FEDERATED espera.

Duración: 25 min.

Objetivo: El participante describirá las características del motor FEDERATED y creará tablas usando este dichomotor de almacenamiento.

Prerequisitos: Para el siguiente laboratorio trabajará con dos instalaciones del servidor de base de datos MySQL,la de usted y la de su compañero.

Instrucciones: Realizar las siguiente actividades.

1. Primero, tiene que tener una tabla en el servidor remoto que quiera acceder con la tabla FEDERATED.

CREATE TABLE test_table (

id int(20) NOT NULL auto_increment,

name varchar(32) NOT NULL default ’’,

other int(20) NOT NULL default ’0’,

PRIMARY KEY (id),

KEY name (name),

KEY other_key (other)

)

ENGINE=MyISAM

DEFAULT CHARSET=latin1;

2. Cree un usuario en el servidor remoto con todos los privilegios sobre la tabla recién creada. Este usuario debepoder entrar desde el servidor local.

3. Cree una tabla FEDERATED en el servidor local para acceder a la tabla remota:

CREATE TABLE federated_table (

id int(20) NOT NULL auto_increment,

name varchar(32) NOT NULL default ’’,

other int(20) NOT NULL default ’0’,

PRIMARY KEY (id),

4

Page 5: Replica en Mysql

5/6/2018 Replica en Mysql - slidepdf.com

http://slidepdf.com/reader/full/replica-en-mysql 5/7

 

KEY name (name),

KEY other_key (other)

)

ENGINE=FEDERATED

DEFAULT CHARSET=latin1

COMMENT=’mysql://root@remote_host:9306/federated/test_table’;

Práctica 4. Replicación de MySQL

Introducción: Las características de MySQL 5 soportan replicación asíncrona unidireccional : un servidor actúacomo maestro y uno o más actúan como esclavos. (Esto contrasta con la replicación síncrona que es una característicade MySQL Cluster)

El servidor maestro escribe actualizaciones en el archivo de log binario, y mantiene un índice de los archivos pararastrear las rotaciones de logs. Estos logs sirven como registros de actualizaciones para enviar a los servidoresesclavos. Cuando un esclavo se conecta al maestro, informa al maestro de la posición hasta la que el esclavo ha leídolos logs en la última actualización satisfactoria. El esclavo recibe cualquier actualización que han tenido lugar desdeentonces, y se bloquea y espera para que el master le envíe nuevas actualizaciones.

La replicación unidireccional tiene beneficios para la robustez, velocidad, y administración del sistema tales como:

La robustez  se incrementa con un escenario maestro/esclavo. En caso de problemas con el maestro, puedecambiar al esclavo como copia de seguridad.

Puede conseguirse un mejor tiempo de respuesta  dividiendo la carga de consultas de clientes a procesar entrelos servidores maestro y esclavo. Se puede enviar consultas SELECT al esclavo para reducir la carga de procesode consultas del maestro. Sin embargo, las sentencias que modifican datos deben enviarse siempre al maestro,de forma que el maestro y el esclavo no se desincronicen. Esta estrategia de balanceo de carga es efectiva sidominan consultas que no actualizan datos, pero este es el caso más habitual.

Puede realizar copias de seguridad  usando un servidor esclavo sin perturbar al maestro. El maestro continúaprocesando actualizaciones mientras se realiza la copia de seguridad.

Duración: 15 min.

Objetivo: El participante conocerá las tareas básicas de replicas de bases de Datos.

Instrucciones: Seleccione la respuesta correcta.

1. Las replicas en la base de datos se usan para:

a ) crear un servidor de desarrollo para probar código real sin riesgo alguno

b) mejorar el desempeño de la base de datos.

c) hacer respaldos no corruptos

d ) mejorar disponibilidad

e) todas las anteriores

2. El log del archivo binario es:

a ) creada por defecto

b) útil para el replicación y recuperación de la base

c) un respaldo SQL

d ) todas las anteriores

3. Las operaciones de lectura y escritura son ejecutadas en

5

Page 6: Replica en Mysql

5/6/2018 Replica en Mysql - slidepdf.com

http://slidepdf.com/reader/full/replica-en-mysql 6/7

 

a ) Lectura y escritura en slaves

b) Lectura en slaves, escritura en masters

c) Lectura en masters, escritura en slaves.

d ) Ninguna de las anteriores

4. El diseño de la replica en MySQL significa:

a ) todos los datos son actualizados todo el tiempo

b) todos los servidores deben de estar conectados por si algún servidor no esta disponible, y los que estánconectados remplazaran las labores del otro hasta que pueda estar conectado nuevamente.

c) las actualizaciones son mas rápidas

d ) las actualizaciones pueden ser hechas desde cualquier servidor.

Laboratorio 5. Replicación de MySQL

Duración: 45 min.

Objetivo: El participante describirá las características de replicación proporcionadas por MySQL. Conocerá losconceptos de replicación y preparará servidores de replicación.

Prerequisitos: Para el siguiente laboratorio trabajará con dos instalaciones del servidor de base de datos MySQL,la de usted y la de su compañero. Se asume que quiere replicar todas las bases de datos en el maestro y no tieneuna replicación previamente configurarda.

Instrucciones: Realizar las siguiente actividades.

1. Asegúrese que la sección [mysqld] del archivo my.cnf en el servidor maestro incluye una opción log-bin. Estasección debe también tener la opción server-id=master_id , donde master_id debe ser un entero positivo de1 a 2

32 - 1.

[mysqld]log-bin=mysql-bin

server-id=1

2. Reiniciar el servidor maestro y esclavo. Hasta este punto aún no van a replicar porque no les hemos indicadoque empiecen a replicar.

3. Preparar una cuenta en el servidor maestro que pueda usar el esclavo para conectarse. Esta cuenta debe tenerel privilegio REPLICATION SLAVE .

  mysql> GRANT REPLICATION SLAVE ON *.*

-> TO ’repl’@’%.mydomain.com’ IDENTIFIED BY ’slavepass’;

  mysql> flush privileges;

4. Bloquear las tablas para evitar actualizaciones.

  mysql> LOCK ALL TABLES READ ONLY

5. Detener el servidor que se vaya a usar como esclavo y añada lo siguiente a su archivo my.cnf :

[mysqld]

server-id=slave_id

6. Hacer un respaldo completo del servidor maestro con el comando mysqldump

6

Page 7: Replica en Mysql

5/6/2018 Replica en Mysql - slidepdf.com

http://slidepdf.com/reader/full/replica-en-mysql 7/7

 

shell> mysqldump > dump_file.sql

7. Una vez terminado el respaldo, tenemos que recordar la situación del log binario en el servidor maestro:

  mysql> SHOW MASTER STATUS;

+------------------+----------+--------------+------------------+

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+------------------+----------+--------------+------------------+| mysql-bin.000005 | 98 | | |

+------------------+----------+--------------+------------------+

1 row in set (0.00 sec)

8. Transferir el respaldo al servidor esclavo y realizar la recuperación.

shell> mysql -u root -p < dump_file.sql

9. Ejecute los siguientes comandos en el esclavo, reemplazando los valores de opciones con los valores adecuadospara su sistema:

  mysql> CHANGE MASTER TO

-> MASTER_HOST=’master_host_name’,-> MASTER_USER=’replication_user_name’,

-> MASTER_PASSWORD=’replication_password’,

-> MASTER_LOG_FILE=’recorded_log_file_name’,

-> MASTER_LOG_POS=recorded_log_position;

10. Arranque el flujo esclavo:

  mysql> START SLAVE;

11. Para comprobar que realmente está replicando, tendremos que ejecutar el siguiente comando en la consola deMySQL:

  mysql> show slave status \G

Una vez realizado este procedimiento, el esclavo debe conectar con el maestro y realizar cualquier actualización quehaya ocurrido desde que se obtuvieron los datos.

7