0% found this document useful (0 votes)
100 views122 pages

Microsoft SQL Server 2008 Administration

This document provides an overview of a 3-day training course on Microsoft SQL Server Administration Using MS SQL Server 2008. The training will cover topics such as installation, managing database objects and security, backup and restore, and other administrative tasks. Each day focuses on specific modules, with labs to reinforce the material. Recommended reading and tools for administration are also outlined.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
100 views122 pages

Microsoft SQL Server 2008 Administration

This document provides an overview of a 3-day training course on Microsoft SQL Server Administration Using MS SQL Server 2008. The training will cover topics such as installation, managing database objects and security, backup and restore, and other administrative tasks. Each day focuses on specific modules, with labs to reinforce the material. Recommended reading and tools for administration are also outlined.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 122

Microsoft SQL Server

Administration Using MS SQL


Server 2008
David Henson
[email protected]
www.certifiednetworks.com
Logistics
• Class Days: 3
• Class Hours: 9-5
• Notes/Handouts
• Demos
• Class website
Recommended Reading
• Microsoft SQL Server(TM) 2005 Administrator's
Pocket Consultant
(Pro-Administrator's Pocket Consultant)
• Microsoft Press
Module 1: Overview
• Course Outline
• Lab Setup
• Definitions
• Tools
• What is SQL Server
• SQL Language Basics
• SQL Server Network Integration
Course Outline – Day 1
• Module 1: Overview
• Module 2: Installation
• Module 3: Objects and Securables
• Module 4: Security And Principals
Course Outline – Day 2
• Module 5: Backup
• Module 6: Restore
Course Outline – Day 3
• Module 7: Web and Email Integration
• Module 8: Automation and Job Scheduling
• Module 9: Transferring Data
• Module 10: Replication
Lab Setup
• Windows 2003 Server
• SQL Server 2008
– Standard, or Enterprise
• Computer Names
• IP Addresses
Definitions
• Transact SQL • SQL SMO(Formerly
• DBA DMO)
• Server • SQL Instance
• Client • Principal
• Concurrency/Locks • Securable
• Login
• User
• Role
• Database
Tools
• SQL Management Studio
• Visual Studio .Net (2005/2008)
• SQL Server Configuration Manager
• Command Prompt
– SQLCMD
– Ping, telnet, nslookup, net use
• Database Tuning Advisor
• Full-FeaturedText Editor
– Notepad++(Free)
– UltraEdit
– Textpad
• Profiler
What is SQL Server?
• Client Server Relational Database
Operating System

• Windows Service That Manages Database


Files, Security and Concurrency
SQL Language Basics
• SELECT
• INSERT
• UPDATE
• DELETE
SQL Server Network Integration
• Network oriented protocols
– TCP/IP disabled on SQL Express by default
• DNS
• Windows Domain/Active Directory
• Firewalls
Lab 1A – Tools
• In this instructor led lab, you will:
– Preview SQL Management Studio
– Preview Database Engine Tuning Advisor
– Preview Profiler
Module 2: Installation
• Software Requirements
• Hardware Requirements
• SQL Server Versions
• Licensing
• Capacity Planning
• SQL Services
• Installation
Software Requirements
• Windows Server
– 2000
– 2003 or 2008
• Windows XP (Developer)
• Windows CE
Hardware Requirements
• Install Type Dependent
– Express
• 192 MB RAM
– Standard/Enterprise
• 512MB RAM
• 450 MB Typical Install
SQL Server Versions
• DataCenter
– Hardware/Software solution
• Enterprise
• Standard
• Developer
• Workgroup
• Express
• Windows Mobile
Licensing
• Per Processor
• Per Server plus Device CALS
• Per Server plus User CALS

• SQL Server 2008 Express is free


Capacity Planning
• Drive Space
• CPU
• Memory
• I/O Subsystem
I/O Subsystem
• RAID 0, 1, 5 or 10
• Logical Drive Structure
• Physical Drive Structure

• Considerations:
– Performance
– Ease and Cost of Management
– Disaster Planning
SQL Services
• Service Names:
– SQL Server (MSSQLServer)
– SQL Server Agent (MSSQLServer)
– SQL Server Browser
• SQL Traffic director, allows Dedicated Admin Connection
(DAC)
– SQL Server Integration Services
• SQLIS.com
– SQL Server Fulltext Search
– SQL Server Analysis Services
– SQL Server Reporting Services
• Starting/Stopping
Service Accounts
• LocalSystem
• Local Account
• Domain Account

• Automatic Startup
Installation
• Options
– Server
– Instance
– Client Tools Only

• Administrative Rights
• Instances
Online Demonstration: Installing an
SQL Server instance
Module 3: Managing Objects
• Object Definition
• Creating Objects
• Altering Objects
• Dropping Objects
• MetaData
• Object Permissions
What is an Object?
• Type Of Objects:
– Table
– View
– Stored Procedure
– Trigger
– DataType
– Function (UDF)
– Index
– Constraint
Synonyms
• Allows an alias for a securable

• New CREATE SYNONYM syntax


Creating Objects
• CREATE Statement

• Example:
CREATE TABLE Customers(
CustomerID int identity,
CustomerEmail varchar(50)
)
Altering Objects
• ALTER Statement

• Example:
ALTER TABLE Customers
ADD CustomerPhone varchar(40)
Dropping Objects
• DROP Statement

• Example:
DROP TABLE Customers
Getting Metadata
• Information Schema

• Sysobjects table

• Sp_helptext
Setting Permissions
• GRANT Statement

• Example:
GRANT SELECT
ON Customers
TO Public
Lab 3A: Creating Objects
Lab 3B: Altering Objects
Module 4: Security and Principals
Surface Area Configuration
• Best practice – reduce the “surface area” exposure of
your system to minimum

• Off By Default
– Microsoft .NET Framework,
– SQL Service Broker Network Connectivity, and
– HTTP connectivity in Analysis Services
– Xp_cmdshell
– Ad Hoc Remote Query
– Database Mail
– Native XML Web Service
• See Surface Area Configuration Tool
Levels of Security
• Login – Server Level
• User – Database Level
• Object – Permissions to Access Objects

• Application Security
• Network Access
• Encryption
Windows Workgroup Model
• Distributed Accounts
– Each machine has locally maintained user
and group database
• Windows Server Not Required
Windows Domain Model
• Centralized Accounts
– Active Directory is a single source for users
and groups
• Single Sign-On
– Access all resources after logging in only
once
• Auditing
Active Directory
• Extension of the Domain Model
– Leverages DNS Name Resolution
– Better Security Protocols
– Better Fault Tolerance
– More Extensible
– Group Policy
Logins
• Types:
– Windows (Integrated)
– SQL (Standard)

• Tools
– SQL Management Studio
– Scripts
Users
• Tools:
– SQL Management Studio
– Scripts
Roles
• Role Is A Group of users
• Purpose – Ease Permission Management
• Role Types:
– Standard
– Application Role
• Tools:
– SQL Management Studio
– Scripts
Permissions
• User Defined:
– Action
– Object Access
– Object Execution

• Tools:
– SQL Management Studio
– Scripts
Lab 4A: Creating Accounts
Lab 4B: Creating Users and
Groups
Lab 4C: Permissions
Module 5: Backup
Reasons for Data Loss
• Accidental Update
• Hardware Failure
• Improper Application Design
– Transactions Not Used
• Other User Error
• Intentional Distruction
– Hackers
– Viruses
SQL Server Backup
• Online Backup
– Users can access data during backup
• Types:
– Full
– Differential
– Log
• COPY_ONLY option
– Does not disturb normal backups, truncate logs, or
reset any flags
• Use of Filegroups
Increasing Backup Performance
• Set appropriate BLOCKSIZE parameter
– -2048 good for cdrom stored backups
– With default setting, restore uses buffered io
which is more flexible and slower

• Stripe backup devices


Restricted Activities During Backup
• Modifying Database Properties
• Autogrowth
• Managing Indexes
• Nonlogged Operations
Backup Statement
• Example:

BACKUP DATABASE Lab3A


To Disk=‘c:\Lab3A.bak’
WITH INIT, BLOCKSIZE=2048
Using SQL Management Studio
Backup Options
Database Recovery Model
• Property of a database

• Options:
– Full
– Bulk_Logged
– Simple

• Affects log behavior


Backup Requirements
• System Databases:
– Master – New Logins, change password
– MSDB – Modifying or creating jobs
• User Databases:
– Whenever data loss is unacceptable
– At a rate when the cost(cash, downtime) of
restore is unacceptable
Operating A Standby Server
• Server 1-Log Backup Regularly
• Server 2-Log Restore with NoRecovery
– Server 2 Database is read-only
• Server 2-Log Restore with Recovery
– Used in case of catastrophic failure of Server1
Backup Devices
• Device = File

• Permanent object you can reference by


name

• Example:
BACKUP DATABASE Lab3A
TO DailyBackup
Tape Backup
• Must be attached locally to the SQL
Server

• Some syntax is unique to tape media

• Must be recognized by Windows Backup


as a SCSI tape device
Special Log Backups
• WITH Truncate_Only
– Clears log, no backup file is created
– Used to maintain log when no regular log backups occur

• WITH No_Truncate
– Emergency use when data file not available

• WITH COPY_ONLY (new to SQL 2005)


– Does not disturb normal backup flow or interrupt normal log
backup/restore process
– Use on an ad-hoc basis before running potentially harmful
queries
Backup Strategies
• Weekly Full Backup

• Nightly Full Backup

• Variations of above with Differential and


Log Backups
Best Practices
• Use Automation
• Test Your Backups
• Use Notification
• Use COPY_ONLY option as needed
• Understand the Business
• Keep Management Informed
Lab 5A: Backup
Module 6: Restore
Restore Safety Features
• Restore will fail(or need override) if:
– Backup file stored name does not match the
database name
– Set of database files do not match
– All necessary files are not available
Restore Database Statement
RESTORE DATABASE Lab6
FROM DISK=‘c:\Lab6.bak’
WITH RECOVERY
Restore Process
• Always backup the log first!

• Full
• Differential
• Log
• Recovery
Saving Space
• Maintain the log file
• Compress your backup files
Log Restore Options
• Stopping at a certain time

• Stopping at a named bookmark


Single Row Restore
• Use in case of accidental delete:
– Restore to a temporary location
– Enable identity inserts
– Insert necessary rows
• Intimate knowledge of data structure
required
Restoring Master
• Place server into single user mode

• Perform Restore

• Restart Server
Restoring Master with No Backup
• Rebuilm.exe utility creates brand new
master, model, msdb

• Sp_attach_db plugs data files back in


Best Practices
• Backup the log at first sign of trouble
• Periodically test a restore
• Maintain enough working space
• Avoid the need to restore
• Backup system databases as required
Lab 6A: Restore
Module 7: Web and Email
Integration
Web Technologies
• Allow connection to SQL Server through
HTTP
• Used for logging, collecting data,
reporting, data transfer and admin
functions
• Examples:
– ASP, ASP.Net, Perl, CGI, Cold Fusion, JSP,
Java
Communication Process
Benefits of web integration
• Secure worldwide access
• No client deployment
• Remote access for administrative
functions
Dangers of web access
• Misuse of data
• Data communication interception
• Hackers have a doorway to your network
SQL Injection
• Malicious users leverage web input
against SQL Server
• Examples:
– Running server level commands
– Changing the where clause…OR 1=1
– Running DDL Commands
– Reading ODBC Errors for data discovery
Protection from SQL injection
• Only use minimal priviledged account
• Pre-process all input
• Minimize direct SQL from web page by
using Stored Procs and UDFs
ASP Example
ASP.Net Example
Email Notification
• Allows asynchronous communication with SQL Server
• Numerous techniques:
– Database Mail
• New to SQL 2005
• Easy to use smtp mail provider, easy setup
– CDONTS.Newmail
• Provided as a .dll file with Windows 2000
• Com Object
– CDO.Message
• Provide with XP/Windows 2003
• Com Object
– SQLMail
• MAPI Client
• Must be setup during a full moon
– Third party objects
– .NET Framework mail objects
CDONTS Object
CDO Object
Database Mail
SQL Mail Setup
• Not recommended
• Requirements:
– MAPI compliant mail server
– MAPI client on SQL Server
– SQL Service logged in as domain account
– Domain account has mailbox available
Lab 7A: Web/Email Integration
Module 8: Automation and Job
Scheduling
Requirements
• SQLServerAgent service must be running

• Permissions on network or local resources


Automation Examples
• Nightly backup
• Nightly data transfer
• Hourly generation of web pages
• Detection of server problems:
– Log 95% full
• Backup Log
• Email Notification
Automation Components
• Job
– Collection of steps, each step performing work

• Operator
– Pointer to email account in Database Mail or SQL
Mail

• Alerts
– Connection between a detected problem and a
job/operator
Jobs
• Created with gui or with sp_add_job
• May be scheduled
• Comprised of Steps:
– Transact SQL
– Operating System Commands
– ActiveX (VBScript/Javascript)
– Other (Replication, SSIS, Analysis Services)
• Retain history
• Might have success/failure workflow
• Can target multiple servers
Defining a Job Step
Operators
• An alias to a native email address of SQL Mail or
Database Mail

• Net Send address also supported

• Operator Addresses
– Email – business hours email address
– Pager – after hours email address
– Net send

• Failsafe Operator
Defining an Operator
Alerts
• Alert types
– SQL Server Error
– SQL Server Performance Condition
– WMI Query
• Windows eventlog MUST trigger response
• Alert response is defined by admins
– Execute Job
– Send Notification
Defining An Alert
Proxies
• Allow job steps to run with a different windows
login
Lab 8A: Automation and Job
Scheduling
Module 9: Data Transfer
Data Transfer
• Movement of data between systems
• One of the most common DBA functions
Data Transfer Examples
• Nightly download of sales data from all
stores
• Quarterly catalog update for website
• Order fulfillment
– Hourly transfer of order information to
fulfillment center
– Hourly gathering of ship tracking information
• Movement of web data into accounting
system
Data Transfer Techniques
• SSIS and Import-Export Wizard
• Legacy DTS Package Support
• BCP.EXE command line utility
• Backup/Restore
• Distributed Queries
• Saving results from query analyzer
• Web Page download
• Bulk Insert Statement
• Detach/Re-attach database files
• Log Shipping
• Select/Insert
SSIS
• Import/Export Wizard

• Visual Studio Project


BCP
• Command line utility

• Examples:
Bcp northwind..products out
c:\nwind.csv –w –t, -r/n –T

Bcp “select * from products”


queryout c:\nwind.txt –c –t~ -r/n
–Usa -P
Backup/Restore
• Simply compress, then transfer the backup
file to the destination
• Clean up sysusers table after restore
Distributed queries
• Openquery/Openrowset/OpenXML
• SELECT INTO
• INSERT/SELECT

• Linked Servers
Query Analyzer
• Controlling saved results

• Output to text file

• Reading from different providers


Web page download
• Response Content type change

• Saving results to a file, then providing a


link

• Job scheduler, results come through email


Bulk Insert
Detach/Reattach database files
• On database node:
– Right click/all tasks/detach

• Clean up of sysusers not needed after re-


attachment
Lab 9A: Data Transfer
Module 10: Replication
Definitions
• Automatic transfer of data between
locations
Replication Types
• Transactional
– Only changes are copied across
– Most efficient
• Merge
– Two sources of read/write data
– Most dangerous
• Snapshot
– Data is removed, then re-created on a
schedule
Replication Models
• Central publisher/Distributer

• Central Subscriber/Multiple Publisher

• Multiple Publisher/Subscriber
Setup Tips
• Ensure box servers are logged in with a
domain account
• Ensure the domain account is an admin on
both boxes
• Ensure the domain account can map to c$
• Ensure the domain account can run
queries against the other server
Lab 13A: Replication

You might also like