miércoles, 8 de junio de 2011

3.1.- Administración de transacciones

3.1

A. Administración de transacciones.

Definición de transacciones

Transacción en un sistema de gestión de bases de datos (SGBD), es un conjunto de órdenes que se ejecutan formando una unidad de trabajo, es decir, en forma indivisible o atómica.

Protocolo de bloqueo en dos fases.

Protocolo que asegura la secuencialidad es el protocolo de bloqueo de dos fases. Este protocolo exige que cada transacción realice las peticiones de bloqueo y desbloqueo de dos fases.

1.- Fase de crecimiento.- Una transacción puede obtener bloqueos pero no puede liberarlos.

2.- Fase de decrecimiento.- Una transacción puede liberar bloqueos pero no puede obtener ninguno nuevo.

Inicialmente una transacción está en la fase de crecimiento. La transacción adquiere los bloqueos que necesite. Una vez que la transacción entra un bloqueo, entra en la fase de crecimiento como puede alcanzar peticiones de bloqueo.

Se puede mostrar que el protocolo de bloqueo de dos fases asegura secuencialidad en cuanto a conflictos. Considérese cualquier transacción. El punto de la planificación en el cual la transacción obtiene el bloqueo final (el final de la fase de crecimiento) se denomina punto de bloqueo de la transacción.

El protocolo de bloqueo de dos fase no asegura la ausencia de interbloqueos.

 
Recuperación de información

mediante transacciones.

El control de transacciones concurrentes en una base de datos brinda un eficiente desempeño del Sistema de Base de Datos, puesto que permite controlar la ejecución de transacciones que operan en paralelo, accesando a información compartida y, por lo tanto, interfiriendo potencialmente unas con otras.

El hecho de reservar un asiento en una avión mediante un sistema basado en aplicaciones web, cuando decenas de personas en el mundo pueden reservarlo también, nos da una idea de lo importante y crucial que es el control de concurrencia en un sistema de base de datos a mediana o gran escala.


Otro ejemplo en el que podemos observar la incidencia del control de concurrencia en el siguiente: en una Base de Datos bancaria podría ocurrir que se paguen dos cheques en forma simultánea sobre una cuenta que no tiene saldo suficiente para cubrirlos en su totalidad, esto es posible evitarlo si se tiene un control de concurrencia.
B. Manejo de Concurrencia.

Definición de concurrencia.

La concurrencia es un fenómeno que se presenta en varios contextos. Uno de ellos es la multiprogramación ya que el tiempo del procesador es compartido dinámicamente por varios procesos. Otro caso son las aplicaciones estructuradas, donde la programación estructurada se implementa como un conjunto de procesos concurrentes. Y por ultimo se tiene que la misma estructuración recién mencionada es utilizada en el diseño de los sistemas operativos, los cuales se implementan como un conjunto de procesos

Técnicas de bloqueo

Se puede definir bloqueo (también llamado seguro o candado) como "una variable asociada a cada elemento de datos, que describe el estado de dicho elemento respecto a las posibles operaciones (recuperación o actualización) que se pueden realizar sobre ellos en cada momento".
Las transacciones pueden llevar a cabo bloqueos, por ejemplo, sobre los registros que vayan a utilizar, impidiendo a otros usuarios la recuperación o actualización de los elementos bloqueados, pudiéndose así evitar inconsistencias en el acceso concurrente.
Seriabilidad con el bloqueo en dos fases.


El protocolo de bloqueo de dos fase no asegura la ausencia de interbloqueos.
Los retrocesos en cascada se pueden evitar por medio de una modificación del protocolo de dos fases que se denomina protocolo de bloque estricto de dos fases.
El protocolo de bloque estricto de dos fases exige que además de que el bloqueo sea de dos fases, una transacción debe poseer todos los bloqueos en modo exclusivo que tome hasta que dicha transacción no comprometida está bloqueado en modo exclusivo hasta que la transacción lea el dato.
Otra variante del bloqueo de dos fases es el protocolo de bloqueo riguroso de dos fases, el cual exige que se posean todos los bloqueos hasta que se comprometan la transacción. Se puede comprobar fácilmente que con el bloqueo riguroso de dos fases se pueden secuenciar las transacciones en el orden en que se comprometen

  

3.2 CONFIGURACION DE CONTROLES DE ACCESO

3.2
A. Configuración de controles de acceso.

Creación, modificación y

Eliminación de usuarios.

Las únicas cuentas autorizadas a ejecutar los siguientes comandos son:  apalacios, scamposd, mtapia, jmorales, hcastilloo, jcisternas. Deben ingresar vía ssh al servidor hera.inf.ucv.cl y ejecutar los comandos tal cual se muestran aquí: Antes de crear una cuenta, deben pedirle el comprobante de matrícula al  alumno(a). Si no lo tiene en su poder, deben pedirle que ingrese a su  navegador académico y confirmar que esté matriculado en esta Escuela.

Los comandos son:

- Verificar que el id de usuario no exista:

            id <napellido>

Crear usuario:

sudo smbldap-useradd -m <napellido>

Ingresar el nombre y apellido completo:

sudo smbldap-userinfo <napellido>

Crear o cambiar la contraseña:

sudo smbldap-passwd <napellido>

Borrar un usuario:

sudo smbldap-userdel -r <napellido>

1.- Favor usar estos comandos con cuidado, especialmente el que permite  borrar usuarios ya que también se borran sus archivos en la carpeta raíz (/var/home/napellido).

2.- Crear SIEMPRE las cuentas con la primera letra del nombre y el  primer apellido completo. Si el "napellido" ya existe, preguntar el segundo apellido y añadir la inicial al final ("napellidoa"). Ejemplos:  fmoralesm, apalaciosc, scamposd.

3.- Las cuentas que no cumplan el formato anterior serán eliminadas.

Ejemplos: "usuario", "usuario1", "test", "probando", "fernandom",

"aquilesp", etc.

4.- Es obligatorio el comando "smbldap-userinfo" para almacenar el nombre completo del usuario.


5.- Comiencen cambiando sus propias contraseñas. Como ahora tienen permisos de administración en el servidor (solo para los comandos anteriores), sus contraseñas deben ser robustas (más de 8 caracteres, usar letras y números).

Definición de roles y perfiles.

Los roles son conjuntos de privilegios. Un rol puede tener garantizados una serie de privilegios tanto del sistema como sobre objetos, y a la vez puede tener garantizado otros roles.

Por defecto cuando creamos un usuario desde el Enterprise Manager se le asigna el permiso de Connect, lo que permite al usuario conectarse a la BD y crear sus propios objetos en su propio esquema. De otra manera, debemos asignarlos en forma manual.

Sintaxis para crear un Rol y asignarlo a un usuario:

SQL> CREATE ROLE appl_dba;

Opcionalmente, se puede asignar una clave al Rol:

SQL> SET ROLE appl_dba IDENTIFIED BY app_pwd;

Para asignar este Rol a un usuario:

SQL> GRANT appl_dba TO jperez;

Otro uso común de los roles es asignarles privilegios a nivel de Objetos, por ejemplo en una Tabla de Facturas en donde sólo queremos que se puedan hacer Querys e Inserts:

SQL> CREATE ROLE consulta;

SQL> GRANT SELECT, INSERT on analista.factura TO consulta;

· PERFILES

Los perfiles permiten definir limitaciones de recursos. Por ejemplo podemos definir un perfil que limite el número de sesiones abiertas concurrentemente por un usuario cualquiera, y posteriormente aplicar este perfil a uno o más usuarios concretos.


Asignación de privilegios a usuarios en el sistema gestor y
en la base de datos.

son un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan.


Creacion:

Para crear una base se deben realizar dos ejercicios de diseño: un diseño lógico y uno físico. El diseño lógico de una base de datos es un modelo abstracto de la base de datos desde una perspectiva de negocios, mientras que el diseño físico muestra como la base de datos se ordena en realidad en los dispositivos de almacenamiento de acceso directo. El diseño físico de la base de datos es llevado a cabo por los especialistas en bases de datos, mientras que el diseño lógico requiere de una descripción detallada de las necesidades de información del negocio de los negocios actuales usuarios finales de la base. Idealmente, el diseños de la base será una parte del esfuerzo global de la planeación de datos a nivel institucional.
El diseño lógico de la base de datos describe como los elementos en la base de datos han de quedar agrupados.
El
proceso de diseño identifica las relaciones entre los elementos de datos y la manera más eficiente de agruparlos para cumplir con los requerimientos de información. El proceso también identifica elementos redundantes y los agrupamientos de los elementos de datos que se requieren para programas de aplicaciones específicos. Los grupos de datos son organizados, refinados y agilizados hasta que una imagen lógica general de las relaciones entre todos los elementos en la base de datos surja.
B. Respaldo de datos.

Primero abrir el Administrador Corporativo de SQL Server.

En el administrador expande las opciones hasta que encuentres la base de datos que deseas respaldar.

Luego tienes que hacer click derecho sobre la base de datos. Elije la opcion "Todas las tareas" y luego la opcion "Copia de seguridad de la base de datos"

Se abrira una ventana en la cual tienes que presionar el botón agregar (para el destino).

En la ventana que se abrira elige la ruta donde quedara el archivo de respaldo. Aun vez listo esto presiona aceptar en la ventana.

En la ventana anterior puedes darle un nombre a tu respaldo. una vez listo presiona aceptar en la ventana para iniciar el respaldo.

SQLServer dejara uno(s) archivo(s) en el lugar donde le indicaste, estos son los archivos que tienes que respaldar.

Luego para restaurar tienes que nuevamente abrir el administrador corporativo , seleccionar la base de datos y click derecho sobre ella. Elije la opcion "Todas las tareas" y luego "Restaurar Base de datos". en la ventana que se abrira selecciona "Desde Dispositivo", esto te permitira buscar el archivo de respaldo. Busca el archivo y presiona acepar en la ventana



 Tipos de respaldo

1.- Respaldo de Datos (BACKUP DATA
BASE)

Deficnicion  de respaldo BACKUP DATABASE


La palabra "Backup" significa subir respaldo, siendo común el uso de este término dentro del ámbito informático. El respaldo de información es la copia de los datos importantes de un dispositivo primario en uno ó varios dispositivos secundarios, ello para que en caso de que el primer dispositivo sufra una avería electromecánica ó un error en su estructura lógica, sea posible contar con la mayor parte de la información necesaria para continuar con las actividades rutinarias y evitar pérdida generalizada de datos.

 Importancia del respaldo de información


La importancia radica en que todos los dispositivos de almacenamiento masivo de información tienen la posibilidad de fallar, por lo tanto es necesario que se cuente con una copia de seguridad de la información importante, ya que la probabilidad de que 2 dispositivos fallen de manera simultánea es muy difícil.

 Métodos para el respaldo de información

·         Manual: el usuario copia directamente los archivos a respaldar por medio de comandos ó por medio del explorador de archivos de su respectivo sistema operativo.

Otra forma de realizar las copias de seguridad es por medio de una aplicación que permita la creación de la copia al momento y con los datos existentes hasta ese momento, regularmente los datos se almacenan en forma de archivos comprimidos para ahorrar espacio. Ejemplo Microsoft® Copia de Seguridad.

·         Automático: por medio de una aplicación especializada, el usuario programa los archivos a guardar y este respaldo se va actualizando en tiempo real (simultáneamente), conforme se van registrando cambios en los archivos. Ejemplo Computer Associates® Survive IT.

Este es el respaldo completo
BACKUP DATABASE [Telemarketing] TO DISK
= 'd:espaldos\completo\TMK.DAT ' with init

Este es el Respaldo de Log.
BACKUP LOG Telemarketing TO DISK
= 'd:espaldos\completo\\0900AM.DAT ' with init




2.- Respaldo de Logs (BACKUP LOG)

BACKUP LOG MIBASE TO  DISK = N'D:\BASESQL\Backup\RespaldoLog.bak' WITH

NOFORMAT, NOINIT,  NAME = N'Copia de Seguridad LOG Transacciones', SKIP,

NOREWIND, NOUNLOAD,  STATS = 10


miércoles, 4 de mayo de 2011

FORMULARIO

FORMULARIO
Crear un formulario mediante la herramienta Formulario
Puede usar la herramienta Formulario para crear rápidamente un formulario con un solo elemento. Este tipo de formulario muestra información acerca de un solo registro a la vez, como puede verse en la siguiente...
https://docs.google.com/document/d/1-ay4sFNz255irPgMb_L-GSPsGCNlXvedHr_jXVA9SfE/edit?hl=es#

lunes, 11 de abril de 2011

Manual de access

Empezar a usar Access por primera vez

Office Access 2007 incluye varias mejoras gracias a las cuales la creación de una base de datos resulta más fácil que nunca. Los usuarios que
hayan creado bases de datos en versiones anteriores de Access percibirán cómo estas nuevas y mejores características aceleran el proceso de
creación.

Cuando inicie Office Access 2007, la primera pantalla que aparece es la página Introducción a Microsoft Office Access, a menos que
inicie Access haciendo doble clic en un archivo de base de datos específico de Access, en cuyo caso se abre esa base de datos. La página
Introducción a Microsoft Office Access es el punto de partida a partir del cual se puede crear una nueva base de datos, abrir una base de
datos existente o ver contenido destacado de Microsoft Office Online.

--> https://docs.google.com/leaf?id=0B1-QGbKpnMP8NTU3Zjg5NWEtNjc0Ny00NzY3LTg3NmUtYjM5NDI3NGYzNTE1&hl=es

miércoles, 23 de marzo de 2011

Access - tablas

Crear tablas en una base de datos
Cuando se crea una base de datos, los datos se almacenan en tablas, que son listas de filas y columnas basadas en temas. Por ejemplo, puede crear una tabla Contactos para almacenar una lista de nombres, direcciones y números de teléfono, o una tabla Productos para almacenar información sobre productos. Siempre debe empezar a diseñar una base de datos creando primero sus tablas, incluso antes de crear otros objetos de base de datos.
En este artículo se explica cómo crear tablas. Aprenderá a crear una tabla, a agregar campos a la tabla y a definir la clave principal de una tabla. Obtendrá también información sobre los tipos de datos y sobre el modo de definir propiedades de los campos y de la tabla.
Antes de crear tablas, debe examinar cuidadosamente sus requisitos y diseñar la base de datos para determinar las tablas que necesita. Para obtener una introducción a la preparación y diseño de una base de datos, vea el artículo Conceptos básicos del diseño de una base de datos.
¿Qué es una tabla?
Una tabla contiene datos sobre un tema en concreto, como empleados o productos. Cada registro de una tabla contiene información sobre un elemento, como un determinado empleado. Un registro se compone de campos, como un nombre, una dirección y un número de teléfono. Los registros se suelen denominar también filas y los campos, columnas.
Registro o fila
Campo o columna
La base de datos puede contener muchas tablas, cada una de ellas con información sobre un tema diferente. Cada tabla, a su vez, puede contener muchos campos de diferentes tipos, como texto, números, fechas e imágenes.
En la lista siguiente se indican algunos ejemplos de tablas comunes que puede crear.
*  Una tabla de clientes con los clientes de su empresa y sus direcciones
*  Un catálogo de los productos en venta con precios e imágenes de cada artículo
*  Una tabla de tareas para controlar las tareas y los plazos
*  Un inventario de equipo o stock disponible
Debe planear y diseñar la base de datos con cuidado para asegurarse de que tiene un diseño correcto y evitar así tener que realizar muchos cambios posteriormente. Para obtener información sobre cómo planear y diseñar una base de datos, vea el artículo Conceptos básicos del diseño de una base de datos.
Crear una tabla nueva
Una base de datos simple, como una lista de contactos, puede contener sólo una tabla, pero hay muchas bases de datos que contienen varias tablas. Cuando crea una nueva base de datos, crea un nuevo archivo que sirve de contenedor para todos los objetos de la base de datos, incluidas las tablas.
Puede crear una tabla creando una nueva base de datos, insertando una tabla en una base de datos existente o importando o vinculando una tabla desde otro origen de datos, como un libro de Microsoft Office Excel 2007, un documento de Microsoft Office Word 2007, un archivo de texto u otra base de datos. Cuando crea una nueva base de datos en blanco, se inserta automáticamente una nueva tabla vacía. A continuación, puede escribir datos para empezar a definir los campos.
Crear una tabla en una nueva base de datos
1.        Haga clic en el Botón Microsoft Office y, a continuación, haga clic en Nuevo.
2.      En el cuadro Nombre de archivo, escriba el nombre del archivo. Para cambiar la ubicación, haga clic en el icono de carpeta para buscar la ubicación.
3.       Haga clic en Crear.
Se abre la nueva base de datos, se crea una nueva tabla denominada Tabla1 y se abre en la vista Hoja de datos.
Crear una tabla en una base de datos existente
1.        Haga clic en el Botón Microsoft Office y, a continuación, haga clic en Abrir.
2.      En el cuadro de diálogo Abrir, seleccione y abra la base de datos.
3.       En la ficha Crear, en el grupo Tablas, haga clic en Tabla.
Se inserta una nueva tabla en la base de datos y la tabla se abre en la vista Hoja de datos.
Crear una tabla a partir de una plantilla de tabla
Para crear una tabla Contactos, Tareas, Problemas, Eventos o Activos, tal vez desee partir de una de las plantillas de tablas para estos temas que se incluyen en Office Access 2007. Las plantillas de tablas se diseñaron para que fueran compatibles con las listas de Microsoft Windows SharePoint Services 3.0 del mismo nombre.
1.        Haga clic en el Botón Microsoft Office y, a continuación, haga clic en Abrir.
2.      En el cuadro de diálogo Abrir, seleccione y abra la base de datos.
3.       En la ficha Crear, en el grupo Tablas, haga clic en Plantillas de tabla y, a continuación, seleccione una de las plantillas disponibles de la lista.
Se inserta una nueva tabla basada en la plantilla de tabla que ha seleccionado.
Importar o vincular para crear una tabla
Puede crear una tabla importando o vinculando información almacenada en otro lugar. Por ejemplo, puede importar o vincular a la información de una hoja de cálculo de Excel, una lista de SharePoint, un archivo XML, otra base de datos de Access, una carpeta de Microsoft Office Outlook 2007 y otros orígenes distintos. Cuando se importa la información, se crea una copia de la información en una nueva tabla de la base de datos actual. Sin embargo, cuando se vincula a la información, se crea una tabla vinculada en la base de datos que representa un vínculo activo a la información existente almacenada en otro lugar. Por tanto, cuando cambie los datos en la tabla vinculada, los cambiará también en el origen, con algunas excepciones (vea la nota a continuación). Cuando se cambia la información en el origen mediante otro programa, ese cambio queda reflejado en la tabla vinculada.
 Nota    En algunos casos, no puede realizar modificaciones en el origen de datos a través de una tabla vinculada, especialmente si el origen de datos es una hoja de cálculo de Excel.
Crear una nueva tabla importando o vinculando datos externos
1.        Para usar una base de datos existente, en el menú Archivo, haga clic en Abrir.
2.      En el cuadro de diálogo Abrir, seleccione y abra la base de datos.
3.       Para crear una nueva base de datos, en el menú Archivo, haga clic en Nuevo.
§  En el cuadro de texto Nombre de archivo, escriba el nombre del archivo. Para cambiar la ubicación, haga clic en el icono de carpeta.
§  Haga clic en Crear.
Se abre la nueva base de datos, se crea una nueva tabla denominada Tabla1 y se abre en la vista Hoja de datos.
4.      En la ficha Datos externos, en el grupo Importar, haga clic en uno de los orígenes de datos disponibles.
5.      Siga las instrucciones de los cuadros de diálogo.
Access crea la nueva tabla y la muestra en el panel de exploración.
 Nota    También puede importar o vincular a una lista de SharePoint mediante un comando de la ficha Crear. Vea la siguiente sección para obtener instrucciones detalladas.
Crear una tabla a partir de una lista de SharePoint
Puede crear una tabla en la base de datos que importe o se vincule a una lista de SharePoint. Esta lista puede existir previamente, en cuyo caso puede importarla o crear un vínculo a la misma, o bien, puede crear una nueva lista personalizada o una nueva lista basada en una plantilla predefinida. Las plantillas predefinidas de Office Access 2007 son Contactos, Tareas, Problemas y Eventos.
En primer lugar, abra la base de datos en la que desea crear la tabla.
1.        Haga clic en el Botón Microsoft Office y, a continuación, haga clic en Abrir.
2.      En el cuadro de diálogo Abrir, seleccione y abra la base de datos.
3.       En la ficha Crear, en el grupo Tablas, haga clic en Listas de SharePoint.

A continuación, siga uno de estos procedimientos:
Crear la lista a partir de una plantilla
1.       Haga clic en Contactos, Tareas, Problemas o Eventos.
2.     En el cuadro de diálogo Crear nueva lista, escriba la dirección URL del sitio de SharePoint donde desee almacenar la lista. Escriba también el nombre de la nueva lista de SharePoint y especifique una descripción.
3.      Si desea que la tabla vinculada se abra una vez creada, active la casilla de verificación Abrir la lista al finalizar (aparece activada de forma predeterminada). En caso contrario, desactive la casilla de verificación.
4.     Haga clic en Aceptar.
Crear una nueva lista personalizada
1.        Haga clic en Personalizado.
2.      En el cuadro de diálogo Crear nueva lista, escriba la dirección URL del sitio de SharePoint donde desee almacenar la lista. Escriba también el nombre de la nueva lista de SharePoint y especifique una descripción.
3.       Si desea que la tabla vinculada se abra una vez creada, active la casilla de verificación Abrir la lista al finalizar (aparece activada de forma predeterminada). En caso contrario, desactive la casilla de verificación.
4.      Haga clic en Aceptar.
Agregar un nuevo campo a una tabla existente
1.        Haga clic en el Botón Microsoft Office y, a continuación, haga clic en Abrir.
2.      En el cuadro de diálogo Abrir, seleccione y abra la base de datos.
3.       En el panel de exploración, haga doble clic en una de las tablas disponibles para abrirla.
4.      Escriba los datos en la celda situada debajo del título de columna Agregar nuevo campo.
Agregar un nuevo campo a una tabla nueva
1.        Haga clic en el Botón Microsoft Office y, a continuación, haga clic en Abrir.
2.      En el cuadro de diálogo Abrir, seleccione y abra la base de datos.
3.       En la ficha Crear, en el grupo Tablas, haga clic en Tabla.
Access inserta una nueva tabla en la base de datos y la abre en la vista Hoja de datos.
4.      Escriba los datos en la celda situada debajo del título de columna Agregar nuevo campo.
Cuando especifique datos en la nueva columna, Office Access 2007 utilizará la información especificada para reconocer el tipo de datos adecuado al campo. Por ejemplo, si escribe una fecha en la columna, como 1/1/2006, Office Access 2007 examina la información especificada, determina que se trata de una fecha y define el tipo de datos del campo en Fecha/Hora. Si Access no puede determinar el tipo de datos a partir de la información especificada, define el tipo de datos en Texto.
En la tabla siguiente se indica cómo funciona la detección automática de tipos de datos en la vista Hoja de datos
Además de determinar el tipo de datos, Office Access 2007 puede definir la propiedad Formato, según los datos que especifique. Por ejemplo, si escribe 10:50 a.m., Access define el tipo de datos Fecha/Hora y la propiedad Formato como hora mediana.
Si desea definir explícitamente el tipo de datos y el formato de un campo reemplazando la opción proporcionada por Office Access 2007, debe utilizar los comandos del grupo Formato y tipo de datos de la ficha Hoja de datos.
Guardar una tabla
Después de agregar campos a una tabla, debe guardar su diseño. Cuando guarde una tabla por primera vez, asígnele un nombre que describa la información que contiene. Puede utilizar hasta 64 caracteres (letras o números), incluidos espacios. Por ejemplo, podría asignar a una tabla el nombre Clientes, Inventario de piezas o Productos.
1.        Haga clic en el Botón Microsoft Office y, a continuación, haga clic en Guardar.
O bien,
Haga clic con el botón secundario del mouse en la ficha de documento de la tabla y, a continuación, haga clic en Guardar en el menú contextual.
O bien,
Haga clic en Guardar en la Barra de herramientas de acceso rápido.
2.      Si es la primera vez que guarda la tabla, escriba un nombre para la tabla y, a continuación, haga clic en Aceptar.