Skip to content

Commit a41ffbe

Browse files
committed
Stage what's new
1 parent d6b7db6 commit a41ffbe

3 files changed

Lines changed: 80 additions & 1 deletion

File tree

docs/sql-server/index.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@ landingContent:
5151
linkLists:
5252
- linkListType: whats-new
5353
links:
54+
- text: SQL Server 2022 Preview
55+
url: ./what-s-new-in-sql-server-2022.md
5456
- text: SQL Server 2019
5557
url: ./what-s-new-in-sql-server-2019.md
5658
- text: SQL Server Big Data Clusters

docs/sql-server/t-sql/statements/create-availability-group-transact-sql.md

Whitespace-only changes.

docs/sql-server/what-s-new-in-sql-server-2022.md

Lines changed: 78 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ms.technology: release-landing
88
ms.topic: "article"
99
author: MikeRayMSFT
1010
ms.author: mikeray
11-
monikerRange: ">=sql-server-ver15"
11+
monikerRange: ">=sql-server-ver16"
1212
ms.custom:
1313
- intro-whats-new
1414
---
@@ -26,6 +26,83 @@ For the best experience with [!INCLUDE[sql-server-2022](../includes/sssql22-md.m
2626

2727
The following sections provide an overview of these features.
2828

29+
## Azure Purview integration
30+
31+
* Allow Purview policies to be applied to any SQL Server instance that is enrolled in both Azure Arc and to Azure Purview data governance
32+
33+
- Support for 3 roles:
34+
- SQL Performance Monitor
35+
- SQL Security Auditor
36+
- SQL Data Reader
37+
- Distributed Availabilit
38+
39+
40+
## Operations
41+
42+
* Accelerated database recovery performance improvement
43+
* Implements a persistent version store cleaner thread per database instead of per instance. Impreoves version cleanup when there are multiple databases on the same instance.
44+
45+
## Performance optimization
46+
47+
* Improvements to string processing for columnstore indexes
48+
* In-Memory OLTP memory management improvements
49+
* Improve memory management in large memory servers to reduce out of memory conditions
50+
* Add a new stored procedure to manually release unused memory on demand
51+
52+
* Concurrent GAM and SGAM updates allows multiple threads updating GAM and SGAM pages under S latch.
53+
* Degree of parallelism (DOP) feedback automatically adjusts degree of parallelism for repeating queries to optimize for workloads where excessive parallelism can cause performance issues. Similar to optimizations in Azure SQL Database. See [Configure the max degree of parallelism (MAXDOP) in Azure SQL Database](/azure/azure-sql/database/configure-max-degree-of-parallelism).
54+
* Multiple TCP connections for Distributed Availability Groups
55+
* Enables the use of multiple TCP connections for better network bandwidth utilization across a remote link with long tcp latencies.
56+
57+
## Language improvements
58+
59+
* Approximate Percentile - There are two new approximate percentile functions introduced.
60+
* [APPROX_PERCENTILE_CONT](../docs/approximate-percentile/APPROX_PERCENTILE_CONT.md)
61+
* [APPROX_PERCENTILE_DISC](../docs/approximate-percentile/APPROX_PERCENTILE_DISC.md)
62+
* [Auto Drop Statistics](https://github.com/microsoft/SQLEAP/blob/main/docs/auto%20drop%20statistics)
63+
64+
## Business continuity and disaster recovery
65+
66+
* Distributed availability group lossless failover
67+
* Adds distributed availability group for support for `REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT`. For more information, review [CREATE AVAILABILITY GROUP (Transact-SQL)](../t-sql/statements/create-availability-group-transact-sql.md).
68+
69+
* Improved Snapshot backup support by adding T-SQL support for freezing/thawing I/O without requiring a VDI client
70+
71+
## Access control
72+
73+
SQL Server 2022 Preview introduces new granular permissions and roles.
74+
75+
### New granular permissions
76+
77+
* `CREATE LOGIN` and `CREATE USER`
78+
* Complements the existing `ALTER ANY LOGIN` or `USER` and allows permitting only the creation of accounts but not change existing accounts
79+
80+
* `VIEW SERVER SECURITY STATE` and `VIEW DATABASE SECURITY STATE`
81+
* All dynamic management views (DMV) in SQL Server are covered by `VIEW SERVER` respectively `VIEW DATABASE STATE`. A subset of DMVs contains information about the security configuration that is not necessary to disclose to for example performance monitoring tasks but would be required to conduct a security auditing. These are covered with this new permission
82+
83+
* `VIEW SERVER PERFORMANCE STATE` and `VIEW DATABASE PERFORMANCE STATE`
84+
* All DMVs in SQL Server are covered by `VIEW SERVER` respectively `VIEW DATABASE STATE`. A subset of DMVs contains information about the security configuration that is not necessary to disclose to for example performance monitoring tasks. The remaining DMVs are covered with this new permission.
85+
* `VIEW ANY DEFINITION` and `VIEW SECURITY DEFINITION`
86+
* All catalog views in SQL Server are covered by `VIEW ANY DEFINITION` on server respectively `VIEW DEFINITION` on database. A subset of catalog views contains information about the security configuration that should be limited to a security role. These are covered with this new permission.
87+
* `VIEW ANY CRYPTOGRAPHICALLY SECURED DEFINITION` and `VIEW CRYPTOGRAPHICALLY SECURED DEFINITION` (server and database)
88+
* There are a small number of columns in catalog views that contain data that is highly sensitive and should not be disclosed to everyone who may otherwise have access to the other columns. Examples: key values and passwords. While none of these are stored anywhere in clear text within SQL Server, having even access to the encrypted or hashed value may be considered too risky to disclose. These new permissions cover access to such data.
89+
90+
### New roles
91+
92+
* `##MS_DefinitionReader##`
93+
* Holds `VIEW ANY DEFINITION`
94+
* `##MS_ServerStateManager##`
95+
* Holds `ALTER SERVER STATE`
96+
* `##MS_ServerStateReader##`
97+
* Holds `VIEW SERVER STATE`
98+
* `##MS_SecurityDefinitionReader##`
99+
* Holds `VIEW ANY SECURITY DEFINITION`
100+
* `##MS_DatabaseConnector##`
101+
* Holds `CONNECT ANY DATABASE`
102+
* Allows connect to any database on the logical server
103+
* The ideal counterpart for `##MS_ServerStateReader##,` `##MS_DefinitionReader##` and `##MS_SecurityDefinitionReader##`
104+
* `##MS_DatabaseManager##`
105+
* `##MS_LoginManager##`
29106

30107
## Setup options
31108

0 commit comments

Comments
 (0)