Вы находитесь на странице: 1из 11

Quiero comentar algo que me tuvo medio cabezn, y no sabia como solucionarlo, sucede que tenia

instalado en la PC el SQL Server 2008 R2, y por algunos problemas que sucedieron tuve que
desinstalarlo, pero ese no fue el problema.
Luego Proced a Instalar nuevamente el SQL Server 2008 R2, a pesar de que son varias ventanas para
instalar el gestor de base de datos SQL Server, todo estaba bien, pero en el paso Installation
Configuration Rules me paso el siguiente problema.

No saba como solucionarlo, pero algo intua que el problema estaba relaciona a la desinstalacin. As que
buscando en los archivos de la carpeta donde se instalo el SQL Server 2008. En la siguiente ruta
C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA encontr lo
siguiente.

As que dije probemos borrando los archivos ReportServer.mdf, ReportServer_log.LDF,


ReportServerTempDB.mdf y ReportServerTempDB_log.LDF.
Volv a la ventana de instalacin retroced una Etapa y pase de nuevo a la etapa de Installation
Configuration Rules, y ahora si paso esta etapa de la instalacin.

Espero le sirva a algunos, saludos.

Arquitectura de Bases de Datos SQL Server


La arquitectura interna de las bases de datos en SQL Server estn compuestas por 2 tipos de estructura, la
estructura lgica y la estructura fsica. Es muy importante conocer cmo es que estas estructuras estn
compuestas y cul es la relacin que tienen los objetos de base de datos con cada una de estas estructuras.

Estructura Lgica:
Desde el punto de vista lgico, la base de datos debe tener al menos 1 FileGroup el cual contiene a toda la
metadata de la misma base de datos, es decir tablas y vistas de sistema, a este FileGroup inicial se le
conoce como Primario y est presente en todas las bases de datos. Todos los objetos de usuario que
contengan data, ya sean tablas o ndices, deben estar ligados a un FileGroup, esto se puede definir al
momento de ejecutar la sentencia DDL de creacin del objeto, si no se indica a que FileGroup estar ligado
ese objeto, este pertenecer al FileGroup por defecto definido en la base de datos. La base de datos solo
puede tener definido 1 solo default FileGroup.
Las bases de datos pueden tener hasta 32767 FileGroups definidos, segn los lmites establecidos para la
ltima versin de SQL Server, la cual es SQL Server 2008 R2. Uno de los propsitos de los FileGroups es
poder distribuir la data a travs de varios discos duros fsicos, de esta manera se puede obtener mayor
rendimiento en las operaciones de I/O debido a que ms de un disco trabajara al mismo tiempo. Otro de los
propsitos es poder esconder la ubicacin fsica real de la informacin a los programadores, ya que para ellos
la tabla X pertenece al FileGroup A, pero no saben en que data files fsicamente se encuentra la
informacin de la tabla X.
Los FileGroups pueden contener 1 o ms Datafiles, y cada uno de estos datafiles se pude encontrar en un
discos diferentes, lo cual tambin agilizara las consultas y los ingresos de informacin a las tablas que se
encuentren asignadas a este FileGroup, debido a que SQL Server distribuir la informacin uniformemente
a travs de todos los DataFiles del FileGroup.
Estructura Fsica:
Desde el punto de vista fsico, como ya hemos visto, tenemos los DataFiles que los en realidad los archivos
de datos, es decir donde se guarda toda la informacin de la base de datos. Un DataFile solo puede
pertenecer a 1 FileGroup.
Internamente los DataFiles estn divididos en Extends y estos a su vez en Pages. Las Pages son la
unidad minima de almacenamiento dentro de la base de datos. Un Page tiene 8 Kb de tamao en espacio
de disco. Un Extend tiene 8 Pages contiguas que lo conforman, es decir, un Extend tiene como tamao
64 Kb de espacio en disco.
En un Page solo puede haber informacin de 1 sola tabla, es decir el espacio de un Page no es
compartido entre tablas o ndices. En el caso de los Extends, estos pueden ser de dos tipos:

Mixed: Los cuales son compartidos hasta por 8 objetos, uno por cada Page.
Uniform: Los cuales solo pertenecen a un solo objeto, es decir que todos los Pages pertenecen a
un solo objeto.

Normalmente cuando se crea una nueva tabla esta es asignada a un Extend de tipo Mixed, hasta
alcanzar la utilizacin de hasta 8 Pages, a partir de ese momento se asignan Extends de tipo Uniform
para optimizar el uso del espacio en la tabla.
Los DataFiles normalmente tienen 2 extensiones de archivo, las cuales son estandar mas no obligarias, la
extencion mdf que se utiliza para el primer Datafile perteneciente al FileGroup primario, y la extension
ndf que se utiliza para los demas datafiles que se agregan posteriormente a los demas FileGroups de la
base de datos.
En el caso del LogFile, este no pertenece a un FileGroup en especifico, en cambio archivo esta ligado
directamente a la base de datos. Las bases de datos de SQL Server solo pueden tener un solo LogFile
activo al mismo tiempo, si bien se pueden crear multiples LogFiles en la base de datos, solo uno podra ser
escrito, ya que solo uno puede estar activo, cuando este archivo se llene, la base de datos pasara a escribir
al siguiente archivo de transacciones, y asi sucesivamente. Por esta razon no es muy conveniente ni util
tener mas de un LogFile.
En conclusin espero que sea de ayuda estas explicaciones sobre la arquitectura de una base de datos de
SQL Server, si desean temas por favor no duden en solicitarlo, har lo posible para poder cubrir los temas
solicitados en el mas corto tiempo.

PRAPRPP

PRACTICA I UNIDAD II
Configurar el almacenamiento FILESTREAM en SQL Server
Una vez que hemos visto una introduccin al almacenamiento FILESTREAM en SQL Server, llega el
momento de la prctica. El presente artculo describe paso a paso la forma de configurar el
almacenamiento FILESTREAM en SQL Server, es decir, habilitar FILESTREAM a nivel de la Instancia de
SQL Server, aadir un Grupo de Ficheros (FileGroup) para FILESTREAM en una Base de Datos, y crear
una tabla con un campo VARBINARY(MAX) configurado para utilizar el almacenamiento FILESTREAM.
Ahora que ya hemos visto la teora del almacenamiento FILESTREAM en SQL Server, llega el
momento de ver un poco la prctica, para lo cual, realizaremos un sencillo ejemplo paso a paso de
configuracin del almacenamiento FILESTREAM, incluyendo cmo habilitar el almacenamiento
FILESTREAM en una Instancia de SQL Server, cmo habilitar el almacenamiento FILESTREAM en una

Base de Datos existente de SQL Server, y cmo crear una tabla con campos VARBINARY(MAX)
configurador para utilizar el almacenamiento FILESTREAM.

Cmo habilitar el almacenamiento FILESTREAM en una Instancia de


SQL Server?
Lo primero que deberemos hacer es habilitar el acceso FILESTREAM a nivel de nuestra
Instancia de SQL Server, lo cual se trata de una configuracin a realizar en dos pasos. El primer
paso es habilitar el almacenamiento FILESTREAM a nivel de Sistema Operativo, para lo cual
utilizaremos la herramienta administrativa SQL Server Configuration Manager para mostrar el
dilogo de Propiedades de nuestra instancia de SQL Server.

En el dilogo de Propiedades de nuestra Instancia de SQL Server, seleccionaremos la pestaa


FILESTREAM, para seguidamente habilitar el almacenamiento FILESTREAM (Enable FILESTREAM for
Transact-SQL access, Enable FILESTREAM for file I/O streaming access, y Allow remote clients to have
streaming access to FILESTREAM data), de forma similar a como se muestra en la siguiente pantalla
capturada.

El segundo paso a realizar es habilitar el almacenamiento FILESTREAM a nivel de SQL Server, para lo
cual, ejecutaremos el procedimiento sp_configure (por ejemplo, desde una ventana de consulta en
SQL Server Management Studio), de forma similar a como se muestra en la siguiente pantalla
capturada.

Este segundo paso de configuracin, tambin puede realizarse de forma grfica, por ejemplo, desde el
dilogo de propiedades de nuestra Instancia de SQL Server dentro del SQL Server Management
Studio, configurando la opcin Filestream Access Level en la pgina Advanced, tal y como se
muestra en la siguiente pantalla capturada.

Una vez que hemos habilitado el almacenamiento FILESTREAM en SQL Server, deberemos reiniciar
nuestra Instancia de SQL Server

Un detalle curioso, es observar el resultado de la ejecucin del comando NET SHARE, de tal modo,
que podamos observar que tras habilitar el almacenamiento FILESTREAM tenemosdisponible una
nueva Carpeta Compartida (Network Share).

Cmo habilitar el almacenamiento FILESTREAM en una Base de Datos


existente?
Ahora toca hacer lo propio con la Base de Datos en la que deseemos utilizar el almacenamiento
FILESTREAM. En nuestro caso de ejemplo partimos de una Base de Datos existente, en la cual,
deseamos poder empezar a utilizar el almacenamiento FILESTREAM. Para ello, deberemos crear un
nuevo Grupo de Ficheros (File Group) para FILESTREAM utilizando la clusula CONTAINS
FILESTREAM, para seguidamente agregar al menos un fichero (bueno, en realidad es una
carpeta asociada a un fichero lgico de base de datos). Bsicamente deberemos ejecutar algo similar
al siguiente cdigo de ejemplo.

A continuacin se muestra un ejemplo de la ejecucin del anterior cdigo Transact-SQL.

Ahora, al mostrar la pgina FileGroups de las Propiedades de la Base de Datos en el SQL Server
Management Studio, podremos ver algo como lo siguiente:

Del mismo modo, al mostrar la pgina Files de las Propiedades de la Base de Datos en el SQL Server
Management Studio, podremos ver algo similar a:

Ahora que ya hemos configurado nuestra Base de Datos para poder utilizar almacenamiento
FILESTREAM, podremos observar que se ha creado la correspondiente carpeta en el Sistema de
Ficheros, para el almacenamiento y gestin de los datos FILESTREAM.

Cmo especificar en qu campos de qu tablas utilizar el


almacenamiento FILESTREAM?
Realizado todo esto, ya estamos preparados para empezar a usar el almacenamiento FILESTREAM en
nuestra base de datos, para lo cual, tan slo deberemos utilizar el tipo de dato VARBINARY(MAX) con
la opcin FILESTREAM. A continuacin se muestra un cdigo Transact-SQL de ejemplo para crear una
tabla que utilice almacenamiento FILESTREAM.

Igualmente, a continuacin se muestra un ejemplo de la ejecucin del anterior cdigo Transact-SQL.

Una vez hemos creado nuestra tabla, podemos empezar a utilizarla de inmediato. A continuacin se
muestra un par de ejemplos de Transact-SQL, para insertar y consultar nuestra tabla y datos
FILESTREAM.

Igualmente, a continuacin se muestra la salida de la ejecucin del anterior cdigo de ejemplo.

http://www.guillesql.es/Articulos/Configurar_Almacenamiento_FILESTREAM_SQLServer.aspx

Вам также может понравиться