MDF
( Los Archivos Maestros de Bases de Datos-Master DataBase Filesarchivos de datos primarios) primarios) es el ser supremo de toda base de datos, debe de existir sí o sí uno de ellos para tener una base de datos funcional. fun cional. Es el punto inicial de cualquier base de datos, y contiene referencias referencias hacia los demás archivos de datos que tenga la base de datos (Archivos de datos secundarios o de registros) -Los MDF están donde toda la información de la base de datos está almacenada. Contiene las filas, columnas, campos y datos creados por una aplicación o usuario. La creación de una columna de base de datos, las modificaciones e información de la creación de los registros, todo está almacenado en este archivo para el uso las aplicaciones y de búsquedas. ENCARGADOS DE ALMACENAR LOS DATOS
LDF (Archivos de Registros de Bases de Datos-log database da tabase Files- archivos de registros) Los archivos de registro en las bases de datos de SQL Server contienen toda la información de registro. Esa información puede usarse luego para recuperar la base de datos. El tamaño del archivo de registro está determinado por el nivel de registro que ha configurado en la base de datos. Debe haber al menos un archivo de registro para cada base de datos. Pero también es posible tener más de un archivo de registro para una sola base de datos. La extensión de nombre de archivo recomendada para archivos de registro es .ldf. Archivos de registros son aquellos que registran todas las operaciones de la base de datos como una medida de seguridad para que en caso de desastre se pueda hacer un ‘Recovery’ . Como mínimo debe de existir uno de estos archivos por base de datos, pero puede haber más según la necesidad de la DB. ESTOS ARCHIVOS ESTAN DESTINADOS A REGISTRA REGI STRA TODAS LAS OPERRACIONES QUE HAGAMOS CRAR ELIMINAR ACTUALIZAR COPIAS DE SEGURIDAD ETC
NDF
(Named Database Files-archivos de datos secundarios) Son archivos de datos secundarios se utilizan cuando la base datos da tos son muy grandes y utilizan estos archivos para que sean distribuidos correctamente- Solo puede tener un archivo de datos principal para una base de datos. Resto compuesto por archivos de datos secundarios. Pero no es necesario tener un archivo de datos secundario. Por lo tanto, algunas bases de datos pueden no tener ningún archivo
de datos secundario. Pero también es posible tener múltiples archivos de datos secundarios para una sola base de datos. .ndf generalmente se recomienda para denotar archivos de datos secundarios. También es posible almacenar el archivo de datos secundario en una unidad física separada de la que se almacena el archivo de datos principal. almacenan en conjunto con el primario la información de la base de datos, estos tipos de archivo no son obligatorios por lo cuál pueden o no existir en algunas bases de datos (dependiendo de sus necesidades). ¿Entonces para que existen?, bueno en bases de datos grandes es una forma de es muy útil para el crecimiento sistemático de la base de datos a través de varios discos, pues si se están llenando nuestros archivos de datos y nuestro disco donde están alojados, podríamos crear otro archivo en otro disco duro sin ningún dificultad. También es útil para mejorar el rendimiento de I/O (Input/Output, lectura y escritura de datos pues! ), permitiendo menos contención de bloqueos por archivos y permitiendo acceso multi-hilo a los datos.
PROCEDIMIENTO ALMACENADO(Stored Procedure- motor de base de datos) Un procedimiento almacenado (stored procedure en inglés) es un programa (o procedimiento) almacenado físicamente en una base de datos. Su implementación varía de un gestor de bases de datos a otro. La ventaja de un procedimiento almacenado es que al ser ejecutado, en respuesta a una petición de usuario, es ejecutado directamente en el motor de bases de datos, el cual usualmente corre en un servidor separado. Como tal, posee acceso directo a los datos que necesita manipular y sólo necesita enviar sus resultados de regreso al usuario, deshaciéndose de la sobrecarga resultante de comunicar grandes cantidades de datos salientes y entrantes. Son un conjunto de instrucciones de transact-SQL que pueden aceptar y devolver parámetros proporcionados por el usuario. Tipos de Procedimientos almacenados: >Procedimentos almacenados del sistemas:Generalmente están guardados en la base de datos master son identificados por iniciar en SP,permiten realizar una amplia variedad de tareas.
Eje:sp_colums,sp_column_privileges,sp_database,sp_fkeys,sp_pkeys,sp_tables ,sp_server_info,sp_stadistics >Procedimientos alamcenados definidos por el usuario:son procedimientos que se implementan en forma personalizada según las necesidades del usuario Ejem: créate procedure Nombre_procedimientos @parametro1[tipo dato], @parametro2[tipo dato] AS
VISTAS En teoría de bases de datos, una vista es una consulta que se presenta como una tabla (virtual) a partir de un conjunto de tablas en una base de datos relacional. Sirven para proporcionar información a los usuario de forma simplificada y personalizada Sirve de mecanismo de seguridad ya que no permitimos el acceso directo a la tabla base Cracion de vistas CREATE VIEW AS ()
DIPARADORES O TRIGERS Procedimiento que se ejecutan automáticamente en el momento que sedetereminada condición al realizar una operacion Son usados para mejorar la administración de la base de datos, sin necesidad de que el ususario ejecute la sentencia de SQL Dependiendo de la BD, los trigers pueden ser de insersion(INSERT) actualización (UPDATE) o borrado (DELETE) Tipos de Triggers :Triggers DML,Triggers DDL Sintaxis Create Trigger Nombre_triger
ON [Table/View] FOR/AFTER/INSTEAD OF [INSERT], [UPDATE] ,[DELETE] AS Setencia SQL Los Triggers o Disparadores son objetos que se asocian con tablas y se almacenan en la base de datos. Su nombre se deriva por el comportamiento que presentan en su funcionamiento, ya que se ejecutan cuando sucede algún evento sobre las tablas a las que se encuentra asociado. Los eventos que hacen que se ejecute un trigger son las operaciones de inserción (INSERT), borrado (DELETE) o actualización (UPDATE), ya que modifican los datos de una tabla. La utilidad principal de un trigger es mejorar la administración de la base de datos, ya que no requieren que un usuario los ejecute.
AUDITORIA La auditoría de base de datos, finalmente, es un proceso implementado por los auditores de sistemas con el fin de auditar los accesos a los datos, por lo general siguiendo bien una metodología basada en un checklist que contempla los puntos que se quieren comprobar o mediante la evaluación de riesgos potenciales. En concreto, se realiza un examen de los accesos a los datos almacenados en las bases de datos con el fin de poder medir, monitorear y tener constancia de los accesos a la información almacenada en las mismas. Si bien el objetivo puede variar en función de la casuística, en todos los casos el fin último persigue, de uno u otro modo, la seguridad corporativa. Una auditoría de base de datos, por lo tanto, facilita herramientas eficaces para conocer de forma exacta cuál es la relación de los usuarios a la hora de acceder a las bases de datos, incluyendo las actuaciones que deriven en una generación, modificación o eliminación de datos. En la práctica, permite responder a muchas preguntas que pueden resultar relevantes a la hora de controlar y auditar. Desde determinar quién accede a los datos, cuándo se accedió o cuál es su ubicación en la Red y desde qué
dispositivo o aplicación lo hizo, hasta qué sentencia SQL fue ejecutada, así como el resultado del acceso. Realizar un seguimiento de estos eventos en la base de datos también es un primer paso para llevar a cabo auditorías en las aplicaciones asociadas a aquella. No en vano, el papel primordial que tienen los datos en las organizaciónes, su activo más valioso, obliga a controlar los pormenores de su acceso. En este sentido, la auditoría de base de datos es un control necesario, cuya dificultad aumenta de forma paralela a la creciente complejidad de las tecnologías de bases de datos. Asímismo, las amenazas de seguridad se han multiplicado, apareciendo nuevos riesgos e incrementándose los ya existentes, al tiempo que se amplía su alcance a través de la disciplina conocida como Gestión de Recursos de Información. Todas estas circunstancias han motivado la necesidad de nuevos mecanismos de control y seguridad, al tiempo que se hace necesario recurrir a personal cualificado que, por lo general, es externo. Aún así, la auditoríarepresenta un gran desafío, pues los sistemas aumentan su complejidad con mayor rapidez que los procedimientos y tecnologías diseñadas para su control. Es el proceso que permite medir, asegurar, demostrar, monitorear y registrar los accesos a la información almacenada en las bases de datos incluyendo la capacidad de determinar: – Quién accede a los datos. – Cuándo se accedió a los datos. – Desde qué tipo de dispositivo/aplicación. – Desde que ubicación en la Red. – Cuál fue la sentencia SQL ejecutada. – Cuál fue el efecto del acceso a la base de datos. Objetivos Generales de la Auditoría de BD Disponer de mecanismos que permitan tener trazas de auditoría completas y automáticas relacionadas con el acceso a las bases de datos incluyendo la capacidad de generar alertas con el objetivo de: – Mitigar los riesgos asociados con el manejo inadecuado de los datos. – Apoyar el cumplimiento regulatorio.
– Satisfacer los requerimientos de los auditores. – Evitar acciones criminales. – Evitar multas por incumplimiento.
La importancia de la auditoría del entorno de bases de datos radica en que es el punto de partida para poder realizar la auditoría de las aplicaciones que utiliza esta tecnología. La Auditoría de BD es importante porque: – Toda la información financiera de la organización reside en bases de datos y deben existir controles relacionados con el acceso a las mismas. – Se debe poder demostrar la integridad de la información almacenada en las bases de datos. – Las organizaciones deben mitigar los riesgos asociados a la pérdida de datos y a la fuga de información. – La información confidencial de los clientes, son responsabilidad de las organizaciones. – Los datos convertidos en información a través de bases de datos y procesos de negocios representan el negocio. – Las organizaciones deben tomar medidas mucho más allá de asegurar sus datos.
Deben monitorearse perfectamente a fin de conocer quién o qué les hizo exactamente qué, cuándo y cómo.
Mediante la auditoría de bases de datos se evaluará: – Definición de estructuras físicas y lógicas de las bases de datos. – Control de carga y mantenimiento de las bases de datos. – Integridad de los datos y protección de accesos. – Estándares para análisis y programación en el uso de bases de datos. – Procedimientos de respaldo y de recuperación de datos.
PLAN DE MANTENIMIENTO
Los planes de mantenimiento crean un flujo de trabajo de las tareas necesarias para asegurarse de que la base de datos está optimizada, se realizan copias de seguridad de esta con regularidad y no tiene incoherencias. El Asistente para planes de mantenimiento también crea planes de mantenimiento principales, pero la creación manual de planes le da mucha más flexibilidad. Las siguientes tareas del plan de mantenimiento están disponibles en Cuadro de herramientas: Tarea Copia de seguridad de la base de datos Tarea Comprobar la integridad de la base de datos Tarea Ejecutar trabajo del Agente SQL Server Tarea Ejecutar instrucción T-SQL Tarea Limpieza de historial Tarea Limpieza de mantenimiento Tarea Notificar al operador Tarea Volver a generar índice Tarea Reorganizar índice Tarea Reducir base de datos Tarea Actualizar estadísticas
OPTIMIZACIÓN DE CONSULTA BASE DE DATOS nos referimos a mejorar los tiempos de respuesta en un sistema de gestión de bases de datos relacional, pues la optimización es el proceso de modificar un sistema para mejorar su eficiencia o también el uso de los recursos disponibles. Aumentar consultas x segundo con menor tiempo de ejecución Se hace para que nuestro servidor no se cuelge DISTINTAS FORMAS DE OPTIMIZAR
>GESTION DE INDICES -los índices ocupan mas memoria y espacio -indexar los campos que se usen de nexo entre dos tablas -indexar campos que sean clave para las búsquedas y no indexar capos que se utilizan con poca frecuencia >CAMPOS A SELECCIONAR -Utilizar Stored procedure y vistas para las consultas mas utilizadas -seleccionar únicamente campos que se neseciten(no usar select *) -Usar prefijos en consultas con varias tablas >CAMPOS DE FILTRO -Filtrar por el campo llave a medida de los posible -incluir campos necesarios a los índices -Orden de las tablas Ejemplo Créate index nomnre_indice ON tabla(registro)
INICIO DE SESION BASE DE DATOS Un sistema seguro de inicio de sesión y registro es uno de los requerimientos principales al crear un sistema.