CORSO DI SQL SERVER 7 Amministrazione



Documenti analoghi
User Guide Guglielmo SmartClient

Copyright 2012 Binary System srl Piacenza ITALIA Via Coppalati, 6 P.IVA info@binarysystem.eu

API e socket per lo sviluppo di applicazioni Web Based

CONFIGURATION MANUAL

Add workstations to domain. Adjust memory quotas for a process. Bypass traverse checking. Change the system time. Create a token object

RenderCAD S.r.l. Formazione

INSTALLARE PALLADIO USB DATA CABLE IN WINDOWS XP/ME/2000/98

Portale Materiali Grafiche Tamburini. Grafiche Tamburini Materials Portal

Database support Prerequisites Architecture Driver features Setup Stored procedures Where to use. Contents

Installazione interfaccia e software di controllo mediante PC Installing the PC communication interface and control software

Introduzione Kerberos. Orazio Battaglia

Installazione di Filenet Content Services 5.3 di Emanuele Mattei (emanuele.mattei[at] .it)

GstarCAD 2010 Features

(1) Network Camera

Laboratorio di Amministrazione di Sistema (CT0157) parte A : domande a risposta multipla

MOC10775 Administering Microsoft SQL Server 2012 Databases

Nautilus Installazione Aggiornato a versione

Customer Centric/Inquiry/E-bill. Tanya Enzminger

Aggiornamento dispositivo di firma digitale

Nuvola It Data Space Easy Tutorial per l Amministratore. Telecom Italia Business/Marketing Top Clients Marketing ICT services

Guida alla configurazione Configuration Guide

Nuvola It Data Space Easy Reseller Tutorial per l Amministratore. Top Clients Marketing ICT services

SHAREPOINT INCOMING . Configurazione base

sdforexcontest2009 Tool

Biotrends - Istruzioni per il Setup

Il BACKUP è disponibile in


REGISTRATION GUIDE TO RESHELL SOFTWARE

STATO IMPLEMENTAZIONE ONVIF SU TELECAMERE MUNDUS SECURUS

GE Fanuc Automation. Page 1/12

-Fig.1-

Introduzione all ambiente di sviluppo

How to use the WPA2 encrypted connection

IBM Software Demos Tivoli Identity Manager e Tivoli Directory Integrator

GERARCHIE RICORSIVE - SQL SERVER 2008

Installazione di GFI Network Server Monitor

Posta elettronica per gli studenti for the students

TNCguide OEM Informativa sull introduzione di documentazione aggiuntiva nella TNCguide

Guida rapida di installazione

Downloading and Installing Software Socio TIS

CORSO MOC55133: PowerShell for System Center Configuration Manager Administrators. CEGEKA Education corsi di formazione professionale

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

Hosting Applicativo Upgrade Web Client

MS WINDOWS SERVER CONFIGURING, MANAGING AND MAINTAINING SERVERS

Compatibilità del Portale Piaggio con Internet Explorer 10 e 11. Internet Explorer 10

Come Installare SQL Server 2008 R2 Express Edition With Tools

WELCOME. Go to the link of the official University of Palermo web site Click on the box on the right side Login unico

Installazione di GFI Network Server Monitor

Servizio di backup dei dati mediante sincronizzazione

MOC10982 Supporting and Troubleshooting Windows 10

Procedura di Aggiornamento TO.M.M.YS. SQL 2005 e 2008

Installazione di GFI MailArchiver

Basi di dati (3) Ing. Integrazione di Impresa A.A. 2007/08

SOMMARIO... 2 Introduzione... 3 Configurazione Microsoft ISA Server... 4 Microsoft ISA Server Microsoft ISA Server

ENPCOM European network for the promotion of the Covenant of Mayors

Installazione MS SQL Express e utilizzo con progetti PHMI

ECVUSBO MANUALE DEL PRODOTTO DEVICE MANUAL

AGENDA.. Mission. Componenti SMC. Security Environment. Report. Eventi. Update prodotti. Faq. Achab 2009 pagina 1

Guida all installazione di Easy

CABIN CREW TRAINING COMMUNICATION

Mac Application Manager 1.3 (SOLO PER TIGER)

Resources and Tools for Bibliographic Research. Search & Find Using Library Catalogues

Installazione e caratteristiche generali 1

ECCO LE ISTRUZIONI PER INSERIRE IL MATERIALE RICHIESTO DAL BANDO TEATRO SENZA FILO CONTEST:

Utilizzare il NetBeans GUI Builder. Dott. Ing. M. Banci, PhD

Installazione di Sophos Antivirus 5.1 su piattaforma Windows XP

Printer Driver. Prima di procedere con l utilizzo del driver stampante, leggere il file Readme. Prima dell utilizzo del software (1)

WELCOME UNIPA REGISTRATION:

Manuale per la configurazione di AziendaSoft in rete

CCTV DIVISION GUIDA RAPIDA PER LA CONFIGURAZIONE DELL IP STATICO SU SISTEMI TVCC QUICK GUIDE FOR STATIC IP CONFIGURATION ABOUT CCTV SYSTEM

SOMMARIO COSA SERVE... 2 PRIMA DI INIZIARE... 2 COME PROCEDERE LATO SERVER... 3 COME PROCEDERE LATO CLIENT... 3

DICHIARAZIONE DI RESPONSABILITÀ


UNIVERSITÀ DEGLI STUDI DI TORINO

GateManager. 1 Indice. tecnico@gate-manager.it

Guida rapida di installazione e configurazione

Edizione 1 IT. Nokia e Nokia Connecting People sono marchi registrati di Nokia Corporation

System Center Virtual Machine Manager Self-Service Portal

Introduzione ai Web Services Alberto Polzonetti

Decomponibilità dei sistemi software

Guida applicativa - Print Server. Rev:

Sommario. Esempio di Modellazione mediante DASM: Grid OGSA. Grid secondo OGSA. Definizione Grid per OGSA. Stati di un Job e Requisiti DASM

Guida utente User Manual made in Italy Rev0

PROF. Filippo CAPUANI. Amministrazione di una rete con Active Directory

Code: GW-IMP-WEB-1. Datalogger web pulses counter. Version 6 inputs with Ethernet. MarCom

Contenuto del pacchetto

Configurazione avanzata di IBM SPSS Modeler Entity Analytics

MSSQL2005 PER Il presente documento comprende la procedura di prima installazione di MSSQL (e altre nozioni di base).

Applicazione JobScheduler su DB SQL Milano, lì 14/09/2009

Configurazione modalità autenticazione utenti sui firewall D-Link Serie NetDefend (DFL-200, DFL-700, DFL-1100)

Manuale Intesa. Guida all apertura di un ticket di assistenza online

Administering Windows Server 2012 (MOC 20411)

Architetture software

SATA HDD Docking Station Manuale Istruzioni

Replica di Active Directory. Orazio Battaglia

Plugin Single Sign-On

Act: : un caso di gestione della conoscenza di processo. Tiziano Bertagna Responsabile SOX Office, RAS Group

Requisiti per la Configurazione Internet

CAMBIO DATI PERSONALI - Italy

Transcript:

CORSO DI SQL SERVER 7 Amministrazione Ing. Andrea Bulgarelli

INDICE L AMMINISTRAZIONE DI SQL SERVER...3 AVVIARE E FERMARE I SERVIZI DI SQL SERVER...3 LA GESTIONE DEI SERVER...4 Registrare ed eliminare un server o un gruppo...4 Altre azioni possibili con i server e i gruppi...5 Starting, Pausing, and Stopping SQL Server...5 Le proprietà del server...6 LA STRUTTURA DI SQL SERVER...7 INTERFACCE CLIENT...7 OLE DB...7 ODBC...7 Application...7 Driver...7 Data source...7 RDO...7 ADO...7 DB-Library...7 LA STRUTTURA DI COMUNICAZIONE...8 Net-Library e le utility correlate...8 ODS (Open Data Services)...9 LOGIN, USER, ROLE E GROUP...11 Creazione di un login...11 Comprendere i ruoli...11 Aggiungere uno user... 12 Server role, database role, login e user...13 PROCEDURE DI AMMINISTRAZIONE PRINCIPALI...14 AUTOMATING ADMINISTRATIVE TASKS...14 What is Automated Administration?...14 What are the Components of Automatic Administration?...14 SQLSERVERAGENT...15 Defining Jobs...15 DATABASE MAINTENANCE PLAN WIZARD...16 Update Data Optimization Information...17 Database Integrity Check...18 Specify the Database Backup Plan...18 Specify Backup Disk Directory...19 Maintenance History... 20

L AMMINISTRAZIONE DI SQL SERVER Microsoft SQL Server administration applications, and the accompanying services, are designed to assist the system administrator with all administrative tasks related to maintaining and monitoring server performance and activities. Molte delle attività che saranno qui descritte possono essere svolte mediante l Enterprise Manager (EM) di SQL Server. SQL Server Enterprise Manager is a graphical tool that allows for easy, enterprise-wide configuration and management of Microsoft SQL Server and SQL Server objects. SQL Server Enterprise Manager provides: A scheduling engine. Administrator alert capability. Drag-and-drop control operations across multiple servers. A built-in replication management interface. You can also use SQL Server Enterprise Manager to: Manage logins, permissions, and users. Create scripts. Manage devices and databases. Back up databases and transaction logs. Manage tables, views, stored procedures, triggers, indexes, rules, defaults, and user-defined data types. Avviare e fermare i servizi di SQL Server SQL Server può essere avviato automaticamente ogni volta che viene avviato Windows. Sotto Windows 9x è possibile avviare e fermare i servizi con il Server Service Manager, mentre sotto Windows NT è anche possibile gestire l avvio di SQL Server direttamente dal Pannello di Controllo/Services. In entrambi i modo è possibile effettuare l avvio automatico (alla partenza del Sistema Operativo) o quello manuale. I servizi principali sono i seguenti: MSSQLServer: il motore principale di SQL Server SQLServerAgent: il servizio per la gestione automatica di SQL Server. MSDTC: per il coordinamento delle transazioni distribuite You can pause SQL Server before stopping the server. Pausing SQL Server prevents new users from logging in and gives you time to send a message to current users asking them to complete their work and log out before you stop the server. If you stop SQL Server without pausing it, all server processes are terminated immediately. Stopping SQL Server prevents new connections and disconnects current users.

La gestione dei server Registrare ed eliminare un server o un gruppo Prima di poter utilizzare e amministrare un server locale o remoto SQL Server è necessario registrarlo. Per registrare un server utilizzando EM (Enterprise Manager) è necessario per prima cosa scegliere il gruppo al quale assegnare il server, e se non è presente, è necessario crearlo premendo il tasto destro del mouse in EM su SQL Server Group. Allo stesso modo si procede per registrare il server, e viene avviato un Wizard che chiede nell ordine: 1. il nome del server 2. l autentication mode 3. il gruppo al quale assegnare il server Figura 1: Wizard per la registrazione del server In modo analogo è possibile procedere per eliminare un server o un gruppo. Nella figura seguente è possibile vedere come con il tasto destro del mouse sia possibile effettuare tutte le azioni sui server e sui gruppi:

Figura 2: azioni che è possibile svolgere sui server registrati Altre azioni possibili con i server e i gruppi Tra le azioni possibili, quelle più importanti sono: eliminare il server connettere e disconnettere il server fermare (stop), mettere in pausa (pause) e riavviare il server (start). When you pause Microsoft SQL Server, users who are connected to the server can finish tasks, but new connections are not allowed. For example, you can pause SQL Server for a few minutes and send a shutdown message to connected users before shutting it down. You can also resume a SQL Server service. Starting, Pausing, and Stopping SQL Server Before you log in to Microsoft SQL Server, you need to know how to start, pause, and stop SQL Server. After you are logged in, you can perform various tasks such as administering the server or querying a database. Because SQL Server is integrated with the Microsoft Windows NT Service Control Manager, it can be started and stopped as a Windows NT service (MSSQLServer), either locally or remotely.

SQL Server can be started automatically as a service each time Windows NT starts. This option can be specified during installation by using SQL Server Setup, and after installation by using SQL Server Enterprise Manager or the Services application in Control Panel. You can log off from the Windows NT network without shutting down SQL Server. When you start SQL Server, you are starting the SQL Server service (MSSQLServer); SQL Server Agent runs as a service named SQLServerAgent. If the MSSQLServer and SQLServerAgent services are not configured to start automatically, you must start them manually. After you start the MSSQLServer service, users can establish new connections to the server. After you start the SQLServerAgent service, you can use SQL Server s scheduling features. You can pause SQL Server before stopping the server. Pausing SQL Server prevents new users from logging in and gives you time to send a message to current users asking them to complete their work and log out before you stop the server. If you stop SQL Server without pausing it, all server processes are terminated immediately. Stopping SQL Server prevents new connections and disconnects current users. Le proprietà del server Selezionando dal menu di Figura 2 la voce Properties è possibile modificare le impostazioni del server (che quindi, come detto in precedenza, può essere amministrato in remoto mediante EM).

LA STRUTTURA DI SQL SERVER Interfacce client OLE DB OLE DB is an API that allows COM applications to consume data from OLE DB data sources. OLE DB data sources include data stored in many different formats, not just SQL databases. An application uses an OLE DB provider to access an OLE DB data source. An OLE DB provider is a COM component that accepts calls to the OLE DB API and does whatever is necessary to process that request against the data source. Microsoft SQL Server version 7.0 introduces a native Microsoft OLE DB Provider for SQL Server that can be used by OLE DB applications to access the data in SQL Server. ODBC ODBC è un API per l accesso ai db che rappresenta uno standard industriale. E una delle interfacce più utilizzate per l accesso ai db ed è anche riconosciuta come standard. SQL Server dispone di una interfaccia ODBC nativa. ODBC architecture has four components that perform the following functions. Component Function Application Calls ODBC functions to communicate with an ODBC data source, submits SQL statements, and processes result sets. Driver Manager Manages communication between an application and all ODBC drivers used by the application. Driver Processes all ODBC function calls from the application, connects to a data source, passes SQL statements from the application to the data source, and returns results to the application. If necessary, the driver translates ODBC SQL from the application to native SQL used by the data source. Data source Contains all information a driver needs to access a specificinstanceofdatainadbms. RDO Remote Data Object. Interfaccia ad oggetti strettamente legata ad ODBC in quanto rende facilmente accessibili le funzionalità di ODBC. ADO ActiveX Data Object. Interfaccia ad oggetti a più alto livello basata su OLE DB DB-Library API specifica di SQL Server che mette a disposizione delle applicazioni tutte le macro e le funzioni necessarie per stabilire connessioni, formattare query, inviarle al server e restituire i risultati. E l interfaccia originaria di SQL Server.

La struttura di comunicazione Net-Library e le utility correlate Affinche due SQL Server (oppure un client e un SQL Server) siano in grado di comunicare tra loro è necessario che sia sul client che sul server siano installate le Net-Libraries 1. Esistono Net- Libraries per diversi protocolli, tra cui il TCP/IP, inoltre alcune Net-Libraries come le Named Pipe o Multiprotocol supportano diversi protocolli. Solitamente le Net-Liraries sono installate durante il setup di SQL Server, e possono essere gestite mediante le seguenti utility: SQL Server Network Utility: This application allows you to activate, deactivate, and reconfigure server Net-Libraries to listen for clients on their corresponding network protocols. Se si utilizza Windows 9x, è necessario limitarsi al TCP/IP o Multiprotocol. SQL Server Client Network Utility: questa applicazione consente di effettuare una nuova configurazione per connettersi con uno specifico server oppure modificare la Net-Libraries di default E ovvio che l utilizzo di un particolare protocollo di comunicazione per SQL Server è possibile solamente se questo è installato sotto Windows. Grazie a queste librerie è ora possibile la comunicazioni tra client e server. Microsoft SQL Server supports several methods of communicating between client applications and the server. When the application is on the same computer as SQL Server, Windows Interprocess Communication (IPC) components, such as local named pipes or shared memory, are used. When the application is on a separate client, a network IPC is used to communicate with SQL Server. Un IPC ha due componenti: Una API Un protocollo 1 A library of functions for managing network connections and routing. Each Net-Library allows SQL Server to use a particular network protocol. Le Net-Library sono le interface di rete di SQL Server

Figura 3: comunicazione in rete tra un client e un server In Figura 3 è riportato lo schema di comunicazione tra un client ed n server SQL. Il caso più tipico è quello di una applicazione che utilizza OLE DB (magari mediante interfaccia ADO). L OLE DB Application utilizza OLE DB Provider per SQL Server, il quale a sua volta per accedere all SQL Server in rete utilizza le Net-Library opportune. La comunicazione viene poi stabilita utilizzando l opportuno protocollo di rete e le Net-Library del server, fino ad arrivare all SQL Server. Durante le procedure di testing interne a Microsoft la Net-Library TCP/IP Socket è risultata essere la soluzione di rete più veloce. Il numero di porta predefinito per questo protocollo è il 1433. If SQL Server is running on a Microsoft Windows NT computer, the Named Pipes Net-Library is used for local communications. For local connections with no network card, Windows NT uses the file subsystem to implement a named pipe connection. Inoltre, per la comunicazione di rete, le Named Pipes ricorrono a meccanismo di IPC indipendenti dal protocollo, per cui è possible utilizzare un qualsiasi protocollo sottostante. Tuttavia, dal punto di vista delle prestazioni non risulta essere la migliore scelta, pertanto è consigliabile utilizzare TCP/IP, anche se non bisogna rimuovere Named Pipes perché viene utilizzata per le comunicazioni locali. ODS (Open Data Services) Si tratta di un interfaccia tra la Net-Library del server e il server stesso. Il suo scopo principale è quello di gestire la rete: Resta in attesa di nuove connessioni Annulla le connessioni non riuscite Accetta l annullamento dei comandi Coordina i servizi di threading di SQL Server

Restituisce al client i risultati e i messaggi Open Data Services functions as an interface between server Net-Libraries and server-based applications, such as Microsoft SQL Server and extended stored procedure DLLs. The client and server communicate through a proprietary data protocol known as tabular data stream (TDS), with Net-Libraries transporting TDS between the client and server. Open Data Services transforms the TDS protocol into an API, and provides a function library for packaging and unpackaging client requests and server responses through TDS.

LOGIN, USER, ROLE E GROUP Logins, users, roles e gruppi sono i concetti fondamentali per la gestione dei meccanismi di sicurezza si SQL Server. Infatti, gli utenti che si vogliono connettere a SQL Server devono possedere un login ID. A questo login ID sono assegnati dei permessi ai vari oggetti del database (table, view, stored procedure, ecc.). Il login può essere lo stesso login utilizzato dagli utenti per accedere ad SQL Server (e questo semplifica la gestione dei login da parte degli amministratori di sistema) oppure è un login specificato direttamente all interno di SQL Server. Creazione di un login Per la creazione di un login premere il tasto destro del mouse sulla cartella Security\Logins e selezionare New Login Impostare il login ID (name), la password, il database al quale deve accedere il login che si sta creando ed eventualmente il linguaggio di default. Può anche essere necessario associare un login ad uno o più server roles. Comprendere i ruoli I meccanismi di sicurezza di SQL Server 7 includono dei ruoli predefiniti con associati diversi tipi di diritti. In tal modo, se dobbiamo registrare degli utenti che svolgono particolari attività, è possibile associarli direttamente a specifici ruoli. I ruoli si suddividono in Server roles e in Database roles. Il primo tipo includono tutte le azioni a livello di server, e quindi esterni ai singoli database. Ogni utente che appartiene ad un server role può aggiungere altri utenti. Fixed server role sysadmin serveradmin setupadmin securityadmin processadmin dbcreator diskadmin Description Performs any activity in SQL Server. Configures server-wide settings. Adds/removes linked servers, and execute some system stored procedures, such as sp_serveroption. Manages server logins. Manages processes running in SQL Server. Creates and alters databases. Manages disk files. The permissions of the sysadmin fixed server role span all of the other fixed server roles. Non è possibile creare nuovi server role. Il secondo tipo di ruoli sono i database role. Questi sono definiti a livello di database e riguardano tutte le attività che uno user può effettuare. In particolare, sono specificati tutti i diritti di un utente sugli oggetti del database. Ogni membro di un determinato database role può aggiungere altri utenti al ruolo. I ruoli possono essere creati, ma ne esistono alcuni predefiniti, come i seguenti: Fixed database role Description db_owner Performs the activities of all database roles, as well as other maintenance and configuration

activities in the database. db_accessadmin Adds or removes Windows NT groups, Windows NT users, and SQL Server users in the database. db_datareader Sees all data from all user tables in the database. db_datawriter Adds, changes, or deletes data from all user tables in the database. db_ddladmin Adds, modifies, or drops objects in the database. db_securityadmin Manages roles and members of SQL Server database roles, and can manage statement and object permissions in the database. db_backupoperator Backs up the database. db_denydatareader Sees no data in the database. db_denydatawriter Changes no data in the database. The permissions of the db_owner fixed database role span all of the other fixed database roles. In aggiunta ai ruoli precedente, viene creato anche il ruolo public. The public role is a special database role to which every database user belongs. The public role: Captures all default permissions for users in a database. Cannot have users, groups, or roles assigned to it because they belong to the role by default. Is contained in every database, including master, msdb, tempdb, model, and all user databases. Cannot be dropped. Per creare un nuovo database role è sufficiente portarsi nella cartella roles del database, premere il tasto destro del mouse sulla cartella (o nella parte destra della finestra dell Enterprise Manager) e selezionare New database role. Compare una finestra nella quale è possibile specificare il nome del ruole e gli utenti associati al ruolo. Una volta creato il ruolo, selezionando Properties (sempre con il tasto destro del mouse) è possibile selezionare i diritti (grant) per quel ruolo mediante il pulsante Permissions. Aggiungere uno user Per aggiungere uno user si procede in modo analogo a quanto fatto per l aggiunta di un database role. Premendo il pulsante destro del mouse sulla cartella Users del database su cui si sta lavorando e selezionando New database user compare una finestra nella quale è possibile specificare il login (tra quelli non ancora associati al database), il nome dell utente (che può essere uguale al login) e i database role da associare all utente. Di default ogni nuovo utente è associato al ruolo Public. guest User The guest user account allows a login without a user account to access a database. A login assumes the identity of the guest user when all of the following conditions are met: The login has access to Microsoft SQL Server, but does not have access to the database through his or her own user account. The database contains a guest user account.

Permissions can be applied to the guest user as if it were any other user account. The guest user can be deleted and added to all databases except master and tempdb, where it must always exist. By default, a guest user account does not exist in newly created databases. For example, to add a guest user account to a database named Accounts, execute from SQL Server Query Analyzer: USE Accounts GO EXECUTE sp_grantdbaccess guest, guest Server role, database role, login e user Quando si crea uno user lo si associa ad un particolare login. I diritti dello user sono la somma dei diritti del login con quelli aggiuntivi dello user. In particolare, i diritti di uno user sono una combinazione dei diritti: associati al server role per quanto riguarda il login (uno user è associato ad un solo login mentre un login può essere associato a più server role) sono la somma dei diritti di tutti i database role associati allo user (infatti uno user può essere associato a più database role) a questi vanno aggiunti i diritti particolari che è possibile associare al singolo user (mediante il pulsante Permissions delle proprietà dell utente). Inoltre è possibile che uno user che non ha diritto di accesso ad un database (perché questo diritto non è stato impostato per il login associato) possa comunque accedere al database ed avere tutti i diritti associati al database role public se nel database è presente l utente guest. Per cambiare database è possibile utilizzare il comando USE da Query Analyzer.

PROCEDURE DI AMMINISTRAZIONE PRINCIPALI Automating Administrative Tasks What is Automated Administration? Automated administration is the programmed response to a predictable administrative responsibility or server event. Administrators, application writers, and analysts operating data warehouses can benefit from task automation. To automate administration: Establish which administrative responsibilities or server events occur regularly and can be administered programmatically. Define a set of jobs and alerts. Run the SQL Server Agent service. What are the Components of Automatic Administration? Jobs, operators, and alerts are the three main components of automatic administration. Jobs You can use jobs to define an administrative task that can be executed one or more times and monitored for success or failure each time it executes. Jobs can be: Executed on one local server or on multiple remote servers. Executed according to one or more schedules. Executed by one or more alerts. Made up of one or more job steps. Job steps can be executable programs, Windows NT commands, Transact-SQL statements, Microsoft ActiveX Script, or replication agents. Operators An operator is an individual responsible for the maintenance of one or more computers running SQL Server. In some enterprises, operator responsibilities are assigned to one individual. In larger enterprises with multiple servers, many individuals share operator responsibilities. Operators are notified in one or more ways: E-mail Pager (through e-mail) net send You can choose to define an operator s e-mail alias as an alias assigned to a group of individuals. In this way, all members of that alias can be notified at the same time. Alerts An alert is a definition that matches one or more SQL Server events and a response, should those events occur. In general, an administrator cannot control the occurrence of events but can control the response to those events with alerts. Alerts can be defined to respond to SQL Server events by: Notifying one or more operators. Forwarding the event to another server.

Executing a job. SQLServerAgent SQLServerAgent is a Microsoft Windows NT service that executes jobs, monitors Microsoft SQL Server, and fires alerts. SQLServerAgent is the service that allows you to automate some administrative tasks. As such, you must start the SQLServerAgent service before your local or multiserver administrative tasks can run automatically. SQL Server Agent is also supported on Windows 95/98 platforms Defining Jobs The first step in implementing a job is to define it. The primary attributes of a job are: Name Category Owner Description Job steps Schedules Notifications Job Name Every job must have a name. Job names must be unique only if they originate from the same server. For example, if SQL Server is set up to run on a target server, a locally created job and a downloaded job from a master server can share the same name. A job name can be no more than 128 characters. Job Category Job categories allow you to organize your jobs for easy filtering and grouping. For example, you can organize jobs in to categories that correspond to company departments, such as payroll, human resources, or finance. During installation, SQL Server creates these local job categories within SQL Server Agent: [Uncategorized (Local)] Database Maintenance Full-Text Jobs from MSX REPL - Alert Response REPL - Checkup REPL - Distribution REPL - Distribution Cleanup REPL - History Cleanup REPL - LogReader REPL - Merge

REPL - Snapshot REPL - Subscription Cleanup Web Assistant By default, local jobs are assigned to the [Uncategorized (Local)] job category. There is also one default master server job category: [Uncategorized (Multi-Server)]. Multiserver categories exist only on a master server. When a multiserver job is downloaded, its category is changed to Jobs from MSX at the target server. Job Owner The job owner is the individual who creates a job or for whom the job is created. By default, SQL Server Agent populates the owner information with the SQL Server login ID of the job creator. Only members of the sysadmin role can give ownership of a job to another user or can alter the attributes of a job owned by another user. Job Description A job can be run by other users on both the local and remote computers running SQL Server. By writing a description at the time a job is created, the job owner can ensure that other users will understand quickly the purpose of the job. A job description must not exceed 512 characters. Job Steps A job step is an action that the job takes on a database or a server. Every job must have at least one job step. Job steps can be operating system commands, Transact-SQL statements, Microsoft ActiveX Script, or replication tasks. Database Maintenance Plan Wizard The Database Maintenance Plan Wizard can be used to help you set up the core maintenance tasks that are necessary to ensure that your database performs well, is regularly backed up in case of system failure, and is checked for inconsistencies. The Database Maintenance Plan Wizard creates a Microsoft SQL Server job that performs these maintenance tasks automatically at scheduled intervals. The maintenance tasks that can be scheduled to run automatically are: Reorganizing the data on the data and index pages by rebuilding indexes with a new fill factor. This ensures that database pages contain an equally distributed amount of data and free space, which allows future growth to be faster. Compressing data files by removing empty database pages. Updating index statistics to ensure the query optimizer has up-to-date information regarding the distribution of data values in the tables. This allows the query optimizer to make better judgements about the best way to access data because it has more information about the data stored in the database. Although index statistics are automatically updated by SQL Server periodically, this option can force the statistics to be updated immediately. Performing internal consistency checks of the data and data pages within the database to ensure that a system or software problem has not damaged data. Backing up the database and transaction log files. Database and log backups can be retained for a specified period. This allows you to create a history of backups to be used in the event that you need to restore the database to a time earlier than the last database backup.

The results generated by the maintenance tasks can be written as a report to a text file, HTML file, or the sysdbmaintplan_history tables in the msdb database. The report can also be e-mailed to an operator. Update Data Optimization Information This table shows the options and their functions that are available in the Update Data Optimization Information dialog box. Reorganize data and index pages Cause the indexes on the tables in the database to be dropped and re-created with a new FILLFACTOR. The FILLFACTOR determines how much empty space to leave on each page in the index, thereby reserving a percentage of free space on each data page of the index to accommodate future expansion. As data is added to the table, the free space fills because the FILLFACTOR is not maintained. Reorganizing data and index pages can reestablish the free space. Reorganize pages with the original amount of free space Change free space per page percentage to Update statistics used by query optimizer. Cause the indexes on the tables in the database to be dropped and re-created with the original FILLFACTOR that was specified when the indexes were created. Cause the indexes on the tables in the database to be dropped and re-created with a new automatically calculated FILLFACTOR, thereby reserving the specified amount of free space on the index pages. The higher the percentage, the more free space is reserved on the index pages and the larger the index grows. Valid values are from 0 through 100. Cause the distribution statistics of each index created on user tables in the database to be resampled. The distribution statistics are used by Microsoft SQL Server to optimize navigation through tables during the processing of Transact-SQL statements. To build the distribution statistics automatically, SQL Server periodically samples a percentage of the data in the corresponding table for each index. This percentage is based on the number of rows in the table and the frequency of data modification. Use this option to perform an additional sampling using the specified percentage of data in the tables. Sample % of the database Generate distribution statistics by sampling the percentage of data in the tables. The higher the percentage, the more accurate the statistics, but the longer the sampling takes. If the specified value does not generate a sufficient sample, SQL Server determines an adequate sample size automatically. Valid values are from 1 through 100. Remove unused space from Remove any unused space from the database, thereby database files allowing the size of the data files to be reduced. When it grows beyond Remove unused space from the database only if the database exceeds the specified size (in MB).

Amount of free space to remain after shrink Determine the amount of unused space to remain in the database after the database is shrunk (the larger the percentage, the less the database can shrink). The value is based on the percentage of the actual data in the database. For example, a 100-MB database containing 60 MB of data and 40 MB of free space, with a free space percentage of 50 percent, would result in 60 MB of data and 30 MB of free space (because 50 percent of 60 MB is 30 MB). Only excess space in the database is eliminated. Valid values are from 0 through 100. Schedule Set the frequency that the data optimization tasks (scheduled using SQL Server Agent) are executed. The default is every Sunday at midnight. Change... Change the default schedule. Database Integrity Check This table shows the options and their functions that are available in the Database Integrity Check dialog box. Usethis Check database integrity Include indexes Attempt to repair any minor problems Exclude indexes Perform these tests before doing backups Schedule Change... Todothis Check the allocation and structural integrity of user and system tables, and indexes in the database, by running the DBCC CHECKDB Transact-SQL statement. This ensures that any integrity problems with the database are reported, thereby allowing them to be addressed later by a system administrator or database owner. Check the data and index pages in the database during the integrity tests. Attempt to correct any minor problems detected during the database integrity tests automatically. It is recommended that this option be selected. Check only the data pages in the database during integrity tests. This does not check indexes. This option executes faster than selecting Include indexes because fewer pages in the database are checked. Cause the database and/or internal data integrity tests to be executed before backing up the database or transaction log. If the integrity tests detect inconsistencies, any subsequent database or transaction log backup is not backed up. Set the frequency that the data integrity tasks (scheduled using SQL Server Agent) are executed. The default is every Sunday at midnight. Change the default schedule. Specify the Database Backup Plan This table shows the options and their functions available in the Specify the Database Backup Plan dialog box.

Usethis Todothis Back up the database as part of Cause the entire database to be backed up as part of the the maintenance plan maintenance tasks. Backing up the database is important in case of system or hardware failure (or user errors) that cause the database to be damaged in some way, thus requiring a backed-up copy to be restored. Verify the integrity of the Check that the backup set is complete and all volumes are backup on completion of the accessible by executing the RESTORE VERIFYONLY backup Transact-SQL statement. Tape Back up the database to the specified tape device. The tape device is attached to the computer containing the Microsoft SQL Server database that is being backed up. Disk Back up the database to the disk that is located on the computer containing the SQL Server database that is being backed up. See Specify Backup Disk Directory to specify the location of the database backup. Schedule Set the frequency that the database backup tasks (scheduled using SQL Server Agent) are executed. The default is every Sunday at midnight. Change... Change the default schedule. Specify Backup Disk Directory This table shows the options and their functions that are available in the Specify Backup Disk Directory dialog box. Usethis Todothis Use the default backup directory Back up the database to the \Mssql7\Backup disk directory located on the computer containing the Microsoft SQL Server database that is being backed up. Use this directory Back up the database to the specified disk directory located on the computer containing the SQL Server database that is being backed up. (...) Change the default disk directory used to back up the database. Only drives on the computer containing the SQL Server database that is being backed up can be selected. Create a subdirectory for each database Remove files older than Backup file extension Create a subdirectory under the specified disk directory containing the database backup for each database that is being backed up as part of the maintenance plan. Delete database backups automatically that are older than the specified period. A history of database backups should be maintained in the event that the database needs to be restored to a point in time earlier than the last performed backup. Retain as many backups as disk space allows and as far in the past as is necessary. Define the file name extension used for each file that contains the database backup. The default file extension is

BAK. Maintenance History This table shows the options and their functions that are available in the Maintenance History dialog box. Usethis Todothis Write history to the Write the report as rows to this table on the server upon msdb.dbo.sysdbmaintplan_history which the maintenance plan was executed. The report table on the local server contains the steps executed by the maintenance plan, including database name, activity, date, result (success or failure), and any error information. It includes one row for each activity, per database, per execution date. Write history to the server Write the report as rows to the msdb.dbo.sysdbmaintplan_history table on a remote server. Windows NT Authentication is used to connect to the remote server. The report contains the steps executed by the maintenance plan, including database name, activity, date, result (success or failure), and any error information. It includes one row for each activity, per database, per execution date. (...) Change the remote server to which the report is written. Only computers running SQL Server can be selected. Limit rows in the table to Specify the maximum number of rows in the table that represent history for this plan only. If the number of history rows in the table for this plan exceeds this value, older rows for this plan (representing the earliest recorded history) are deleted. Setting this value can prevent the table from becoming too large and filling the msdb database (if auto-grow is not permitted). The default is 10000.