You are on page 1of 13

Instalacin y administracin de SQL Server 2000 Durante la instalacin y administracin del SQL Server 2000 es necesario tener presente

en todo momento la seguridad del servidor. Para ello una de las tareas ms importantes es la creacin y control de usuarios. El SQL Server se instala en Windows 2000 como un servicio y por tanto es necesario asignar un usuario para que inicie ese servicio y para que el SQL Server trabaje en ese contexto de seguridad. Este usuario que asignaremos a los servicios SQL Server y SQL Server Agent (habitualmente se utiliza el mismo para los dos servicios) puede ser o bien la cuenta local del sistema o una cuenta del dominio asignada por nosotros. Por norma general escogeremos la segunda de las opciones y crearemos una cuenta en el dominio especialmente dedicada a los servicios de SQL Server, porque slo de esta manera el SQL Server podr acceder a archivos de otros equipos, planear trabajos entre varios servidores, realizar copias de seguridad en ubicaciones de red, mandar notificaciones mediante email, hacer modificaciones en el registro La cuenta que vamos a crear en el dominio para el SQL Server deber tener las siguientes caractersticas: Miembro del grupo local administradores, Activado el atributo La contrasea no caduca nunca, Permitido el inicio de sesin a todas las horas, Permitido iniciar sesin como servicio. Adems de esto necesitaremos una cuenta en el servidor de correo Exchange si queremos que el SQL Server Agent pueda comunicarse con nosotros a travs del correo para enviarnos avisos, notificaciones, alertas Los usuarios: En SQL Server 2000 los usuarios pueden ser de dos tipos dependiendo del modelo de seguridad elegido. Usuarios de Windows, creados en el dominio y administrados desde la herramienta usuarios y equipos del dominio, y usuarios propios de SQL Server. Para utilizar estos ltimos usuarios es necesario configurar el servidor SQL en modo de autentificacin mixto. La mejor manera de gestionar la seguridad es utilizando usuarios de Windows porque es la nica manera de poder asignar directivas de seguridad a las cuentas de los usuarios. As podemos por ejemplo establecer caducidades para las contraseas, establecer un mnimo de longitud, detectar intentos de acceso ilegales Estos usuario que creamos en el dominio no tienen necesidad de ningn privilegio extra en el dominio (adems de ser usuarios del dominio) y los permisos que tienen en el SQL Server se administran desde dentro del propio SQL Server. El administrador: Para poder manejar todos estos elementos de seguridad es necesaria la figura del administrador.

En el SQL Server se pueden definir fcilmente uno o varios administradores que lleven a cabo las tareas necesarias para el correcto funcionamiento del servidor. Pero hay tareas de configuracin del servidor y de gestin de usuarios que tienen que ser realizadas por un usuario que tenga ciertas caractersticas: Poder crear y modificar cuentas de usuarios, Tener acceso a las claves del registro del servidor donde este instalado el SQL Server, Tener acceso total al sistema de archivos del equipo donde est instalado el SQL Server, Tener privilegios para poder iniciar y detener los servicios SQL Server, SQL Server Agent, Servicio Microsoft Search, Poder acceder a los registros de equipos clientes (si se van a utilizar controladores ODBC), Poder leer y buscar a travs del visor de sucesos del servidor, Poder utilizar el monitor del sistema y crear registros de log de cualquier tipo de contador, Instalar y reparar el software del SQL Server, Realizar copias de seguridad en dispositivos externos. Por tanto deberamos crear una cuenta especfica para la administracin de SQL Server que tuviera todos estos privilegios. Lo ms sencillo y seguro ser crear un usuario perteneciente al grupo de Administradores del Dominio encargado de realizar estas tareas. En su defecto basta con crear un usuario normal y asignarle estos derechos y permisos (o asignar dichos derechos y permisos a un usuario ya existente) Por supuesto que en un entorno donde haya problemas de seguridad se puede hilar ms fino y asignar permisos y derechos ms restrictivos a todas estas cuentas de las que hemos hablado.

Una gua rpida que explica paso a paso la realizacin de las tareas ms comunes en SQL Server 2000, creacin de bases de datos, tablas, ndices, stored procedures, DTS y usuarios. El manual es por entregas. SQL Server 2000 es un potente motor de bases de datos de alto rendimiento capaz de soportar millones de registros por tabla con un interface intuitivo y con herramientas de desarrollo integradas como Visual Studio 6.0 o .NET, adems incorpora un modelo de objetos totalmente programable (SQL-DMO) con el que podemos desarrollar cualquier aplicacin que manipule componentes de SQL Server, es decir, hacer aplicacin para crear bases de datos, tablas, DTS, backups, etc., todo lo que se puede hacer desde el administrador del SQL Server y podemos hacerlo no solo en Visual C++ sino tambin en Visual Basic, ASP y por supuesto en .NET. Pero cuidado, que sea muy intuitivo en su administracin o instalacin no significa que sea fcil, una mala instalacin, una base de datos mal creada o diseada o una mala administracin nos puede hacer la vida imposible y nuestras aplicaciones pueden tener un rendimiento malo, debemos tener cuidado y aprender a usarlo correctamente, como tambin es importante el hardware, lejos de los 64 MB mnimos que requiere el sistema es recomendable que tenga 256 o 512 para su buen funcionamiento y una cantidad suficiente de espacio en disco para que pueda trabajar con las bases de datos. Instalacin del SQL Server Enterprise Instalar SQL Server es muy sencillo, dispone de un asistente que seguiremos para realizar la instalacin proporcionando unos datos que se nos pedir a lo largo del proceso. El proceso es sencillo y hay que tener en cuenta durante la instalacin las opciones que vamos a instalar de SQL Server, la forma de autentificacin (personalmente utilizara la autentificacin en modo mixto) y el Nivel de intercalacin (imagen 9), opcin que solo esta disponible durante la instalacin si seleccionamos una instalacin personalizada. Qu es el Nivel de Intercalacin? O Collation Settings en ingles, es la forma que SQL Server tratar los caracteres de un idioma, el orden para utilizar los tipos de datos y la pgina de cdigos. A diferencia de SQL Server 7.0 donde esta opcin solo estaba disponible durante la instalacin y una vez instalado ya no se poda modificar. SQL Server 2000 trata la intercalacin de forma distinta permitiendo definirla a nivel de base de datos, de tabla y de columna, lo que quiere decir que podremos tener bases de datos con distinto nivel de intercalacin. Con niveles de intercalaciones iguales en distintos servidores de bases de datos podremos disponer de un SQL Server compatible con otros SQL Server de nuestra empresa que se instalaron de una determinada forma. Por ejemplo, si tenemos instalado SQL Server con un juego de caracteres determinado como el de la imagen 9 (no distingue entre maysculas y minsculas ni acentos), esto nos va a ser de gran utilidad a la hora de mover o restaurar bases de datos, si el juego de caracteres es diferente no podremos hacerlo. Aunque esta opcin podemos aplicarla despus a cada base de datos que creemos nueva es recomendable hacerlo desde un principio y general para todo el SQL Server. Si por alguna razn la instalacin no es la misma que tenis en otros servidores y lo instalis con un juego de caracteres diferente existe una solucin para estos casos que permite hacer un rebuild a la base de datos Master del SQL Server y cambiar la instalacin, pero este proceso se tiene que hacer con el SQL Server recin instalado porque de lo contrario perderis las referencias a las bases de datos que tengis y no las reconocer. Para hacer el rebuild desde la lnea de comandos escribs rebuild y aparecer la imagen 10 si se pulsa en Settings aparece otra vez la imagen 9 donde se puede cambiar el juego de caracteres. Para instalar el SQL Server 2000 Enterprise hay que seguir los pasos como muestran las figuras del 1 al 9. Despus de ejecutarse el fichero autorun.exe seleccionaremos de dos ventanas previas a la instalacin: Componentes de SQL Server 2000 -> Instalar Servidor de bases de datos. SQL Server 2000 puede instalarse de dos formas diferentes o mejor dicho pueden instalarse varias instancias en una misma maquina, esto es muy til si por ejemplo tenemos un SQL Server 7.0 y queremos instalar el 2000, podemos hacerlo y adems podemos tenerlos ejecutndose en la misma maquina los dos al mismo tiempo. Paso 1 (imagen 1): Pide el nombre del equipo y la forma de instalacin, si es local o remota, si es remota deberemos informar desde que equipo lo vamos a instalar.

Paso 2 (imagen 2): Seleccionar una opcin de instalacin, instalar una nueva instancia del SQL Server, instalar las partes clientes u opciones avanzadas donde podremos crear instalaciones desatendidas o reconstruir el registro del SQL Server si estuviera daado. La opcin central solo estar activa si ya tenemos un SQL Server instalado y queremos modificar su instalacin. Paso 3 (imagen 3): Herramientas que instalaremos, es decir, si instalamos solo las herramientas de cliente para tener acceso a un servidor remoto , herramientas de cliente y servidor como gestor de bases de datos o solo conectividad que instala nicamente el MDAC. Paso 4 (imagen 4): Nombre de la instancia que vamos a crear, si es nueva instancia (no hay ningn SQL Server instalado) por defecto coge el nombre de la mquina aunque podemos cambiarlo, si es una segunda instalacin debemos darle un nuevo nombre. Paso 5 (imagen 5): Tipo de instalacin, personalmente recomiendo una instalacin personalizada por lo comentado anteriormente es importante escoger el juego de caracteres (imagen 9) para no tener problemas en futuras instalaciones y no tener que ir tocando el nivel de intercalacin en cada base de datos que creemos, y elegir la ruta de los datos a una unidad con suficiente espacio en disco. Paso 6 (imagen 6): Seleccin de componentes a instalar, entre ellos ejemplos y ayudas (muy importante la ayuda, es el mejor manual de SQL Server). Paso 7 (imagen 7): Usuario que ejecutar los servicios del SQL Server y de SQL Agent, por defecto lo ejecuta el usuario administrador. Paso 8 (imagen 8): Modo de autentificacin a SQL Server, se puede elegir entre autentificacin windows (la autentificacin se realiza por medio de usuarios pertenecientes al dominio) o modo mixto que la autentificacin se realiza por medio de usuarios dados de alta en el SQL Server, si se elige esta segunda opcin, no es recomendable dejar el password en blanco. Paso 9 (Imagen 9): Configuracin regional, en esta opcin es donde vamos a elegir la forma que nuestro SQL Server trabajara con los datos, es decir, elegiremos el nivel de intercalacin. Es recomendable no dejarlo por defecto y seleccionar un nivel de intercalacin apropiado a nuestro lenguaje como por ejemplo el que muestra la imagen, en la imagen selecciona un SQL Server que no distinguir entre maysculas ni entre acentos, qu significa esto? Que cuando se realicen bsquedas, consultas o transacciones nos dar lo mismo poner Tabla que tabla. Si en todos los servidores SQL Server de nuestra organizacin tenemos la misma opcin de nivel de intercalacin, cuando tengamos necesidad de restaurar bases de datos o moverlas de un SQL Server a otro ser tan fcil como hacer un restore o copiarlas con sp_attach_db como indica esta artculo Recuperar una base de datos con sp_attach_db Por ltimo nos pedir el puerto y las bibliotecas de red que utilizar, este paso lo podemos dejar por defecto. A partir de este punto SQL Server instalar las opciones seleccionadas y cuando finalice la instalacin tendremos un SQL Server listo para trabajar. Una vez instalado el SQL Server 2000 nos instala unos servicios, bases de datos por defecto y utilidades que vamos a describir a continuacin. Servicios del SQL Server SQL Server 2000 instala varios servicios en nuestra maquina (imagen 11), el nombre del servicio lo podis ver en el administrador de servicios de windows desde Inicio -> Programas -> Herramientas de administracin -> Servicios, desde donde se pueden parar, arracar y cambiar el usuario que los ejecuta. Tambin podemos utilizar una utilidad que instala SQL Server El Administrador de Servicios de SQL Server, este programa lo podis encontrar en como un icono en la barra de tareas de windows (imagen 16): - SQL Server: Es el servicio principal y arranca el SQL Server, se llama MSSQLSERVER y si hay varias instancias en una misma mquina, el servicio se llama MSSQL$Nombre_de_instancia. - SQL Server Agent: Agente de SQL Server, se utiliza para la programacin de tareas, alertas, mail y se llama SQLSERVERAGENT. Igual que el anterior si hay multiples instancias se llama SQLAGENT$Nombre_de_instancia. - Coordinador de transacciones distribuidas : DTC, utilizado para tareas entre varios servidores distribuidos. Se llama Distributed Transaction Coordinator. - Microsoft Seach: Utilizado para la bsqueda de texto completo en las bases de datos e indices de

texto, este servicio solo estar si se ha instalado esta utilidad. Se llama Microsoft Search. - Asistente del Active Directory. Bases de datos SQL Server instala por defecto seis bases de datos (imagen 11), cuatro de sistema que utiliza el SQL Server: master, model, tempdb y msdb y dos de ejemplos para poder realizar pruebas. Las bases de datos se guardan en el directorio de instalacin en MSSQL\Data, las nuevas bases de datos que se creen si no se especifica lo contrario tambin se crearan en ese directorio. Master: Guarda informacin de todas las bases de datos que tiene SQL Server, gestiona usuarios, permisos y parmetros de configuracin. Model: Es la plantilla para crear nuevas bases de datos. Tempdb: Es un espacio de trabajo temporal para procesar consultas y procesar tareas de SQL Server. Msdb: Utilizada por el Agente de SQL (SQL Server Agent), mantiene datos de alertas, trabajos, notificaciones y tareas programadas. Herramientas del SQL Server Despus de la instalacin tenemos varias herramientas de administracin y utilidades, entre ellas la ms importante es el Administrador corporativo desde el cual podremos realizar todas las operaciones que deseemos o necesitemos sobre el SQL Server. A parte del administrador hay instaladas las siguientes herramientas: Libros en pantalla (la ayuda del SQL Sever 2000) Administrador corporativo (Enterprise Manager). Administrador de servicios (Service Manager). Analizador de consultas (Query Analyzer). Analizador (Profiler). Configurar la compatibilidad con SQL XML en IIS. Herramientas de red de cliente (Client Network Utility). Herramientas de red de servidor (Server Network Utility). Importar y exportar datos.

Para acceder a ellas iremos a inicio -> programas -> Microsoft SQL Server. Algunas de estas herramientas las veremos en profundidad y otras solo un poco por encima. Otros programas o utilidades son de lnea de comando y estn en el directorio de instalacin del SQL Server en MSSQL\Binn y en el directorio 80\Tools\Binn, sobre todas estas utilidades podis encontrar informacin y la forma de utilizarlas en la ayuda (libros en pantalla) en el apartado Utilizar herramientas de SQL Server, entre stas podemos destacar: BCP, Isql, osql, odbcping, Administrador corporativo. Esta herramienta (imagen 1) es la base de trabajo del SQL Server 2000, a travs de el podemos realizar cualquier tarea relacionada con SQL Server, adems podemos administrar no solo nuestro SQL Server sino tambin servidores SQL Server remotos distribuidos en otras mquinas. El administrador corporativo pertenece a la MMC (Microsoft Management Console) y como tal se puede aadir a consolas que ya existentes. Para ejecutar el administrador corporativo debemos ir a inicio -> programas -> Microsoft SQL Server -> administrador corporativo, una vez ejecutado nos aparece la imagen 2, a la izquierda nos muestra los datos estructurados en forma de rbol (imagen 1) y a la derecha diversas opciones dependiendo de donde estemos navegando por el rbol. La estructura del rbol es jerarquica comenzando por nodo raz Servidores Microsoft SQL Server que agrupa a los distintos grupos de servidores SQL Server (imagen 4) y dentro de estos grupos las instancias de los servidores SQL Server, de esta forma podramos separar las instancias de servidores por diversos criterios, por funciones o por departamentos. Creacin de un grupo de servidores Podemos crear y eliminar grupos de servidores fcilmente, para crear un grupo de servidores seguiremos los siguientes pasos:

1. desde el administrador corporativo pulsamos con el botn derecho del ratn sobre Microsoft SQL Server y seleccionamos Nuevo grupo de SQL Server, aparece una ventana donde pondremos el nombre que le queramos dar a ese grupo de servidores, debajo del nombre podemos seleccionar el nivel donde queremos agruparlo, si no decimos nada por defecto se crea en el grupo de nivel superior al mismo nivel del que ya tenemos pero podemos incluirlo dentro de algn grupo de servidores. Eliminar grupo de servidores. Eliminar un grupo es sencillo solo hemos de seleccionar la opcin borrar del men, pero solo podremos eliminarlo si no tiene instancias de SQL dentro, si un grupo tiene instancias de SQL Server no podremos eliminarlo hasta que eliminemos las instancias de SQL o las movamos a otro grupo. Administracin de servidores SQL Server Por defecto despus de la instalacin del SQL Server tenemos registrado la instancia de SQL Server local pero nosotros podemos aadir tantos servidores SQL como queramos organizndolos en grupos o directamente en el grupo principal. Aadir servidores SQL al administrador corporativo podemos hacerlo de dos formas: siguiendo un wizard que nos guiar paso a paso o de forma manual. Se pueden aadir servidores de nuestra red o servidores que sean accesibles mediante TCP/IP fuera de nuestra red indicando su direccin con una IP. Aadir servidores. 1. Pulsamos con el botn derecho del ratn sobre un grupo de servidores y seleccionamos del men Nuevo registro de servidor SQL Server y nos aparece el asistente. 2. Pulsamos siguiente y aparece una ventana donde a la izquierda estn los servidores SQL Server disponibles en nuestra red o podemos poner una IP en la casilla de texto para registrar un servidor remoto. 3. Seleccionamos de la lista uno o varios servidores SQL Server, con el asistente podemos registrar varios servidores a la vez siempre que tenga la misma autentificacin y los queramos incluir en el mismo grupo. 4. En la siguiente pantalla nos pedir la forma de autentificacin. 5. Si hemos seleccionado la autentificacin de SQL Server (segunda opcin) en esta pantalla deberemos poner el login y password para conectarnos al servidor, si hemos elegido la primera opcin autentificacin por windows pasaremos directamente al punto 6. 6. Seleccionamos el grupo de servidores donde queremos incluir el nuevo servidor o podemos crear uno nuevo. 7. Y ya hemos terminado, seguimos las dos pantallas que quedan y pueden pasar dos cosas que se registre correctamente o que no, en este ltimo caso podemos incluirlo en el administrador corporativo aunque no tendremos acceso a l. La segunda forma de registrar servidores SQL Server es de forma manual, seguimos el paso 1 anterior para registrar servidores y cuando sale la primera ventana del asistente activamos las casilla de ahora en adelante, deseo realizar esta tarea sin ayuda del asistente y nos saldr una ventana como muestra la imagen 4, pero si activamos esta opcin, yo por el momento, no he encontrado la forma de volver a activar el asistente, aunque no es necesario. En esta ventana seleccionaremos de la lista desplegable el servidor que queremos aadir o pulsando el botn (), la autentificacin que utilizaremos para conectarnos y el grupo donde lo incluiremos. De esta segunda forma solo pueden aadirse servidores de uno en uno. Eliminar servidores. EL proceso de eliminar servidores del administrador corporativo es fcil, simplemente debemos pulsar con el botn derecho sobre el servidor que deseemos eliminar y pulsamos la opcin Eliminar registro de servidor SQL Server, esto no quiere decir que lo borremos o eliminemos para siempre solo lo quitamos de la consola, podemos volver a registrarlo cuando queramos o necesitemos. Modificacin de servidores. Se pueden cambiar las propiedades de registro de los servidores pulsando con el botn derecho sobre el servidor que deseamos modificar y seleccionando la opcin Modificar propiedades de registro del servidor SQL Server y aparece la imagen 4, de esta forma podemos cambiar la forma de autentificacin o moverlo de grupo.

Administrar Bases de datos. La base de trabajo y donde se organiza toda la informacin en SQL Server es la base de datos, sta es una agrupacin de tablas, vistas, procedimientos almacenados, funciones, etc., un servidor SQL Server 2000 puede contener multitud de bases de datos y cada una de ellas millones de objetos. Crear nueva base de datos. Las bases de datos las podemos crear de diferentes formas, lo ms normal es que utilicemos el administrador corporativo para crearlas pero se pueden crear desde Transact-SQL o desde un programa realizado en VB con SQL-DMO. Todas las bases de datos que creamos en SQL Server se crean a partir de un modelo que es la base de datos Model que instala SQL Server, esta base de datos le sirve a SQL Server como ejemplo y modelo para crear las nuevas bases de datos. Para crear una base de datos desde el administrador corporativo seguiremos los siguientes pasos: 1. Desde el rbol de la izquierda, abrimos los nodos y nos posicionamos encima del nodo bases de datos, con el botn derecho del ratn seleccionamos Nueva base de datos y aparecer la imagen 1, Propiedades de la base de datos. 2. En esta primera pantalla ponemos el nombre de la base de datos y el orden de intercalacin si queremos cambiarlo para hacerla compatible la base de datos con otras bases de datos existentes en otros servidores. Por defecto deja el orden de intercalacin del SQL Server especificado en el proceso de instalacin. 3. Pulsamos la siguiente opcin, Archivo de datos (imagen 2), para seleccionar la ruta donde estar alojado el fichero fsico de datos, por defecto estar en el directorio de instalacin de SQL Server en MSSQL\Data. En esta opcin tambin le daremos el tamao del fichero fsico o si queremos que se auto incremente a medida que la base de datos crezca. 4. La siguiente opcin, Registro de transacciones (imagen 3), es similar al punto 3 solo que en lugar de especificar las opciones para el fichero de datos lo hacemos para el fichero de transacciones. Crear una base de datos desde Transact-SQL EL proceso es muy sencillo, como ejemplo creamos una base de datos llamada pruebas con un tamao de 10 MB y limitada a 50 MB y un incremento de 5 MB. El registro de transacciones lo creamos con un tamao de 5MB y limitado a 25 y un incremento de la base de datos de 5 MB. USE master GO CREATE DATABASE Pruebas ON ( NAME = Pruebas_data, FILENAME = 'c:\program files\microsoft sql server\mssql\data\pruebas_data.mdf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5 ) LOG ON ( NAME = Pruebas_log', FILENAME = 'c:\program files\microsoft sql server\mssql\data\pruebas_log.ldf', SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB ) Sintaxis: NAME = Nombre_del_archivo_lgico, FILENAME = Nombre_del_archivo_en_el_sistema (path completo) SIZE = TAMAO (inicial) MAXSIZE = (tamao_mximo | UNLIMITED) (Tamao mximo que puede tener la base de datos, UNLIMITED = tamao ilimitado) FILEGROWTH = Incremento del archivo (crecimiento en MB) Para ejecutar esta cdigo utilizaremos el Analizador de consultas (Query Analyzer) que podemos ejecutarlo desde Inicio -> Programas -> Microsoft SQL Server -> Analizador de consultas.

Para obtener ms informacin sobre transact-SQL podeis leer el articulo publicado en ethek & friends EL poder del transact-SQL (encontrareis el link en la primera pgina) y mirar los libros en pantalla donde hay un capitulo dedicado a este lenguaje (Referencias de Transact-SQL) Configurar las opciones de las bases de datos Se pueden modificar las opciones de configuracin de las bases de datos excepto el nombre, la ruta de los ficheros y el Nombre de intercalacin (imagen 4). Para acceder a la opcin de propiedades pulsamos con el botn derecho del ratn en la base de datos que vamos a modificar y seleccionamos propiedades: - La primera ficha, general, del cuadro de propiedades da informacin sobre la base de datos: Espacio ocupado. Espacio disponible. Fecha de creacin. Orden de intercalacin. - Archivo de datos, en esta ficha podemos cambiar los datos referentes al archivo de datos de nuestra base de datos, las opciones que podemos cambiar son: Espacio en disco que utiliza El crecimiento del archivo Tamao mximo - Registro de transacciones las mismas opciones que para el archivo de datos - Grupo de archivos se puede modificar o eliminar. - Opciones, las nuevas bases de datos tienen unas opciones asignadas por defecto stas pueden cambiarse para una base de datos en concreto desde esta ficha de propiedades o pueden cambiarse de modo general para las nuevas bases de datos si las modificaciones las hacemos sobre la base de datos model. Descripcin de las opciones de la ficha "Opciones": o Registro de acceso, desde esta opcin limitamos el acceso a la base de datos, podemos dejarlo sin habilitar o habilitar el acceso que ms interese. Si restringimos el acceso podemos optar por dos opciones: Solo miembros de los grupos db_owner, dbcreator o sysadmin. O un nico usuario. o Solo lectura, si habilitamos esta opcin la base de datos solo ser accesible en modo lectura. - Recuperacin, especifica el modelo de recuperacin para la base de datos. - Configuracin o NULL ANSI predeterminado, Especifica si las columnas de la base de datos se definen como NULL o NOT NULL de forma predeterminada. o Desencadenadores recursivos, con esta opcin habilitada permitimos que los triggers puedan ejecutarse de forma recursiva. o Actualizar estadsticas automticamente o Deteccin de pgina rasgada, indica que se puedan detectar las pginas incompletas en la base de datos. o Cerrar automticamente, si est habilitado, la base de datos se cierre despus de que se liberen sus recursos, hayan salido todos los usuarios y los procesos se hayan completado. o Reducir automticamente, cuando est habilitado, los archivos de datos y de registro pueden reducirse de tamao y compactarse de forma automtica. o Crear estadsticas automticamente o Utilizar identificadores entre comillas dobles, si esta habilitada, indica a SQL Server que haga cumplir las reglas ANSI relativas al uso de comillas. Copias de seguridad Crear una copia de seguridad. Una de las cosas ms importantes respecto a nuestra base de datos son las copias de seguridad, que debemos hacerlas regularmente por lo que pudiera pasar, teniendo un copia de seguridad de la base de datos, si por cualquier motivo tenemos un desastre o hay que restaurar la base de datos, siempre podremos hacerlo recuperando la copia. Las copias debemos hacerlas en funcin de la utilizacin de la base de datos, si por ejemplo una base de datos no se actualiza nada ms que una vez a la semana, la copia de seguridad la podemos hacer despus de actualizar la base de datos, si por el contrario se actualiza de forma constante es bueno realizar las copias diarias o dos

veces al da. Las copias y restauracin de las bases de datos al igual que casi todo lo que queramos hacer desde SQL Server tenemos varias formas de hacerlo, desde el administrador corporativo que es la forma ms usual de trabajar con SQL Server, en entorno grfico o mediante programacin a travs de Transact-SQL o desde VB, ASP, etc., con SQL-DMO. Para crear copias de seguridad desde el administrador corporativos, seleccionamos la base de datos de la que queremos crear una copia de seguridad y con el botn derecho del ratn seleccionamos Todas las tareas -> Copia de seguridad de la base de datos (imagen 5). Podemos decir que clase de copia queremos hacer: - Base de datos completa. - Diferencial, esta forma solo copiara los cambios realizados desde la ltima copia. - Copiar el registro de transacciones. Seleccionamos agregar y saldr una pantalla donde especificaremos la ruta y el nombre del fichero que queremos utilizar como copia, el fichero puede ser de nueva creacin o uno existente, o podemos especificar un dispositivo ya existente o crear uno nuevo. Un dispositivo de copia de seguridad no es ms que un archivo igual que el que hubieramos seleccionado en la opcin superior, pero estos a diferencia de los anteriores, podemos adminstralo y ver su contenido desde la opcin del nodo Administracin -> Copias de seguridad. Una vez seleccionado donde alojaremos la copia, debemos elegir si sobrescribimos las copias que tenga el fichero o la nueva copia se anexa a las ya existentes en el fichero (en caso de ser un fichero con copias existentes). Una vez hecho sto seleccionamos la ficha opciones y habilitamos la opcin Comprobar la copia de seguridad al concluir, para que una vez finalizada la copia de seguridad compruebe si se ha realizado correctamente. Como he comentado antes podemos hacer copias de seguridad a travs de programacin con Transact-SQL o SQL-DMO. Con transact-SQL utilizaremos la instruccin Backup para realizar la copia de seguridad (en los libros en pantalla del SQL Server encontrareis amplia informacin sobre esta instruccin). Ejemplo con Transact-SQL (Imagen 8). USE master EXEC sp_addumpdevice 'disk', 'pruebas_1', 'G:\microsoft sql server espanol\MSSQL$TORMENTA\BACKUP\BACKUP.dat' -- Backup de la base de datos BACKUP DATABASE PRUEBAS TO Pruebas_1 Qu hace este cdigo?, explicando lnea a lnea lo primero que hacemos es decirle al stored procedure que vamos a utilizar la base de datos Master. USE Master -- Utilizamos la base de datos Master para ejecutar la primera sentencia porque el procedimiento almacenado que ejecutamos para crear un dispositivo esta alojado en la base de datos Master EXEC sp_ addumpdevice utilizamos ste procedimiento almacenado de la base de datos Master para crear un dispositivo de copia de seguridad. Parmetros que recibe: - disk, especifica que el archivo de seguridad ser un archivo de disco. - pruebas_1, nombre lgico que le damos al dispositivo de copia y es el que se ver desde el administrador de copias. - ruta, ruta fsica donde se alojar el fichero en disco, ruta y nombre del fichero. BACKUP , a continuacin hacemos un Backup (copia de seguridad) de la base de datos PRUEBAS al dispositivo Pruebas_1. Lo explicado hasta el momento sobre las copias de seguridad esta muy bien y es muy til, pero, muy pesado si cada da tenemos que entrar en el administrador corporativo para hacer una copia de seguridad, y muy peligroso si nos olvidamos, por eso hay lo que se llama programacin de copias de seguridad, con esta utilidad programamos la tarea de copias de seguridad para que se realicen solas en una determinada fecha.

Para programar el da y hora que se realizarn las copias realizamos las misma operaciones que para crear una copia de seguridad pero tenemos que habilitar la opcin programar, en la imagen 5 podemos ver esa opcin al final de la pantalla, pulsando el botn podremos seleccionar da y hora para que la copia de seguridad se ejecute sola (imagen 7). Esta tarea queda guardad en la opcin del Agente de SQL Server trabajos. Restaurar copias de seguridad Si se pueden hacer copias de seguridad lo lgico es que estas copias se puedan restaurar. Para restaurar una copia de seguridad tenemos que seleccionar la base de datos deseada y con el botn derecho pulsamos en la opcin Todas las tareas -> Restaurar base de datos (imagen 6). En esta pantalla, si restauramos la base de datos desde un fichero, seleccionamos desde dispositivo, pulsamos el botn dispositivo y en la siguiente pantalla pulsamos agregar y seleccionamos el fichero de copias de seguridad que queremos restaurar. Las opciones de restauracin son las mismas que las de copias, podemos restaurar la base de datos: - Completa - Diferencial - O el registro de transacciones. En la siguiente ficha de esta pantalla opciones, seleccionamos las opciones de restauracin de la copia: - Forzar restauracin sobre la base de datos existente, forzamos a que se restaure la copia sobrescribiendo el fichero existente. - Restaurar archivos de base de datos como, especifica el nombre del archivo fsico y lgico de la restauracin. Del mismo modo que podemos hacer copias de seguridad desde cdigo transact-SQL o SQL-DMO, podemos restaurar bases de datos. La instruccin a utilizar es Restore database , ste al igual que el Backup son amplios en parmetros y modos de uso por ese motivo lo ms recomendable es mirar la ayuda de SQL Server (libros en pantalla) donde se puede encontrar un apartado completo dedicado al transact-SQL (Referencia de Transact-SQL) DTS Importacin y exportacin de datos Una de las herramientas que incorpora SQL Server 2000 (disponible tambin en SQL Server 7.0) son los servicios de transformacin de datos (DTS Data Transformation Services), son herramientas y objetos que permiten mover datos entre varios orgenes de datos diferentes o iguales. Aunque en este artculo explicar paso a paso la parte de importacin/exportacin a travs del asistente que incorpora SQL Server, los DTS son mucho ms dando la posibilidad de programar paquetes de DTS que realicen diferentes tareas de forma secuencial o en paralelo dependiendo de la programacin. Cada paquete puede contener una o varias secuencias de transformacin de datos y accesos a base de datos. Estos paquetes DTS se almacenan en Servicios de transformacin de datos, pero ste podra ser otro capitulo de este manual. Qu tareas puede realizar un DTS? Una tarea es un conjunto de procesos que se ejecutan. Por ejemplo: Importacin y exportacin de datos entre dos orgenes de datos. Transformacin de datos. Copia de objetos de base de datos : tablas, ndices, etc. Ejecucin de instrucciones de Transact-SQL.

Es una herramienta para mover, copiar, modificar y trabajar con orgenes de datos iguales o diferentes, pero en este punto vamos a ver la importacin y exportacin de datos entre dos orgenes de datos iguales o diferentes. DTS tiene una arquitectura OLE DB por lo que puede copiar y transformar mltiples orgenes de datos, entre ellos: - SQL Server - Oracle - Access, excel, Outlook, archivos de texto

- Exchange Server - Y orgenes de datos proporcionados por terceros Para ejecutar el asistente de importacin/exportacin podemos hacerlo de varias formas, desde la consola (cmd) del sistema ejecutando el archivo dtswiz, otra opcin es ir desde el men Inicio -> programas -> Microsoft SQL Server -> Importacin y exportacin de datos y por supuesto, desde el administrador corporativo. Se puede ejecutar posicionndonos en una base de datos y con el botn derechos seleccionamos Todas las tareas -> importar datos o exportar datos dependiendo de la tarea que vamos a realizar. Ejecutar un DTS de importacin o exportacin consta de una serie de pasos: 1. Una vez ejecutado el asistente, pasamos la primera pantalla de ayuda y aparece la imagen 1 (Elegir un origen de datos). En esta pantalla seleccionamos un origen de datos (desde donde se van a transferir los datos), tenemos mltiples opciones, desplegando el combo elegir un origen de datos, vemos las distintas fuentes desde donde se pueden extraer datos para importarlos a otros formatos. Dependiendo del origen de datos que seleccionemos, esta pantalla nos ira cambiando mostrando unas opciones u otras segn las necesidades del origen de datos seleccionado. Seleccionamos un servidor SQL Server. Por defecto aparecer la opcin de SQL Server, si dejamos esta opcin lo siguiente que debemos hacer es seleccionar el servidor SQL Server del que queremos extraer datos, por defecto esta seleccionado el servidor local. Seleccionamos la forma de autentificacin al servidor SQL Server elegido. Y la base de datos de donde queremos extraer los datos, por defecto si ejecutamos el asistente desde una base de datos, sta ser la seleccionada por defecto. Una vez configurada la pantalla Elegir un origen de datos pulsamos siguiente. 2. La siguiente pantalla elegir un destino de datos (imagen 2) es exacta a la primera, con las mismas opciones, pero en este caso las opciones que estamos seleccionando son las de destino de los datos. 3. Elegir copia de tabla o consulta (imagen 3), aqu hay tres opciones dependiendo de la forma y el modo que queramos copiar los datos. Las opciones de esta pantalla se habilitan o deshabilitan dependiendo de los orgenes de datos seleccionados. Suponiendo que los orgenes de datos son en ambos casos (origen y destino) SQL Server 1 opcin: copiar las tablas y vistas de la base de datos de origen en la siguiente pantalla (imagen 4) tendremos que elegir las tablas y/o vistas que transferiremos a la base de datos destino, si se selecciona una tabla y se pulsa el botn (), en la columna transformar aparece una pantalla para modificar las opciones de traspaso de esa tabla, si la tabla no existe en destino, sta se crear pero si existe tenemos la posibilidad de borrarla o adjuntar los datos a los existente. 2 opcin: Usar una consulta para especificar qu datos transferir, esta opcin permite en la siguiente pantalla escribir una consulta SQL para realizar la consulta de traspaso de datos, de esta forma podemos transferir datos filtrados por parmetros. 3 opcin: Copiar objetos y datos entre bases de datos SQL Server, sta opcin solo estar disponible si la transferencia de datos se realiza entre servidores SQL Server. En la siguiente pantalla (imagen 5) podemos elegir los objetos a copiar, entre ellos tablas, vistas, procedimientos almacenados, etc., as como elegir opciones tales como reemplazar o anexar datos, copiar todos los objetos o seleccionarlos de una lista, y elegir las opciones de copias. Esta opcin de transferencia de datos entre servidores SQL Server es la ms completa y la que deberemos utilizar a la hora de hacer las transferencias. 4. Por ltimo, la siguiente pantalla podemos elegir como y cuando ejecutar el DTS, ejecutarlo al momento o programarlo como una tarea o guardarlo como un paquete DTS, procedimiento almacenado o como un modulo de Visual Basic. 5. La siguiente pantalla es informativa del proceso que se va a realizar (imagen 7), dependiendo de las opciones seleccionadas en la pantalla anterior, antes de esta pantalla informativa pueden salir otras para guardar los datos elegidos en pantallas anteriores dependiendo del los datos seleccionados. Crear, ejecutar o programar la ejecucin de un DTS de importacin o exportacin es una tarea sencilla y potente que puede ser de gran utilidad a la hora de transferir datos entre servidores remotos o entre diferentes fuentes de datos. DTS de importacin o exportacin tambin pueden crearse desde cdigo Visual Basic, Visual C++, etc. Tiene un modelo de objetos que son accesibles mediante esos lenguajes de programacin, por ejemplo desde Visual basic deberemos referenciar las libreras Microsoft DTSDataPump Scripting

Object Library (dtspump.dll) y Microsoft DTSPackage Object Library (dtspkg.dll) para poder crear DTS a travs de programacin. Gestin de Tablas. Para crear tablas SQL Server proporciona varias formas, podemos crear tablas desde el administrador corporativo, a travs de transact-sql con el comando Create Table o con un programa en VB, ASP, etc., utilizando SQL-DMO. Del mismo modo que las creamos las podemos modificar, borrar, renmbralas, copiarlas, etc. Las tablas deben tener un nombre como mximo de 128 caracteres y el nombre debe empezar por un carcter alfabtico, a excepcin de las tablas temporales que se crean con el signo # delante del nombre, para la sesin del usuario actual y con dos ## para las tablas temporales globales, accesibles a todos los usuarios. Tablas temporales: Son tablas que crea el usuario durante la ejecucin de un procedimiento almacenado u otro mecanismo y se eliminan automticamente cuando la conexin que las cre desaparece. Estas tablas no se almacenan en la base de datos de trabajo sino que estn almacenadas en la base de datos tempdb Para crear una tabla desde el administrador corporativo seleccionamos una base de datos y dentro de estas el nodo tablas, pulsamos con el botn derecho del ratn y seleccionamos Nueva tabla y aparece la imagen 1, a partir de este punto ya podemos crear los campos de la tabla y asignarles su tipo de dato y sus propiedades. Vemos que la pantalla para crear tablas est divida en dos partes, la superior es para crear los campos (columnas) y donde asignaremos determinados datos, la inferior es para aadir datos a un campo seleccionado de la parte superior. Descripcin de las columnas: - Nombre de la columna: Aqu escribiremos el nombre del campo (en la imagen la primera columna se llama IDpruebas. - Tipo de datos: Asignamos el tipo de datos del campo. Hay mltiples tipos como int(integer), numeric, char, varchar, datetime, etc. Elegiremos el que ms se adece a nuestro campo. En el ejemplo, el tipo de campo es un numrico. - Longitud: longitud del campo de un tipo de datos numrico es el nmero de bytes utilizados para su almacenamiento, de una cadena es el nmero de caracteres que puede contener. - Permitir valores nulos: Si esta opcin esta activada el campo permitir la asignacin de valores nulos (en blanco) cuando se den de alta registros. Los campos auto incrementales como los identity no permiten que sean nulos. Cada fila de la columna tiene una serie de opciones que se pueden modificar a gusto del usuario o dependiendo de la funcin que realice el campo. Estas opciones se encuentran en la parte inferior de la pantalla, en la ficha columnas. Descripcin de las opciones: - Descripcin: permite poner una descripcin al campo - Valor predeterminado: inicializa el campo con un valor por defecto, de este modo cuando se crea un registro nuevo el campo toma este valor y lo inserta sin necesidad que nosotros lo pongamos. - Precisin: Es el nmero de dgitos de un nmero. - Escala: Es el nmero de dgitos situado a la derecha de la coma decimal de un nmero. - Identidad (identity): Con este campo indicamos a SQL Server que el campo numrico es auto incremental. - Inicializacin de identidad: Inicializa el campo identidad a un valor determinado - Incremento de identidad: Incremento del campo identidad. - Intercalacin: Especifica el juego de caracteres y el orden de la tabla, si no se pone nada toma la intercalacin por defecto de SQL Server. Modificar y/o borrar una tabla. Para realizar estas acciones tenemos que posicionar el ratn sobre la tabla que queremos borrar o modificar y pulsando con el botn derecho seleccionamos la opcin deseada. Si lo que deseamos es modificar o borrar un campo de la tabla, posicionamos el ratn sobre la tabla y con el botn derecho seleccionamos disear tabla, aparece el diseador de tablas con los

datos de la tabla seleccionada, una vez ah posicionamos el ratn en el campo deseado y realizamos las operaciones de modificacin o borrado. Desde el administrador corporativo podemos ver las filas y el tamao de las tablas, para sto nos posicionamos en la base de datos que queremos ver y con el botn derecho del ratn seleccionamos Ver -> Cuadro de tareas y del panel derecho seleccionamos info. de tablas (imagen 2). Crear, modificar y borrar tablas desde transact-SQL Los comandos para realizar estas acciones son: - Create table: para crear una tabla. - Alter table: para modificar una tabla. - Drop table: para borrar una tabla. CREATE TABLE. Ejemplo, crear una tabla: CREATE TABLE Nombre_tabla ( IDTabla numeric IDENTITY(1,1), Nombre varchar(50) Not Null, Descrip rchar(100) Null ) Donde: Nombre_tabla es el nombre que le daremos a la tabla. Los valores entre los parntesis son los campos (columnas) de la tabla: IDTabla es una columna de tipo numrico identity (auto incremental) que empieza el incremento en 1 y con un incremento de 1. Nombre es una columna de tipo varchar de 50 caracteres de longitud y que no permite nulos. Descrip es una columna de tipo char de 100 caracteres y que permite nulos. ALTER TABLE Desde este comando de transact-SQL podemos modificar una tabla, agregar campos (columnas), quitarlos o modificarlos y habilitando o deshabilitando restricciones en la tabla. Ejemplo, Modificar una tabla: ALTER TABLE Nombre_tabla Drop COLUMN Descrip ALTER TABLE Nombre_tabla Add Domicilio varchar (30) null Este cdigo borra la columna Descrip y crea una nueva llamada Domicilio que permite tener 30 caracteres y puede aceptar valores nulos. DROP TABLE Este comando borrar una tabla y todos los datos que contenga, ndices, restricciones, etc., las vistas o procedimientos almacenados se han de borrar aparte. Con DROP VIEW o DROP PROCEDURE. Ejemplo, borrar una tabla: DROP TABLE Nombre_tabla Estas instrucciones de Transact-SQL que hemos visto para manipular tablas se ejecutan desde el Analizador de Consultas seleccionando la base de datos que se quiere manipular (imagen 3).

You might also like