Theme 1: Introduction to a Database
Servers
LO1:Describe the benefits of a database server in a given scenario;
LO2: Discuss the components of a SQL Server database;
LO3: Explain the differences between SQL Server editions;
LO4: Compare the different SQL Server licensing models using examples;
LO5:Identify suitable SQL Server documentation and troubleshooting resources for a given scenario;
LO6:Discuss the strategies used to solve problems in a SQL Server database;
LO7:Discuss the SQL Server minimum system requirements;
LO8:Explain how SQL Servers are installed
Database server
• A database server is a computer system that stores
and manages data for authorized users and
applications. It's a key component of modern
organizations' infrastructure.
How it works
Database software: A Relational Database
Management System (DBMS) is installed on the
database server.
Back-end: Stores data in tables and performs
tasks like data analysis
Client-facing services: Allows users to access,
update, or change data
Query language: Database applications respond
to a query language, which converts queries into a
format the server can read
LO: Describe the benefits of a database server in a given
scenario
Benefits
Data security: Ensures that data is secure and reliable
Data storage: Stores large amounts of data in a centralized location
Data analysis: Analyses data to help users make informed decisions
Data access: Provides quick and secure access to data
Who uses it?
Organizations
Use database servers to store, manage, and retrieve data for business
purposes
Companies
Rent database servers from third-party providers to store critical business
information
Structured Query Language (SQL)
Structured Query Language (SQL) is a widely used database
programming language MicrosoftmSQL Server (SQL Server) is a
powerful relational database management system (RDMBS), with the
primary function of storing data and providing access to client software
applications.
the database engine (which is the core component within a database
that controls data storage and access requests from client applications),
SQL Server 2012 editions bundle features from components such as
Master Data Services, Data Quality Services, Analysis Services,
Integration Services, Reporting Services, and Replication.
Although this book touches on several of these components, the primary
focus is on the features provided by the core database engine and
associated management tools—the suite of tools and utilities for
managing the SQL Server database.
LO2: Discuss the components
of a SQL Server database
• The four major components of the SQL Server
architecture are:
1. protocol layer,
2. SQLOS,
3. query processor (relational engine),
4. and storage engine
What are the components of the SQL
Server Architecture?
The four major components of the SQL Server architecture are: protocol layer,
SQLOS, query processor (relational engine), and storage engine.
Protocol Layer
• The protocol layer in SQL Server manages communication between clients
and the database engine. Utilizing the Tabular Data Stream (TDS) messaging
format, it encapsulates TDS in communication protocols like TCP/IP or
Named Pipes. TDS messages are unpacked by a command processor in the
relational engine, facilitating seamless client-server communication.
SQLOS (SQL Server Operating System)
• SQLOS acts as an abstraction layer between SQL Server, Windows, and
external components. Handling thread scheduling and memory management,
it queries Windows for CPU information to optimize thread and scheduler
creation. SQLOS dynamically manages memory resources, negotiating with
Windows through a memory broker for efficient allocations.
What are the components of the
SQL Server Architecture?
Query Processor (Relational Engine)
• The relational engine validates T-SQL statements, parses SQL
queries, and optimizes execution plans based on estimated
costs. Responsible for processing DDL and SET statements, it
formats results for clients in traditional tabular or XML format.
The Query Processor plays a crucial role in SQL Server's
performance optimization.
Storage Engine
• Interacting with the relational engine, the storage engine
manages data cache, controls concurrency, handles
transactions, and ensures data integrity. It oversees physical
files, pages, and recovery from system faults. The storage
engine collaborates with the relational engine in a timeline:
from compiling and optimizing a request to returning
processed data for the final result set
LO2: Discuss the components of a SQL
Server database
What is SQL Server?
SQL Server, developed by Microsoft, is a
relational database management system
(RDBMS) designed to store, retrieve, and
manage vast amounts of data.
It employs Structured Query Language (SQL) for
interacting with databases, making it a powerful
tool for organizations handling diverse data
requirements.
How Does it Work?
At its core, SQL Server operates using a client-
server model. The client, often an application or
user interface, sends SQL queries to the server.
The server, in turn, processes these queries,
executing operations such as data retrieval,
insertion, or modification. The SQL Server
engine manages the storage, indexing, and
transactional aspects, ensuring data integrity
and performance.
Where is it
Used?
SQL Server finds applications across
various industries, serving as the
backbone for data-driven decision-
making.
It is extensively utilized in enterprises
for managing business-critical
information, handling transactions,
and supporting analytical processes.
From finance to healthcare and
beyond, SQL Server's versatility
makes it a go-to choice for
organizations worldwide.
LO3: Explain the
differences between SQL
Server editions
Enterprise – SQL Server Enterprise edition
provides data center capabilities with high
performance, unlimited virtualization, and
several business intelligence (BI) tools.
Standard – SQL Server Standard edition
provides basic data management and business
intelligence for smaller organizations and
departments.
Web – SQL Server Web edition is suitable for
companies that are web hosters or web value
added providers (VAPs). This edition offers a low
total cost of ownership, and it provides
scalability and manageability capabilities for
small to large scale web properties.
LO3: Explain the
differences between SQL
Server editions
Microsoft has simplified its product
lineup for the SQL Server 2012
family and offers three main
editions: Standard, Business
Intelligence, and Enterprise.
In addition to the main editions,
three specialized editions are also
available: Developer, Express, and
Web.
LO3: Explain the differences
between SQL Server editions
Standard Edition—The Standard Edition includes the core database engine; basic features
1from the Analysis Services, Reporting Services, and Integration Services components; and
a suite of management tools. Each installation of the Standard Edition is limited to 16 cores
and 64 GB of memory. This edition is targeted at medium-sized deployments—for example,
smaller organizations or departments that seek an easy-to-use, reliable, and cost-effective
solution.
Business Intelligence Edition—The Business Intelligence Edition inherits all the features
and the same processor and memory limitations of the Standard Edition; in addition, it
includes advanced features from the Master Data Services, Analysis Services, and
Reporting Services components. These features make it ideally suited for organizations that
need a robust database management system with an integrated set of advanced Business
Intelligence capabilities.
Enterprise Edition—The Enterprise Edition is designed for organizations that manage large
data warehouses—databases designed for reporting and analytics—or run critical
applications. The memory and processing power of SQL Server Enterprise Edition is limited
only by the host operating system, and this edition is packaged with advanced features
from all components currently available on the 2012 version of SQL Server. The features
that distinguish the Enterprise Edition from the Business Intelligence Edition are support for
all the high-availability, scalability, and security features in the database engine plus the
advanced functionality within the Data Warehouse and Integration Services components.
Figure 1-1 shows the major components and features of the main SQL Server 2012
editions.
LO3: Explain the differences
between SQL Server editions
LO3: Explain the differences
between SQL Server editions
• Developer Edition—The Developer Edition includes all the
features and functionality offered by the Enterprise Edition;
however, use of the Developer Edition is strictly restricted to
development and testing only. The Developer Edition is the only
specialized edition that can be upgraded directly to an Enterprise
license.
• Express Edition—The Express Edition is a free, entry-level
database offering basic functionality; although memory is limited to
1 GB and database size is constrained to 10 GB, it is an economical
choice for those seeking an introduction to SQL Server or those with
limited needs for functionality and capacity.
• Web Edition—The Web Edition is targeted at hosted, Internet-
facing deployments; this edition enables an organization to leverage
the benefits of SQL Server 2012, exchanging the up-front hardware
and software costs for ongoing variable costs. Amazon Web
Services is an example of a service provider offering this option
LO3: Explain the differences
between SQL Server editions
Developer – SQL Server Developer edition
includes all the functionality of Enterprise edition,
but it's intended for development purposes only.
Express – SQL Server Express edition is a free
database and can be used for learning or for
building desktop applications. You can update
Express edition to other editions
LO4:Compare the different SQL Server
licensing models using examples
SQL Server has multiple licensing models,
including Standard Edition, Enterprise Edition, Web
Edition, Developer Edition, and Express Edition.
The best model depends on the organization's needs,
such as size, data processing requirements, and
budget
LO4:Compare the different SQL Server licensing models using examples
Microsoft has two basic licensing options that cover the main editions of SQL Server
2012. The first, core-based licensing, is based on a measure of processing power,
whereas the second, Server and Client Access License (CAL), focuses on the number of
end users with access to the system:
• Core-based licensing measures the computing power of the host server
by counting the number of processing cores. It replaces processor-based
licensing in earlier versions of SQL Server. A core is a physical unit within a
processor that reads and executes program instructions. Traditionally, a
processor was based on a single core, although multicore processors are
now commonplace. A multicore processor is a processor with more than
one core processing unit; it is able to execute multiple instruction sets in
parallel with a consequent improvement in performance. Given the
widespread adoption of multicore processors, Microsoft considers the
number of cores to be a more relevant metric to measure processing power
for SQL Server 2012. The core-based licensing model is the only model
available for the Enterprise Edition, and it might make sense for the
Standard Edition when it is impractical to count the number of users. A
license is based on a four-core minimum with one-core increments.
• Server and Client Access License (CAL) licensing is a user-centric
licensing model. Under this model, a server license is required for each SQL
Server 2012 installation and a CAL is required for each end user. With a single
CAL, each user is able to access multiple servers. This model may be
LO4:Compare the different SQL Server
licensing models using examples
LO5:Identify suitable SQL Server documentation and
troubleshooting resources for a given scenario
Availability Group
- Cluster logs
- Event logs
- System Monitor (Performance monitor logs)
- SQL Server error logs
- SQLDIAG XEL files
- AlwaysOn Health session XEL files
- System Health session XEL files
- Extended Events for AG data movement
- DMV and Catalog view snapshots for AG
LO5:Identify suitable SQL Server documentation and troubleshooting resources
for a given scenario
• - Extended Event (XEvent) trace captures batch-level
starting/completed events, errors and warnings, log
growth/shrink, lock escalation and timeout, deadlock,
login/logout
• List of actively running SQL traces and Xevents
• Snapshots of SQL DMVs that track waits/blocking and
high CPU queries
• Query Data Store info (if that is active)
Connection
• BID Trace/Driver Traces
- Network Trace
• Auth Trace
- SQL Server Error logs
• Windows Event logs
Snapshots of NETSTAT and TASKLIST
Replication
Replication
SQL Server error logs
- Replication, CDC, CT diagnostic info (SQL
DMVs/system views)
Installation/Setup
Setup Bootstrap folder with all the setup logs
Memory usage
Memory clerks DMVs or
DBCC MEMORYSTATUS
- Performance Monitor
Lo6:Discuss the strategies used to solve
problems in a SQL Server database
Problem-Solving Strategies:Pg12
Even as your skills as a database administrator develop, you will inevitably need to seek
other resources from time to time to solve a problem. Often, the first step is to discuss
the problem with a colleague, an instructor, or a friend. Describing the problem and
getting another person’s input can provide a fresh perspective. If this approach yields no
success, alternative options include the following:
Open a support case (a request for product support) with Microsoft Support—via email,
by phone, or on the Microsoft Support site (http://support.microsoft.com/ph/1044). This
option is appropriate for resolving a time-critical issue with a production database.
Use crowd-sourcing to find a solution by tapping into the online community of SQL
Server professionals through one of Microsoft’s online forums, such as SQL Server
Forums (http://social.technet.microsoft.com/Forums/en-US/category/sqlserver). Crowd-
sourcing is general term for the outsourcing of tasks to a distributed, undefined group of
people.
Although this strategy can yield results, you will have most success if you have
thoroughly researched the problem and provide a comprehensive description, including
information such as version, configuration, relevant event log and error messages, and, if
possible, an example that would enable a third party to replicate the problem. Remember
that interactions on discussion boards or other online forums should always be
professional and courteous.
Lo6:Discuss the strategies used to solve
problems in a SQL Server database
Here are some strategies for solving problems in a SQL Server database:
Optimize queries: Use indexes, stored procedures, and query optimization tools to write
efficient queries.
Find slow queries: Use dynamic management views (DMVs) to identify slow queries.
Limit indexes: Only create indexes that are necessary, as too many indexes can slow down
write operations.
Use appropriate data types: Use the correct data type for each column to improve query
return rate.
Back up data: Create backups of your data and store them in a secure, off-site location.
Install updates: Install SQL Server updates promptly to fix vulnerabilities and exploits.
Debug syntax errors: Check the SQL syntax on the failing line of your query.
Avoid SELECT DISTINCT: Use more fields to create unique results instead of using
SELECT DISTINCT.
LO7:Discuss the SQL Server minimum system
requirements/hardware
Component Requirement
Storage SQL Server requires a minimum of 6 GB of available hard drive space.
Disk space requirements vary with the SQL Server components you install. For more information, see Hard Disk Space Requirements later
in this article. For information on supported storage types for data files, see Storage Types for Data Files.
Monitor SQL Server requires Super-VGA (800x600) or higher resolution monitor.
Internet Internet functionality requires Internet access (fees can apply).
Memory 1 Minimum:
Express Editions: 512 MB
All other editions: 1 GB
Recommended:
Express Editions: 1 GB
All other editions: At least 4 GB and should be increased as database size increases to ensure optimal performance.
Processor Speed Minimum: x64 Processor: 1.4 GHz
Recommended: 2.0 GHz or faster
Processor Type x64 Processor: AMD Opteron, AMD Athlon 64, Intel Xeon with Intel EM64T support, Intel Pentium IV with EM64T support
LO7:Discuss the SQL Server minimum system
requirements/software
Component Requirement
Operating system Windows 10 1607 or greater
Windows Server 2016 or greater.
.NET Framework SQL Server 2022 (16.x) requires .NET Framework
4.7.2.
Network Software Supported operating systems for SQL Server have
built-in network software. Named and default
instances of a stand-alone installation support the
following network protocols: Shared memory,
Named Pipes, and TCP/IP.
LO8:Explain how SQL Servers are
installed
Article Description
Installation Wizard Install SQL Server using the Installation Wizard GUI launched from the setup.exe setup media.
Command Prompt Sample syntax and installation parameters for running a SQL Server installation from the command prompt.
Server Core Install SQL Server on Windows Server Core.
Check Parameters for the System Config Discusses the function of the System Configuration Checker (SCC).
uration Checker
Configuration File Sample syntax and installation parameters for running Setup through a configuration file.
SysPrep Sample syntax and installation parameters for running Setup through SysPrep.
Add Features to an Instance Update components of an existing instance of SQL Server.
SQL Server Failover Cluster Installation Install a SQL Server failover cluster instance.
Repair a Failed SQL Server Installation Repair a corrupt SQL Server installation.
Rename a computer with SQL Server Update system metadata that is stored in sys.servers after the hostname of a computer hosting a stand-alone instance of SQL
Server has been renamed.
Install SQL Server Servicing Updates Install updates for SQL Server.
Setup Log Files View and read the errors in the SQL Server setup log files.
Validate an Installation Review the use of the SQL Discovery report to verify the version of SQL Server and the SQL Server features installed on the
computer.