Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Cover
Title Page
Copyright Page
Dedication
Contents
Foreword
Acknowledgments
Introduction
Chapter 1 SQL Server on Linux: Getting Started
Creating a Virtual Machine
Step 1. Basics: Configure Basic Settings
Step 2. Size: Choose Virtual Machine Size
Step 3. Settings: Configure Optional Features
Step 4. Summary and Purchase
Installing SQL Server
Configuring SQL Server
Intro to Unix Commands
Connecting to SQL Server
Installing Additional Components
Installing on Ubuntu
Installing on SUSE Linux Enterprise Server
Running SQL Server on Docker
Uninstalling SQL Server
Summary
Chapter 2 How SQL Server on Linux Works
The Sybase Years
SQLOS
The Industry Changes
Project Helsinki
A Virtualization Surprise
Drawbridge
Looking for a Shortcut
SQLPAL
Summary
Chapter 3 Linux for the SQL Server Professional
Getting Started
Files and Directories
Files
The Unix File System
Additional Commands
Building a Command
Permissions
Bash Shell
Services Management
Software Management
Disk Management
System Monitoring
Summary
Chapter 4 SQL Server Configuration
The mssql-conf Utility
Using Variables
Linux Settings
Kernel Settings
Transparent Huge Pages
Swap File
Last Accessed Date/Time
SQL Server Configuration
Linux Out-of-Memory Killer
tempdb Configuration
Process Affinity
Max Degree of Parallelism
Cost Threshold for Parallelism
Statistics
Trace Flag 2371
Summary
Chapter 5 SQL Server Query Tuning and Optimization
Query Performance
Query Processor Architecture
Parsing and Binding
Query Optimization
Generating Candidate Execution Plans
Assessing the Cost of Each Plan
Query Execution and Plan Caching
Execution Plans
Graphical Plans
XML Plans
Text Plans
Query Troubleshooting
sys.dm_exec_requests and sys.dm_exec_sessions
sys.dm_exec_query_stats
statement_start_offset and statement_end_offset
sql_handle and plan_handle
query_hash and plan_hash
Finding Expensive Queries
SET STATISTICS TIME / IO
Indexes
Creating Indexes
Clustered Indexes vs. Heaps
Clustered Index Key
Statistics
Creating and Updating Statistics
The New Cardinality Estimator
Cardinality Estimation Errors
Statistics Maintenance
Parameter Sniffing
Optimizing for a Typical Parameter
Optimizing on Every Execution
Using Local Variables and the OPTIMIZE FOR UNKNOWN Hint
Disabling Parameter Sniffing
Query Processor Limitations
Query Optimization Research
Break Down Complex Queries
Hints
Summary
Chapter 6 New Query Processing Features
Adaptive Query Processing
Batch Mode Adaptive Joins
Batch Mode Adaptive Memory Grant Feedback
Interleaved Execution for Multistatement Table-Value Functions
Automatic Tuning
SQL Server 2016 Service Pack 1
USE HINT Query Option
CXPACKET and CXCONSUMER Waits
Wait Statistics on Execution Plans
Recent Announcements
Summary
Chapter 7 High Availability and Disaster Recovery
SQL Server High-Availability and Disaster-Recovery Features
Always On Availability Groups
Availability Groups on Windows vs. Linux
Implementing Availability Groups
T-SQL Configuration
SQL Server Management Studio Configuration
Configuring Pacemaker on Red Hat Enterprise Linux
Configuring Pacemaker on Ubuntu
Operating an Availability Group Resource
Summary
Chapter 8 Security
Introduction to Security on SQL Server
Transparent Data Encryption
Attach or Restore a TDE Database to Another SQL Server Instance
Always Encrypted
Row-Level Security
Dynamic Data Masking
Summary
Index
← Prev
Back
Next →
← Prev
Back
Next →