miércoles, 22 de mayo de 2013

Respaldos


Respaldos
1.    ¿ Por qué es importante para el administrador saber hacer respaldos ?
Las copias de seguridad son uno de los mecanismos mas utilizados por administradores para restaurar un sistema informatico. La perdida de datos o la inestabilidad del sistema son factores a tener en cuenta a la hora de hacer estas copias de seguridad o backups. Al perderse estos datos tenemos una copia de nuestro sistema en otro dispositivo de almacenamiento masivo que se utilizara para restaurar dichos datos.

2.    ¿Es responsabilidad del administrador hacer un respaldo periódico de los sistemas de archivos de la máquina que administra?
El sistema de archivo debe respaldarse de acuerdo con algún proceso automatizado, de preferencia cuando el sistema no se encuentre en uso, y con la menor intervención posible de los operadores. Además debe tener un plan de respaldo que satisfaga sus necesidades y que haga posible la restauración de copias recientes de archivos, utilizando una combinación de respaldos completos e incrementales

3.    ¿Cómo se hace un respaldo y ¿Cómo se restaura un respaldo ?
·         Primero abrimos una ventana de comandos de Windows (menuInicio => Ejecutarcmd).
·         Ya abierta dicha ventana nos situamos en la carpeta de los binarios de mySQL, pues ahí se encuentra el ejecutable de mysqldump, la cual se encuentra en la carpeta bin del directorio de instalación (para mi caso, cd "c:\Archivos de programa\MySQL\MySQL Server 5.1\bin").
·         A continuación ejecutamos el programa mysqldump con las opciones que más nos convengan. Para mi caso en especial utilizaré el comando como se muestra a continuación.
mysqldump --opt -a --single-transaction -h localhost -u root -pmiServer –databases bdd_practica1 > c:\Users\G10\backup_bdd_practica1.sql
Restaurar
mysql --user=root --password=miServer bdd_practica1 < c:\Users\G10\backup_bdd_practica1.sql

4.    ¿Cómo se muestra en pantalla el contenido de un respaldo?
Para ver el contenido de un respaldo se usa la opción (t), veamos el contenido de los respaldos que ya efectuamos.
# cd /root
# tar tvzf backup.tgz | more
# tar tvf /dev/fd0 | more

5.    ¿Se puede  copiar una estructura de directorios, preservando los permisos, dueños, grupos, fechas y ligas ? Ilustra tu respuesta.
# mkdir /users/newhome Crear el directorio destino.
# cd /home Colocarse en el directorio a copiar.
# find . -depth -print | cpio -pdmv /users/newhome Copiar los archivos.
# rm -rf /home Opcional. Borrar el directorio origen,
sólo si se desea mover el directorio.

domingo, 28 de abril de 2013

Espejeo


Se conoce como copia espejo (en inglés data mirroring) al procedimiento  de protección de datos y de acceso a los mismos en los equipos  informáticos implementado en la tecnología de RAID.

RAID.- conjunto redundante de discos independientes, hace referencia a un sistema de almacenamiento que usan múltiples discos duros o SSD entre los que se distribuyen o replican los datos.

Base de Datos Espejo (Database Mirroring).- es una configuración donde dos o tres servidores de dase de datos, ejecutándose en equipos independientes, cooperan para  mantener copias de la base de datos y archivo de registro de transacciones (log).

Tanto el servidor primario como el servidor espejo mantienen una copia de la base de datos y el registro de transacciones, mientras que el tercer servidor, llamado el servidor árbitro, es usado cuando es necesario determinar cuál de los los otros dos servidores puede tomar la propiedad de la base de datos. El árbitro no mantiene una copia de la base de datos. La configuración de los tres servidores de base de datos (el primario, el espejo y el árbitro) es llamado Sistema Espejo (Mirroring System), y el servidor primarioy espejo juntos son llamados Servidores Operacionales (Operational Servers) o Compañeros (Partners).

Beneficios
·         Este método permite hacer una réplica exacta de una base de datos de un servidor a otro. La gran ventaja de este método es que permite el failover automático sin intervención humana
·         Con este modo, se logra tener una copia exacta (un espejo de nuestra base de datos) de una instancia en otra.

·         Cualquier cambio hecho en la base de datos de la primera instancia, es replicado inmediatamente en la base de datos de la segunda instancia (la instancia y base de datos reflejada).

Hacer un mirror
Para hacer el mirror, es necesario como mínimo 2 instancia y como máximo 3. Si utilizamos 2 instancias, una de ellas contiene la base de datos y la otra la espejo. La pega de esta configuración es que el failover no es automático y se necesita intervención humana. Si utilizamos 3 instancias, entonces utilizamos una de ellas como witness server y permite que el failover sea automático, osea que cuando una caiga, la otra se ponga en marcha.

Sentencia en MySQL
mysqldump.exe --opt --password=123 --user=root mi_db  > c:\replica_db.sql

·         mysqldump opera en cooperación con el servidor MySQL. Los métodos de copia directa son externos al servidor, de manera que usted debe tomar las medidas oportunas para asegurar que ningún cliente modifique las tablas mientras usted las copia genera archivos de texto transportables a otras máquinas (aún cuando presenten distintas arquitecturas hardware). Los archivos de copia directa no lo son, a no ser que las tablas que esté copiando usen el formato de almacenamiento MyISAM.

Creación
Prepare una cuenta en el maestro que pueda usar el esclavo para conectar. Este cuenta debe tener el privilegioREPLICATION SLAVE . Si la cuenta se usa sólo para replicación (lo que se recomienda), no necesita dar ningún privilegio adicional.

mysql> GRANT REPLICATION SLAVE ON *.*  TO 'repl'@'%.mydomain.com' IDENTIFIED BY 'slavepass';

Si usa sólo tablas MyISAM , vuelque todas las tablas y bloquee los comandos de escritura ejecutando un comandoFLUSH TABLES WITH READ LOCK :
mysql> FLUSH TABLES WITH READ LOCK;

Para usar tar para crear un archivo que incluya todas las bases de datos, cambie la localización en el directorio de datos del maestro, luego ejecute el comando:
shell> tar -cvf /tmp/mysql-snapshot.tar .

Si quiere que el archivo sólo incluya una base de datos llamada this_db, use este comando:
shell> tar -cvf /tmp/mysql-snapshot.tar ./this_db

Luego copie el archivo en el directorio /tmp del servidor esclavo. En esa máquina, cambie la localización al directorio de datos del esclavo, y desempaquete el fichero usando este comando:

shell> tar -xvf /tmp/mysql-snapshot.tar

Mientras el bloqueo de FLUSH TABLES WITH READ LOCK está en efecto, lee el valor del nombre y el desplazamiento del log binario actual en el maestro:
mysql > SHOW MASTER STATUS;

Una vez que tiene los datos y ha guardado el nombre y desplazamiento del log, puede reanudar la actividad de escritura en el maestro:
mysql> UNLOCK TABLES;

Para guardar los nombres de ficheros actual y desplazamientos, debe ejecutar el siguiente comando antes de parar el servidor:
mysql> FLUSH TABLES WITH READ LOCK;
mysql> SHOW MASTER STATUS;


Bibliografia
http://www.techdays.com.ar/2009/08/21/tutorial-creando-backup-automaticamente-de-bases-de-datos-mysql/
http://es.wikipedia.org/wiki/Copia_espejo
http://es.wikipedia.org/wiki/RAID
http://miblogtecnico.wordpress.com/tag/failover-en-sql-server/
http://www.corporacionsybven.com/portal/index.php?option=com_content&view=article&id=362




viernes, 26 de abril de 2013

Problemas de seguridad y soluciones


Posibles problemas con la base de datos

el usuario.- causa del mayor problema ligado a la seguridad de un sistema informativo (porque no le importa, no se da cuenta o es causado a propósito).

programas maliciosos.- programas destinados a perjudicar o hacer un uso ilícito de los recursos del sistema. Es instalado a propósito o sin intención en el ordenador abriendo una puerta a intrusos.

un intruso .- persona que consigue acceder a los datos o programas de los cuales no tiene acceso permitido

Siniestro (robo, incendio, etc).- una mala manipulación o una mala intención derivan a la perdida del material o de los archivos

personal interno de sistemas.- disociaciones entre los sectores y soluciones incompatibles para la seguridad informática

Soluciones

Físicas: Controlar el acceso al equipo. Tarjetas de acceso, etc

Personal: Acceso sólo del personal autorizado. Evitar sobornos, etc.

SO: Seguridad a nivel de SO

SGBD: Uso herramientas de seguridad que proporcione el SGBD. Perfiles de usuario, vistas, restricciones de uso de vistas, etc.

Autorización:  usar  derechos  de  acceso  dados  por el terminal,  por  la operación que puede realizar o por la hora del día.

Uso de técnicas de cifrado: para proteger datos en Base de Datos distribuidas o con acceso por red o internet.

Diferentes tipos de cuentas:  en especial del ABD  con   permisos  para:  creación de cuentas,   concesión  y  revocación   de  privilegios y  asignación  de   los niveles de seguridad.


http://html.rincondelvago.com/seguridad-en-bases-de-datos.html
http://www.slideshare.net/faaTiimaaG/actividad-6-problemas-de-seguridad-y-sus-soluciones