Sunteți pe pagina 1din 7

Mdulo 7.

Administracin de MySQL
Gua de Prcticas y Laboratorios Da 2

Francisco Medina Lpez Marzo 2010

Prctica 1. Administrando los privilegios de Usuarios


Duracin: 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 reere 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 reere 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 3. El privilegio RELOAD se reere 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 reere 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

Laboratorio 1. Administrando los privilegios de Usuarios


Duracin: 15 min. Objetivo: El participante aplicara como crear usuarios, as como darle privilegios a estos dentro de la base de datos. Instrucciones: Escriba lo que se le pide a continuacin. 1. Cree un usuario llamado bill, con la contrasea secret, que tenga privilegios de select, update, insert y delete sobre la tabla departamento.

2. Escriba el cdigo que revoque todos los privilegios del usuario.

Prctica 2. Administrando la Base de Datos


Duracin: 15 min. Objetivo: El participante aplicara y entender cuales son las tareas diarias de administracin de las bases de datos en 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 especica 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

Laboratorio 2. Administrando la Base de Datos


Duracin: 15 min. Objetivo: El participante interpretara los logs de MySQL Instrucciones: Realice varias consultas para que almacene datos en los diferentes logs de MySQL,

Prctica 3. Respaldos y Recuperacin de las Bases de Datos MySQL


Duracin: 15 min. Objetivo: El participante conocer las tareas bsicas de respaldos y recuperacin de bases de Datos. Instrucciones: Seleccione la respuesta correcta. 1. : Si deseas hacer una recuperacin 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 MyISAM c) MyISAM y BDB d) InnoDB y BDB 5. Si al ejecutar CHECK TABLE aparece lo siguiente Table is already up to date , signica: a) Se necesita ejecutar REPAIR TABLE b) No esta soportado CHECK TABLE c) La tabla esta bien d) Ninguna de las anteriores. 3

Laboratorio 3. Respaldos y Recuperacin de las Bases de Datos MySQL


Duracin: 15 min. Objetivo: El participante creara respaldos de la Base de Datos Instrucciones: Cree un respaldo y recuperacin de la Base de Datos usando cada uno de los mtodos mencionados.

Laboratorio 4. Tablas Federadas


Introduccin: Las tablas federadas permiten acceder a datos en tablas de bases de datos remotas en lugar de tablas locales. Se implementan a travs del motor FEDERATED que est disponible desde la versin MySQL 5.0.3. Con el motor MySQL FEDERATED no hay archivo de datos locales para una tabla (por ejemplo, no hay chero .MYD ). En su lugar, una base de datos remota almacena los datos que normalmente estaran en la tabla. Esto necesita el uso de la API del cliente MySQL para leer, borrar, actualizar e insertar datos. La recuperacin de datos se inicia va un comando SELECT * FROM tbl_name . Para leer el resultado, los registros se tratan uno a uno usando la funcin de la API C mysql_fetch_row() y luego se convierten desde las columnas del conjunto de resultados SELECT al formato que el handler FEDERATED espera. Duracin: 25 min. Objetivo: El participante describir las caractersticas del motor FEDERATED y crear tablas usando este dicho motor 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 compaero. 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 recin creada. Este usuario debe poder 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),

KEY name (name), KEY other_key (other) ) ENGINE=FEDERATED DEFAULT CHARSET=latin1 COMMENT=mysql://root@remote_host:9306/federated/test_table;

Prctica 4. Replicacin de MySQL


Introduccin: Las caractersticas de MySQL 5 soportan replicacin asncrona unidireccional: un servidor acta como maestro y uno o ms actan como esclavos. (Esto contrasta con la replicacin sncrona que es una caracterstica de MySQL Cluster) El servidor maestro escribe actualizaciones en el archivo de log binario, y mantiene un ndice de los archivos para rastrear las rotaciones de logs. Estos logs sirven como registros de actualizaciones para enviar a los servidores esclavos. Cuando un esclavo se conecta al maestro, informa al maestro de la posicin hasta la que el esclavo ha ledo los logs en la ltima actualizacin satisfactoria. El esclavo recibe cualquier actualizacin que han tenido lugar desde entonces, y se bloquea y espera para que el master le enve nuevas actualizaciones. La replicacin unidireccional tiene benecios para la robustez, velocidad, y administracin del sistema tales como: La robustez se incrementa con un escenario maestro/esclavo. En caso de problemas con el maestro, puede cambiar al esclavo como copia de seguridad. Puede conseguirse un mejor tiempo de respuesta dividiendo la carga de consultas de clientes a procesar entre los servidores maestro y esclavo. Se puede enviar consultas SELECT al esclavo para reducir la carga de proceso de consultas del maestro. Sin embargo, las sentencias que modican 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 si dominan consultas que no actualizan datos, pero este es el caso ms habitual. Puede realizar copias de seguridad usando un servidor esclavo sin perturbar al maestro. El maestro contina procesando actualizaciones mientras se realiza la copia de seguridad. Duracin: 15 min. Objetivo: El participante conocer las tareas bsicas 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 cdigo real sin riesgo alguno b) mejorar el desempeo 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 replicacin y recuperacin de la base c) un respaldo SQL d) todas las anteriores 3. Las operaciones de lectura y escritura son ejecutadas en 5

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 diseo de la replica en MySQL signica: a) todos los datos son actualizados todo el tiempo b) todos los servidores deben de estar conectados por si algn servidor no esta disponible, y los que estn conectados remplazaran las labores del otro hasta que pueda estar conectado nuevamente. c) las actualizaciones son mas rpidas d) las actualizaciones pueden ser hechas desde cualquier servidor.

Laboratorio 5. Replicacin de MySQL


Duracin: 45 min. Objetivo: El participante describir las caractersticas de replicacin proporcionadas por MySQL. Conocer los conceptos de replicacin y preparar servidores de replicacin. Prerequisitos: Para el siguiente laboratorio trabajar con dos instalaciones del servidor de base de datos MySQL, la de usted y la de su compaero. Se asume que quiere replicar todas las bases de datos en el maestro y no tiene una replicacin previamente congurarda. Instrucciones: Realizar las siguiente actividades. 1. Asegrese que la seccin [mysqld] del archivo my.cnf en el servidor maestro incluye una opcin log-bin. Esta seccin debe tambin tener la opcin server-id=master_id , donde master_id debe ser un entero positivo de 1 a 232 - 1. [mysqld] log-bin=mysql-bin server-id=1 2. Reiniciar el servidor maestro y esclavo. Hasta este punto an no van a replicar porque no les hemos indicado que empiecen a replicar. 3. Preparar una cuenta en el servidor maestro que pueda usar el esclavo para conectarse. Esta cuenta debe tener el 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 aada 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

shell> mysqldump > dump_file.sql 7. Una vez terminado el respaldo, tenemos que recordar la situacin 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 recuperacin. shell> mysql -u root -p < dump_file.sql

9. Ejecute los siguientes comandos en el esclavo, reemplazando los valores de opciones con los valores adecuados para 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 ujo esclavo: mysql> START SLAVE; 11. Para comprobar que realmente est replicando, tendremos que ejecutar el siguiente comando en la consola de MySQL: mysql> show slave status \G Una vez realizado este procedimiento, el esclavo debe conectar con el maestro y realizar cualquier actualizacin que haya ocurrido desde que se obtuvieron los datos.

S-ar putea să vă placă și