sql >> Database >  >> RDS >> Sqlserver

Redenen om te upgraden naar SQL Server 2017

Aangezien de reguliere ondersteuning voor SQL Server 2012 op 11 juli 2017 en SQL Server 2014 op 9 juli 2019 buiten de reguliere ondersteuning valt, en aangezien zowel SQL Server 2008 als SQL Server 2008 R2 op Op 9 juli 2019 heb ik een toenemend aantal klanten gehad die van plan zijn om te upgraden van deze oudere versies van SQL Server naar een modernere versie (2016 of 2017).

Overweegt u een upgrade naar een moderne versie van SQL Server, over te stappen naar SQL Server 2016 of naar SQL Server 2017? Mijn algemene advies zou zijn om in de meeste gevallen sterk de voorkeur te geven aan SQL Server 2017, tenzij je een geldige, tastbare reden hebt om dat niet te doen. Als u bijvoorbeeld software van derden heeft die expliciet niet wordt ondersteund op SQL Server 2017, kan dat een blokkering zijn (hoewel ik zou proberen hierover met uw softwareleverancier te praten).

Dus waarom zou u de voorkeur geven aan SQL Server 2017? Hier zijn een aantal redenen in verschillende categorieën.

Nieuwe engine-functies in SQL Server 2017

Hoewel veel van het ontwikkelingswerk in SQL Server 2017 was gewijd aan het maken van een versie die op verschillende Linux-distributies draait, zijn er nog een aantal handige nieuwe Engine-functies in SQL Server 2017.

Een handige nieuwe functie is Automatic Plan Correction (die is gebaseerd op de Query Store-functie die in SQL Server 2016 is geïntroduceerd). Deze functie helpt bij het detecteren en automatisch corrigeren van veel problemen met de stabiliteit van het queryplan. Mijn collega, Erin Stellato, heeft veel gedetailleerder geschreven over automatische plancorrectie en hoe het werkt in SQL Server 2017 Enterprise Edition en Azure SQL Database.

Een andere nieuwe functie is Adaptive Query Processing (AQP) (die is ingeschakeld met compatibiliteitsmodus 140), wat erg handig is voor batchmodusbewerkingen die worden gebruikt met Columnstore-indexen. AQP heeft drie componenten, waaronder Batch Mode Adaptive Memory Grant Feedback, Batch Mode Adaptive Joins en Interleaved Execution voor Multi-Statement Table Valued Functions.

Er zijn ook een aantal diagnostische en probleemoplossingsverbeteringen die het leven van een DBA veel gemakkelijker maken! Deze omvatten meerdere Showplan-verbeteringen die erg handig zijn voor het afstemmen van zoekopdrachten, samen met verschillende nieuwe DMV's die handig zijn voor diagnostische probleemoplossing. Query Store is nog efficiënter in SQL Server 2017 vergeleken met SQL Server 2016.

Er waren ook verschillende "gemeenschapsgestuurde" verbeteringen in SQL Server 2017, zoals slimme differentiële back-up, slimme transactielogboekback-up, verbeterde back-upprestaties voor kleine databases op geavanceerde servers en verbeterde tempdb-diagnose en -bewaking.

Replicatieverbeteringen

Microsoft heeft het mogelijk gemaakt om een ​​externe distributiedatabase in een Beschikbaarheidsgroep te beveiligen met SQL Server 2017 CU6. Ze hebben ook de mogelijkheid toegevoegd om transactie-agentprofielparameters dynamisch opnieuw te laden in SQL Server 2017 CU3. Dit maakt het veel gemakkelijker om uw replicatietopologie af te stemmen en te onderhouden dan in het verleden.

Microsoft-ondersteuning

Zodra een hoofdversie van SQL Server buiten de reguliere ondersteuning valt, zijn er geen servicepacks of cumulatieve updates meer. Alleen beveiligingsupdates worden uitgebracht terwijl de hoofdversie zich in Uitgebreide ondersteuning bevindt. Nadat de uitgebreide ondersteuning is beëindigd, zijn er helemaal geen updates meer, tenzij u Microsoft Premium Assurance aanschaft (die alleen beschikbaar is voor SQL Server 2008 en nieuwer).

Recent bewijs van dit beleid is het feit dat Microsoft geen Spectre/Meltdown-beveiligingspatch voor SQL Server 2005 zal uitbrengen. Zodra de Algemene Verordening Gegevensbescherming (AVG) op 25 mei 2018 van kracht wordt, zullen oudere versies van SQL Server worden in de loop van de tijd kwetsbaarder als ze uit de Microsoft-ondersteuning vallen.

SQL Server 2017 wordt ongeveer 15 maanden langer volledig ondersteund dan SQL Server 2016. Microsoft heeft een pagina met veel bronnen over het einde van de ondersteuning voor SQL Server 2008 en 2008 R2.

De einddatums van de reguliere en uitgebreide ondersteuning voor alle recente versies van SQL Server worden weergegeven in Tabel 1.

SQL Server-versie Einde van reguliere ondersteuning Einde van uitgebreide ondersteuning
SQL Server 2005 12 april 2011 12 april 2016
SQL Server 2008
SQL Server 2008 R2
8 juli 2014 9 juli 2019
SQL Server 2012 11 juli 2017 12 juli 2022
SQL Server 2014 9 juli 2019 9 juli 2024
SQL Server 2016 13 juli 2021 14 juli 2026
SQL Server 2017 11 oktober 2022 12 oktober 2027

Microsoft-servicebeleid

Microsoft SQL Server 2017 is uitgebracht op 2 oktober 2017 en tot nu toe zijn er zes cumulatieve updates voor SQL Server 2017 uitgebracht. Microsoft heeft aangenomen wat zij het "Modern Servicing Model" voor SQL Server 2017 noemen, wat betekent dat er geen Service Packs voor SQL Server 2017 of toekomstige versies zullen zijn.

In plaats daarvan zullen er gedurende het eerste jaar maandelijkse cumulatieve updates zijn en daarna driemaandelijkse cumulatieve updates voor de komende vier jaar. Dit betekent dat defecten in het eerste jaar na release veel sneller worden verholpen. SQL Server 2017 is lang genoeg uitgebracht om het als redelijk stabiel te beschouwen.

Microsoft corrigeert niet alleen specifieke defecten in cumulatieve updates, ze brengen ook nieuwe functionaliteit en andere productverbeteringen uit, die vaak gericht zijn op het verbeteren van de prestaties. Hier is de lijst met updates en verbeteringen voor SQL Server 2017, vanaf CU6.

SQL Server 2017 CU6

  • Update om partitieverwijdering te ondersteunen in queryplannen met ruimtelijke indexen in SQL Server 2016 en 2017
  • Verbetering:"geforceerd doorspoelen"-mechanisme inschakelen in SQL Server 2017 op Linux

SQL Server 2017 CU5

  • Betere parallellisme tussen query's verhindert het oplossen van problemen in SQL Server 2017
  • Verbetert de queryprestaties wanneer een geoptimaliseerd bitmapfilter wordt toegepast op een queryplan in SQL Server 2016 en 2017

SQL Server 2017 CU4

  • Verbetering:Verbetert de prestaties van SQL Server 2017 op kleinere systemen

SQL Server 2017 CU3

  • Update voegt ondersteuning toe voor MAXDOP-optie voor CREATE STATISTICS en UPDATE STATISTICS-statements in SQL Server 2017
  • Verbeter tempdb-lekdiagnose in DMV en uitgebreide gebeurtenissen in SQL Server 2017
  • Update stelt XML Showplans in staat om een ​​lijst met statistieken te leveren die worden gebruikt tijdens query-optimalisatie in SQL Server 2017
  • Update voegt uitvoeringsstatistieken van een scalaire, door de gebruiker gedefinieerde functie toe aan het Showplan XML-bestand in SQL Server 2017
  • Update voegt optimalisatierijdoelinformatie toe aan uitvoeringsplannen voor query's in SQL Server 2017
  • Update maakt PolyBase-technologie mogelijk in SQL Server 2016 en 2017
  • Update voegt CPU-time-outinstelling toe aan Resource Governor-werkgroep REQUEST_MAX_CPU_TIME_SEC in SQL Server 2017

SQL Server 2017 CU2

  • Update voor handmatige opschoningsprocedure voor het bijhouden van wijzigingen in SQL Server 2017
  • Verbetering:algemene verbeteringen aan het opschoningsproces voor het bijhouden van wijzigingen in SQL Server 2017
  • Update voegt een nieuwe uitgebreide gebeurtenis "marked_transaction_latch_trace" toe in SQL Server 2017 op Linux en Windows
  • Prestatieverbetering voor Spatial Intermediate Filter in SQL Server 2017

SQL Server 2017 CU1

  • Update om de prestaties te verbeteren voor dynamische beheerweergaven van columnstores 'column_store_row_groups' en 'dm_db_column_store_row_group_physical_stats' in SQL Server 2016 of 2017
  • Voeg de mogelijkheid toe om een ​​paar nieuwe DMV's en DMF's die in SQL Server 2017 zijn geïntroduceerd in of uit te schakelen
  • Verbetering:er is een nieuw trefwoord toegevoegd aan de CREATE- en UPDATE STATISTICS-instructies om de bemonsteringsfrequentie te behouden voor toekomstige statistische updates in SQL Server

Ook al zou je denken dat SQL Server 2017 "slechts een Linux-poort" was, er zijn in feite veel real-world verbeteringen in de kerndatabase-engine die alle platforms ten goede zullen komen. Microsoft blijft extra functionaliteit aan het product toevoegen in SQL Server 2017 Cumulatieve Updates, en SQL Server 2017 zal voor een langere periode volledig door Microsoft worden ondersteund dan SQL Server 2016.


  1. Microsoft Access Table Tips – Trucs &Richtlijnen Deel 2

  2. String -> java.util.Date -> java.sql.Date (met tijdstempel)

  3. hasMany heeft gebeld met iets dat geen instantie is van Sequelize.Model

  4. MySQL Databases vergelijken