Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
van toepassing op:Azure SQL Database-
Migreren van een zelfbeheerde omgeving naar een PaaS zoals Azure SQL Database kan complex zijn. In dit artikel worden de belangrijkste mogelijkheden van Azure SQL Database voor individuele en pooldatabases beschreven, zodat u toepassingen beschikbaar kunt houden, presterend, veilig en tolerant kunt houden.
Kernkenmerken van Azure SQL Database zijn onder andere:
- Databasebewaking met Azure Portal
- Bedrijfscontinuïteit en herstel na noodgevallen (BCDR)
- Beveiliging en naleving
- Intelligente databasebewaking en -onderhoud
- Gegevensverplaatsing
Notitie
Microsoft Entra ID voorheen Azure Active Directory (Azure AD) werd genoemd.
Databases bewaken met behulp van Azure Portal
Zie Azure SQL Database bewaken met metrische gegevens en waarschuwingenvoor metrische gegevens en waarschuwingen van Azure Monitor, inclusief aanbevolen waarschuwingsregels. Zie het overzicht van aankoopmodellen op basis van DTU en het aankoopmodel op basis van vCore voor meer informatie over servicelagen.
U kunt waarschuwingen configureren voor de metrische prestatiegegevens. Selecteer de knop Alert toevoegen in het venster Metric. Volg de wizard om uw waarschuwing te configureren. U kunt een waarschuwing geven als de metrische gegevens een bepaalde drempelwaarde overschrijden of als de metrische waarde onder een bepaalde drempelwaarde valt.
Als u bijvoorbeeld verwacht dat de workload in uw database groeit, kunt u ervoor kiezen om een e-mailwaarschuwing te configureren wanneer uw database 80% bereikt op een van de metrische prestatiegegevens. U kunt dit als een vroege waarschuwing gebruiken om erachter te komen wanneer u mogelijk moet overschakelen naar de eerstvolgende hoogste rekenkracht.
Met de metrische prestatiegegevens kunt u ook bepalen of u een downgrade naar een lagere rekenkracht kunt uitvoeren. Houd echter rekening met workloads die pieken of fluctueren voordat u de beslissing neemt om over te stappen op een lagere rekenkracht.
Bedrijfscontinuïteit en herstel na noodgevallen (BCDR)
Met mogelijkheden voor bedrijfscontinuïteit en herstel na noodgevallen kunt u uw bedrijf voortzetten als er zich een noodgeval voordoet. De ramp kan een database-niveau gebeurtenis zijn (bijvoorbeeld iemand die per ongeluk een cruciale tabel verwijdert) of een datacenter-niveau gebeurtenis (regionale ramp, bijvoorbeeld een tsunami).
Hoe maak en beheer ik back-ups in SQL Database?
Azure SQL Database maakt automatisch een back-up van databases voor u. Het platform neemt elke week een volledige back-up, elke paar uur differentiële back-up en elke 5 minuten een logboekback-up om ervoor te zorgen dat herstel na noodgevallen efficiënt is en gegevensverlies minimaal is. De eerste volledige back-up vindt plaats zodra u een database maakt. Deze back-ups zijn voor een bepaalde periode beschikbaar, de retentieperiode, die afhankelijk is van de servicelaag die u kiest. U kunt binnen deze bewaarperiode herstellen naar een willekeurig tijdstip met behulp van de Point in Time Recovery (PITR).
Bovendien kunt u met de functie langetermijnretentieback-ups uw back-upbestanden maximaal 10 jaar bewaren en gegevens van deze back-ups op elk gewenst moment binnen die periode herstellen. Databaseback-ups worden bewaard in geografisch gerepliceerde opslag om tolerantie te bieden tegen regionale rampen. U kunt deze back-ups ook op elk gewenst moment binnen de bewaarperiode herstellen in elke Azure-regio. Zie Bedrijfscontinuïteit in Azure SQL Database voor meer informatie.
Hoe kan ik bedrijfscontinuïteit garanderen in het geval van een noodgeval of regionale ramp op datacenterniveau?
Uw databaseback-ups worden opgeslagen in geografisch gerepliceerde opslag om ervoor te zorgen dat u de back-up tijdens een regionale noodgeval kunt herstellen naar een andere Azure-regio. Dit wordt geo-herstel genoemd. Zie Geo-herstel voor Azure SQL Databasevoor meer informatie en timing van geo-herstel.
Voor bedrijfskritieke databases biedt Azure SQL Database actieve geo-replicatie, waarmee een secundaire kopie met geo-replicatie van uw oorspronkelijke database in een andere regio wordt gemaakt. Als uw database bijvoorbeeld in eerste instantie wordt gehost in de Regio VS - west en u regionale noodtolerantie wilt, maakt u een actieve geo-replica van de database in VS - west naar VS - oost. Wanneer er een ramp toeslaat in West-US, kunt u overschakelen naar de regio Oost-US.
Naast actieve geo-replicatie kunt u met failovergroepen replicatie en failover van een groep databases beheren. U kunt een failovergroep maken die meerdere databases in dezelfde of verschillende regio's bevat. Vervolgens kunt u een failover van alle databases in de failovergroep naar de secundaire regio initiëren. Zie Overzicht van failovergroepen en best practices (Azure SQL Database) voor meer informatie.
Zorg ervoor dat zoneredundantie is ingeschakeld voor de database of elastische pool om tolerantie te bereiken voor storingen in datacenters of beschikbaarheidszones.
Houd uw toepassing actief in de gaten in geval van een ramp en initieer een failover naar het secundaire systeem. U kunt maximaal vier actieve geo-replica's maken in verschillende Azure-regio's. Het wordt nog beter. U hebt ook toegang tot deze secundaire actieve geo-replica's voor alleen-lezentoegang. Dit helpt om de latentie voor een geografisch gedistribueerd toepassingsscenario te verminderen.
Hoe ziet herstel na noodgevallen eruit met SQL Database?
Configuratie en beheer van herstel na noodgevallen kan worden uitgevoerd met slechts een paar stappen in Azure SQL Database wanneer u actieve geo-replicatie of failovergroepengebruikt. U moet de toepassing en de bijbehorende database nog steeds controleren op een regionale ramp en een failover naar de secundaire regio uitvoeren om de bedrijfscontinuïteit te herstellen.
Zie Azure SQL Database Disaster Recovery 101 voor meer informatie.
Beveiliging en naleving
Beveiliging in SQL Database is beschikbaar op databaseniveau en op platformniveau. U kunt als volgt een optimale beveiliging voor uw toepassing beheren en bieden:
- Identiteits- en verificatie (SQL-verificatie en -verificatie met Microsoft Entra-id).
- Bewakingsactiviteit (Controle en bedreigingsdetectie).
- Werkelijke gegevens beveiligen (Transparent Data Encryption [TDE] en Always Encrypted).
- Toegang tot gevoelige en bevoegde gegevens beheren (beveiliging op rijniveau en dynamische gegevensmaskering).
Microsoft Defender voor Cloud biedt gecentraliseerd beveiligingsbeheer voor workloads die worden uitgevoerd in Azure, on-premises en in andere clouds. U kunt bekijken of essentiële SQL Database-beveiliging zoals Controle en Transparante gegevensversleuteling [TDE] zijn geconfigureerd voor alle resources en beleidsregels maken op basis van uw eigen vereisten.
Welke methoden voor gebruikersverificatie worden aangeboden in SQL Database?
Er worden twee verificatiemethoden aangeboden in SQL Database:
Windows-verificatie wordt niet ondersteund. Microsoft Entra ID is een gecentraliseerde service voor identiteits- en toegangsbeheer. Microsoft Entra ID biedt eenmalige aanmelding (SSO) toegang tot het personeel in uw organisatie. Dit betekent dat de referenties worden gedeeld tussen Azure-services voor eenvoudigere verificatie.
Microsoft Entra ID ondersteunt meervoudige verificatieen kan eenvoudig worden geïntegreerd met Windows Server Active Directory. Hierdoor kunnen SQL Database en Azure Synapse Analytics ook meervoudige verificatie- en gastgebruikersaccounts bieden binnen een Microsoft Entra-domein. Als u Active Directory al on-premises gebruikt, kunt u deze federeren met Microsoft Entra-id om uw directory uit te breiden naar Azure.
SQL-verificatie ondersteunt alleen gebruikersnaam en wachtwoord om gebruikers te verifiëren bij elke database op een bepaalde server.
| Als u... | SQL Database/Azure Synapse Analytics |
|---|---|
| AD gebruikt met on-premises SQL Server | Federate AD met Microsoft Entra IDen gebruik Microsoft Entra-verificatie. Met Federatie kunt u eenmalige aanmelding gebruiken. |
| Meervoudige verificatie afdwingen | Meervoudige verificatie vereisen als beleid via voorwaardelijke toegang en microsoft Entra-meervoudige verificatie gebruiken. |
| Zijn aangemeld bij Windows met uw Microsoft Entra-referenties vanuit een federatief domein | Gebruik Microsoft Entra-verificatie. |
| Zijn aangemeld bij Windows met inloggegevens van een domein dat niet is gekoppeld aan Azure | Gebruik geïntegreerde microsoft Entra-verificatie. |
| Beschikken over services in de middelste laag die verbinding moeten maken met SQL Database of Azure Synapse Analytics | Gebruik geïntegreerde microsoft Entra-verificatie. |
| Een technische vereiste hebben voor het gebruik van SQL-verificatie | SQL-verificatie gebruiken |
Hoe beperk of beheer ik connectiviteitstoegang tot mijn database?
Er zijn meerdere technieken die u kunt gebruiken om een optimale connectiviteitsorganisatie voor uw toepassing te bereiken.
- Firewallregels
- Service-eindpunten voor virtueel netwerk
- Gereserveerde IP-adressen
Firewall
Standaard zijn alle verbindingen met databases op de server niet toegestaan, behalve (optioneel) verbindingen die afkomstig zijn van andere Azure-services. Met een firewallregel kunt u alleen toegang tot uw server openen voor entiteiten (bijvoorbeeld een ontwikkelcomputer) die u goedkeurt door het IP-adres van die computer toe te staan via de firewall. Hiermee kunt u ook een bereik van IP-adressen opgeven dat u toegang tot de server wilt toestaan. Ip-adressen van ontwikkelaarscomputers in uw organisatie kunnen bijvoorbeeld tegelijk worden toegevoegd door een bereik op te geven op de pagina Firewallinstellingen.
U kunt firewallregels maken op serverniveau of op databaseniveau. IP-firewallregels op serverniveau kunnen worden gemaakt met behulp van Azure Portal of met SSMS. Zie IP-firewallregels maken in SQL Database voor meer informatie over het instellen van een firewallregel op server- en databaseniveau.
Service-eindpunten
Uw database is standaard geconfigureerd om Azure-services en -resources toegang te geven tot deze server. Dit betekent dat elke virtuele machine in Azure verbinding kan maken met uw database. Deze pogingen moeten nog steeds worden geverifieerd. Als u niet wilt dat uw database toegankelijk is voor ip-adressen van Azure, kunt u Toestaan dat Azure-services en -resources toegang krijgen tot deze server uitschakelen. Daarnaast kunt u service-eindpunten voor virtuele netwerken configureren.
Met service-eindpunten kunt u uw kritieke Azure-resources alleen beschikbaar maken voor uw eigen virtuele privénetwerk in Azure. Deze optie elimineert openbare toegang tot uw resources. Het verkeer tussen uw virtuele netwerk naar Azure blijft in het Backbone-netwerk van Azure. Zonder service-eindpunten krijgt u pakketroutering met geforceerde tunneling. Uw virtuele netwerk dwingt het internetverkeer naar uw organisatie en het Azure Service-verkeer via dezelfde route te doorlopen. Met service-eindpunten kunt u dit optimaliseren omdat de pakketten rechtstreeks van uw virtuele netwerk naar de service in het Backbone-netwerk van Azure stromen.
Gereserveerde IP-adressen
Een andere optie is om gereserveerde IP-adressen in te richten voor uw VM's en deze specifieke IP-adressen voor vm's toe te voegen in de firewallinstellingen van de server. Door gereserveerde IP-adressen toe te wijzen, hoeft u de firewallregels niet bij te werken met het wijzigen van IP-adressen.
Op welke poort maak ik verbinding met SQL Database?
SQL Database communiceert via poort 1433. Als u verbinding wilt maken vanuit een bedrijfsnetwerk, moet u een uitgaande regel toevoegen in de firewallinstellingen van uw organisatie. Vermijd als richtlijn poort 1433 buiten de Azure-grens bloot te stellen.
Hoe kan ik activiteiten op mijn server en database in SQL Database bewaken en reguleren?
SQL Database-controle
Azure SQL Database Auditing registreert databasegebeurtenissen en schrijft deze naar een auditlogboekbestand in uw Azure Storage-account. Controle is vooral handig als u van plan bent inzicht te krijgen in mogelijke schendingen van beveiliging en beleid, naleving van regelgeving te handhaven, enzovoort. Hiermee kunt u bepaalde categorieën gebeurtenissen definiëren en configureren waarvan u denkt dat u controle nodig hebt en op basis hiervan kunt u vooraf geconfigureerde rapporten en een dashboard krijgen om een overzicht te krijgen van gebeurtenissen die in uw database plaatsvinden.
U kunt dit controlebeleid toepassen op databaseniveau of op serverniveau. Schakel SQL Database-controle in voor meer informatie.
Detectie van bedreigingen
Met detectie van bedreigingen krijgt u de mogelijkheid om te reageren op beveiligings- of beleidsschendingen die zijn gedetecteerd door controle. U hoeft geen beveiligingsexpert te zijn om potentiële bedreigingen of schendingen in uw systeem aan te pakken. Detectie van bedreigingen heeft ook een aantal ingebouwde mogelijkheden, zoals SQL-injectiedetectie. Dit is een veelgebruikte manier om een databasetoepassing aan te vallen. Met detectie van bedreigingen worden meerdere sets algoritmen uitgevoerd waarmee potentiële beveiligingsproblemen en SQL-injectieaanvallen worden gedetecteerd, en afwijkende databasetoegangspatronen (zoals toegang vanaf een ongebruikelijke locatie of door een onbekende principal).
Beveiligingsfunctionarissen of andere aangewezen beheerders ontvangen een e-mailmelding als er een bedreiging wordt gedetecteerd in de database. Elke melding bevat details van de verdachte activiteiten en aanbevelingen voor het verder onderzoeken en beperken van de bedreiging. Zie Detectie van bedreigingen inschakelen voor meer informatie over het inschakelen van bedreigingsdetectie.
Hoe beveilig ik mijn gegevens in het algemeen in SQL Database?
Versleuteling biedt een sterk mechanisme voor het beveiligen en beveiligen van uw gevoelige gegevens tegen indringers. Uw versleutelde gegevens zijn niet van toepassing op de indringer zonder de ontsleutelingssleutel. Er wordt dus een extra beveiligingslaag toegevoegd boven op de bestaande beveiligingslagen die zijn gebouwd in SQL Database. Er zijn twee aspecten voor het beveiligen van uw gegevens in SQL Database:
- Uw gegevens in rusttoestand in de data- en logboekbestanden
- Uw gegevens in vlucht
In SQL Database worden uw rustende gegevens standaard in de data- en logbestanden op het opslagsubsysteem volledig en altijd versleuteld via Transparent Data Encryption [TDE].. Uw back-ups worden ook versleuteld. Met TDE zijn er geen wijzigingen vereist aan de toepassingszijde die toegang hebben tot deze gegevens. De versleuteling en ontsleuteling gebeuren transparant; vandaar de naam.
Sql Database biedt een functie met de naam Always Encrypted voor het beveiligen van uw gevoelige gegevens tijdens de vlucht en at-rest. Always Encrypted is een vorm van versleuteling aan de clientzijde waarmee gevoelige kolommen in uw database worden versleuteld (zodat ze zich in coderingstekst bevinden voor databasebeheerders en onbevoegde gebruikers). De server ontvangt de versleutelde gegevens.
De sleutel voor Always Encrypted wordt ook opgeslagen aan de clientzijde, zodat alleen geautoriseerde clients de gevoelige kolommen kunnen ontsleutelen. De server- en gegevensbeheerders kunnen de gevoelige gegevens niet zien omdat de versleutelingssleutels zijn opgeslagen op de client. Always Encrypted versleutelt gevoelige kolommen in de tabel end-to-end, van niet-geautoriseerde clients naar de fysieke schijf.
Always Encrypted ondersteunt gelijkheidsvergelijkingen, zodat DBA's versleutelde kolommen kunnen blijven doorzoeken als onderdeel van hun SQL-opdrachten. Always Encrypted kan worden gebruikt met verschillende opties voor sleutelarchief, zoals Azure Key Vault, Windows-certificaatarchief en lokale hardwarebeveiligingsmodules.
| Kenmerken | Altijd Versleuteld | Transparante gegevensversleuteling |
|---|---|---|
| versleutelingsbereik | Van begin tot eind | In rust zijnde gegevens |
| Server heeft toegang tot gevoelige gegevens | Nee | Ja, omdat versleuteling voor de stilstaande data is |
| toegestane T-SQL-bewerkingen | Gelijkheidsvergelijking | De volledige T-SQL-oppervlakte is beschikbaar. |
| app-wijzigingen die nodig zijn voor het gebruik van de functie | Minimaal | Minimaal |
| Versleutelingsgranulariteit | Kolomniveau | Databaseniveau |
Hoe kan ik de toegang tot gevoelige gegevens in mijn database beperken?
Elke toepassing bevat gevoelige gegevens in de database die moeten worden beveiligd tegen zichtbaar zijn voor iedereen. Bepaalde medewerkers binnen de organisatie moeten deze gegevens bekijken, maar anderen mogen deze gegevens niet bekijken. In dergelijke gevallen moeten uw gevoelige gegevens worden gemaskeerd of helemaal niet worden weergegeven. SQL Database biedt twee methoden om te voorkomen dat onbevoegde gebruikers gevoelige gegevens kunnen weergeven:
Dynamische gegevensmaskering is een functie voor gegevensmaskering waarmee u de blootstelling van gevoelige gegevens kunt beperken door deze te maskeren voor niet-bevoegde gebruikers op de toepassingslaag. U definieert een maskeringsregel die een maskeringspatroon kan maken (bijvoorbeeld om alleen de laatste vier cijfers van een nationale id-SSN weer te geven:
XXX-XX-0000en het grootste deel ervan te maskeren met hetXteken) en te bepalen welke gebruikers moeten worden uitgesloten van de maskeringsregel. De maskering vindt on-the-fly plaats en er zijn verschillende maskeringsfuncties beschikbaar voor verschillende gegevenscategorieën. Met dynamische gegevensmaskering kunt u automatisch gevoelige gegevens in uw database detecteren en maskering hierop toepassen.Met beveiliging op rijniveau kunt u de toegang op rijniveau beheren. Dit betekent dat bepaalde rijen in een databasetabel op basis van de gebruiker die de query uitvoert (groepslidmaatschap of uitvoeringscontext) verborgen zijn. De toegangsbeperking wordt uitgevoerd op de databaselaag in plaats van in een toepassingslaag om uw app-logica te vereenvoudigen. U begint met het maken van een filterpredicaat, het filteren van rijen die niet beschikbaar zijn en het beveiligingsbeleid vervolgens definieert wie toegang heeft tot deze rijen. Ten slotte voert de eindgebruiker de query uit en, afhankelijk van de bevoegdheid van de gebruiker, bekijken ze deze beperkte rijen of kunnen ze ze helemaal niet zien.
Hoe beheer ik versleutelingssleutels in de cloud?
Er zijn opties voor sleutelbeheer voor zowel Always Encrypted (versleuteling aan de clientzijde) als Transparante gegevensversleuteling (versleuteling at rest). Het is raadzaam om versleutelingssleutels regelmatig te roteren. De rotatiefrequentie moet overeenkomen met zowel uw interne organisatievoorschriften als nalevingsvereisten.
Transparent Data Encryption (TDE)
Er is een hiërarchie met twee sleutels in TDE: de gegevens in elke gebruikersdatabase worden versleuteld door een symmetrische AES-256 database-unieke databaseversleutelingssleutel (DEK), die op zijn beurt wordt versleuteld door een server-unieke asymmetrische RSA 2048-hoofdsleutel. De hoofdsleutel kan op de volgende manieren worden beheerd:
- Automatisch door Azure SQL Database
- Of door u Azure Key Vault als sleutelarchief te gebruiken
Standaard wordt de hoofdsleutel voor TDE beheerd door Azure SQL Database. Als uw organisatie controle wil over de hoofdsleutel, kunt u Azure Key Vault gebruiken als sleutelarchief. Door gebruik te maken van Azure Key Vault neemt uw organisatie de controle over de sleutelacceptatie, rotatie en machtigingsbeheer in eigen handen. het type TDE-hoofdsleutel draaien of overschakelen snel is, omdat de DEK alleen opnieuw wordt versleuteld. Voor organisaties met scheiding van rollen tussen beveiliging en gegevensbeheer kan een beveiligingsbeheerder het sleutelmateriaal inrichten voor de TDE-hoofdsleutel in Azure Key Vault en een Azure Key Vault-sleutel-id opgeven aan de databasebeheerder die moet worden gebruikt voor versleuteling in rust op een server. Key Vault is zodanig ontworpen dat Microsoft geen versleutelingssleutels ziet of extraheert. U krijgt ook een gecentraliseerd beheer van sleutels voor uw organisatie.
Altijd Versleuteld
Er is ook een hiërarchie met twee sleutels in Always Encrypted: een kolom met gevoelige gegevens wordt versleuteld door een AES 256-kolomversleutelingssleutel (CEK), die op zijn beurt wordt versleuteld door een kolomhoofdsleutel (CMK). De clientstuurprogramma's voor Always Encrypted hebben geen beperkingen voor de lengte van CMK's. De versleutelde waarde van de CEK wordt opgeslagen in de database en de CMK wordt opgeslagen in een vertrouwd sleutelarchief, zoals Windows Certificate Store, Azure Key Vault of een hardwarebeveiligingsmodule.
Zowel de CEK als de CMK- kunnen worden gedraaid.
CEK-rotatie is een grootte van de gegevensbewerking en kan tijdintensief zijn, afhankelijk van de grootte van de tabellen die de versleutelde kolommen bevatten. Daarom is het verstandig om CEK-rotaties dienovereenkomstig te plannen.
CMK-rotatie heeft echter geen invloed op databaseprestaties en kan worden uitgevoerd met gescheiden rollen.
In het volgende diagram ziet u de opties voor het sleutelarchief voor de kolomhoofdsleutels in Always Encrypted:
Hoe kan ik het verkeer tussen mijn organisatie en SQL Database optimaliseren en beveiligen?
Het netwerkverkeer tussen uw organisatie en SQL Database wordt over het algemeen gerouteerd via het openbare netwerk. U kunt dit pad echter optimaliseren en veiliger maken met Azure ExpressRoute. ExpressRoute breidt uw bedrijfsnetwerk uit naar het Azure-platform via een privéverbinding. Als u dit doet, gaat u niet via het openbare internet. U krijgt ook een hogere beveiliging, betrouwbaarheid en routeringsoptimalisatie die resulteert in lagere netwerklatenties en snellere snelheden dan normaal gesproken via het openbare internet. Als u van plan bent om een aanzienlijk deel van de gegevens over te brengen tussen uw organisatie en Azure, kan het gebruik van ExpressRoute kostenvoordelen opleveren. U kunt kiezen uit drie verschillende connectiviteitsmodellen voor de verbinding van uw organisatie met Azure:
Met ExpressRoute kunt u ook maximaal 2x de bandbreedtelimiet uitbarsten die u koopt zonder extra kosten. Het is ook mogelijk om connectiviteit tussen regio's te configureren met behulp van ExpressRoute. Zie ExpressRoute-partners en peeringlocaties voor een lijst met ExpressRoute-connectiviteitsproviders. In de volgende artikelen wordt Express Route gedetailleerder beschreven:
Voldoet SQL Database aan alle wettelijke vereisten en hoe helpt dat met de naleving van mijn eigen organisatie?
SQL Database voldoet aan een reeks regelgevingscomplianties. Als u de meest recente set nalevingen wilt bekijken die door SQL Database worden nageleefd, gaat u naar het Vertrouwenscentrum van Microsoft en bekijkt u de nalevingen die belangrijk zijn voor uw organisatie om te zien of SQL Database is opgenomen in de nalevende Azure-services. Hoewel SQL Database is gecertificeerd als een compatibele service, helpt het bij de naleving van de service van uw organisatie, maar wordt deze niet automatisch gegarandeerd.
Intelligente databasebewaking en -onderhoud na migratie
Zodra u uw database naar SQL Database hebt gemigreerd, moet u uw database bewaken (bijvoorbeeld controleren hoe het resourcegebruik eruitziet of DBCC-controles) en regelmatig onderhoud uitvoeren (bijvoorbeeld indexen, statistieken opnieuw bouwen of opnieuw ordenen, enzovoort). SQL Database maakt gebruik van de historische trends en vastgelegde metrische gegevens en statistieken om u proactief te helpen bij het bewaken en onderhouden van uw database, zodat uw toepassing altijd optimaal wordt uitgevoerd. In sommige gevallen kan Azure SQL Database automatisch onderhoudstaken uitvoeren, afhankelijk van uw configuratie-instelling. Er zijn drie facetten voor het bewaken van uw database in SQL Database:
- Prestatiebewaking en optimalisatie
- Optimalisatie van beveiliging
- Kostenoptimalisatie
Prestatiebewaking en optimalisatie
Met Query Performance Insights kunt u op maat gemaakte aanbevelingen krijgen voor uw databaseworkload, zodat uw toepassingen op een optimaal niveau kunnen blijven werken. U kunt deze ook zo instellen dat deze aanbevelingen automatisch worden toegepast en u hoeft geen onderhoudstaken uit te voeren. Met SQL Database Advisor kunt u automatisch aanbevelingen voor indexen implementeren op basis van uw workload. Dit wordt Automatisch afstemmen genoemd. De aanbevelingen veranderen naarmate uw toepassingsworkload verandert, zodat u de meest relevante suggesties krijgt. U krijgt ook de mogelijkheid om deze aanbevelingen handmatig te bekijken en deze naar eigen goeddunken toe te passen.
Optimalisatie van beveiliging
SQL Database biedt uitvoerbare beveiligingsaanbevelingen om uw gegevens te beschermen en bedreigingsdetectie voor het identificeren en onderzoeken van verdachte databaseactiviteiten die een mogelijke bedreiging voor de database kunnen vormen. evaluatie van beveiligingsproblemen is een databasescan- en rapportageservice waarmee u de beveiligingsstatus van uw databases op schaal kunt bewaken en beveiligingsrisico's kunt identificeren en afdrijft van een door u gedefinieerde beveiligingsbasislijn. Na elke scan wordt een aangepaste lijst met bruikbare stappen en herstelscripts verstrekt en een evaluatierapport dat kan worden gebruikt om te voldoen aan de nalevingsvereisten.
Met Microsoft Defender voor Cloud identificeert u de aanbevelingen voor beveiliging aan de hele linie en past u deze snel toe.
Kostenoptimalisatie
Het Azure SQL-platform analyseert de gebruiksgeschiedenis in de databases op een server om opties voor kostenoptimalisatie voor u te evalueren en aan te bevelen. Deze analyse duurt meestal een paar weken aan activiteit om bruikbare aanbevelingen te analyseren en op te bouwen.
Mogelijk ontvangt u bannermeldingen in uw Azure SQL-server met aanbevelingen voor kosten. Voor meer informatie, zie Elastische pools helpen bij het beheren en schalen van meerdere databases in Azure SQL Database en het plannen en beheren van kosten voor Azure SQL Database.
Hoe bewaak ik de prestaties en het resourcegebruik in SQL Database?
U kunt de prestaties en het resourcegebruik in SQL Database bewaken met behulp van de volgende methoden:
Databasetoezichthouder
Database watcher verzamelt uitgebreide workloadbewakingsgegevens om u een gedetailleerd overzicht te geven van de prestaties, configuratie en status van de database. Dashboards in de Azure portal bieden een overzicht in één oogopslag van uw Azure SQL-omgeving en een gedetailleerde weergave van elke bewaakte resource. Gegevens worden verzameld in een centraal gegevensarchief in uw Azure-abonnement. U kunt query's uitvoeren, analyseren, exporteren, verzamelde gegevens visualiseren en integreren met downstreamsystemen.
Zie de volgende artikelen voor meer informatie over database watcher:
- Azure SQL-workloads monitoren met databasebewaker (preview)
- Quickstart: Een watcher maken om Azure SQL te bewaken (preview)
- Een watcher maken en configureren (preview)
- Database Watcher-verzameling van gegevens en datasets (preview)
- Bewakingsgegevens van database-watcher analyseren (preview)
- Veelgestelde vragen over Database Watcher
Azure Portal
Azure Portal toont het gebruik van een database door de database te selecteren en de grafiek te selecteren in het deelvenster Overzicht. U kunt de grafiek wijzigen om meerdere metrische gegevens weer te geven, waaronder CPU-percentage, DTU-percentage, Data IO-percentage, Sessiepercentage en Databasegroottepercentage.
In deze grafiek kunt u ook waarschuwingen per resource configureren. Met deze waarschuwingen kunt u reageren op resourcevoorwaarden met een e-mailbericht, schrijven naar een HTTPS/HTTP-eindpunt of een actie uitvoeren. Zie Waarschuwingen maken voor Azure SQL Database en Azure Synapse Analytics met behulp van Azure Portal voor meer informatie.
Dynamische beheerweergaven
U kunt een query uitvoeren op de sys.dm_db_resource_stats dynamische beheerweergave om de geschiedenis van statistieken over resourceverbruik van het afgelopen uur en de sys.resource_stats systeemcatalogusweergave te retourneren om de geschiedenis van de afgelopen 14 dagen te retourneren.
Inzicht in queryprestaties
inzicht in queryprestaties kunt u een geschiedenis bekijken van de meestgebruikte query's en langlopende query's voor een specifieke database. U kunt query's snel identificeren TOP op basis van resourcegebruik, duur en uitvoeringsfrequentie. U kunt query's bijhouden en regressie detecteren. Voor deze functie moet Query Store- zijn ingeschakeld en actief zijn voor de database.
Ik zie prestatieproblemen: Hoe verschilt mijn SQL Database-probleemoplossingsmethodologie van SQL Server?
Een belangrijk deel van de technieken voor probleemoplossing die u zou gebruiken voor het diagnosticeren van query- en databaseprestaties, blijft hetzelfde: dezelfde database-engine zorgt voor de cloud. Met Azure SQL Database kunt u prestatieproblemen nog eenvoudiger oplossen en diagnosticeren. Het kan ook enkele van deze corrigerende acties namens u uitvoeren en in sommige gevallen proactief deze automatisch herstellen.
Uw aanpak voor het oplossen van prestatieproblemen kan aanzienlijk profiteren door intelligente functies zoals QPI (Query Performance Insight ) en Database Advisor in combinatie te gebruiken. Het verschil in methodologie verschilt dus in dat opzicht. U hoeft niet langer handmatig de essentiële details uit te slijpen die u kunnen helpen bij het oplossen van het probleem. Het platform doet het harde werk voor u. Een voorbeeld hiervan is QPI. Met QPI kunt u helemaal omlaag inzoomen op het queryniveau en de historische trends bekijken en achterhalen wanneer de query precies is teruggedraaid. De Database Advisor geeft u aanbevelingen voor dingen die u kunnen helpen bij het verbeteren van uw algehele prestaties in het algemeen, zoals ontbrekende indexen, het verwijderen van indexen, het parameteriseren van uw query's, enzovoort.
Bij het oplossen van prestatieproblemen is het belangrijk om te bepalen of dit alleen de toepassing of de database is die de prestaties van uw toepassing beïnvloedt. Vaak ligt het prestatieprobleem in de toepassingslaag. Dit kan de architectuur of het patroon voor gegevenstoegang zijn. Stel dat u een chatty-toepassing hebt die gevoelig is voor netwerklatentie. In dit geval heeft uw applicatie eronder te lijden omdat er veel korte verzoeken tussen de applicatie en de server heen en weer gaan, vooral op een overbelast netwerk, en deze heen-en-weer bewegingen stapelen zich snel op. Als u de prestaties in dit geval wilt verbeteren, kunt u Batch-query's gebruiken om de retourlatentie te verminderen en de prestaties van de toepassing te verbeteren.
Als u bovendien merkt dat de algehele prestaties van uw database afnemen, kunt u de sys.dm_db_resource_stats en sys.resource_stats dynamische beheerweergaven bewaken om inzicht te krijgen in CPU- en I/O- en geheugenverbruik. Uw prestaties kunnen worden beïnvloed als uw database is uitgehongerd van resources. Mogelijk moet u de rekenkracht en/of servicelaag wijzigen op basis van de groeiende en afnemende workloadvereisten.
Zie Uw database afstemmen voor een uitgebreide set aanbevelingen voor het afstemmen van prestatieproblemen.
Hoe zorg ik ervoor dat ik de juiste servicelaag en rekenkracht gebruik?
SQL Database biedt twee verschillende aankoopmodellen: het oudere DTU-model en het meer aanpasbare vCore-aankoopmodel. Zie VCore- en DTU-aankoopmodellen van Azure SQL Database vergelijken voor meer informatie.
U kunt uw query- en databaseresourceverbruik bewaken in beide aankoopmodellen. Zie bewaken en prestaties afstemmen voor meer informatie. Als u merkt dat uw query's/databases constant hoge activiteit vertonen, kunt u overwegen om op te schalen naar een hogere computecapaciteit. Als u de resources tijdens piekuren niet zo veel gebruikt, kunt u overwegen om omlaag te schalen vanaf de huidige rekenkracht. U kunt overwegen om Azure Automation- te gebruiken om uw SQL-databases volgens een planning te schalen.
Als u een SaaS-app-patroon of een scenario voor databaseconsolidatie hebt, kunt u overwegen om een elastische pool te gebruiken voor kostenoptimalisatie. Elastische pool is een uitstekende manier om databaseconsolidatie en kostenoptimalisatie te bereiken. Zie Pools en databases beheren voor meer informatie over het beheren van meerdere databases met behulp van een elastische pool.
Hoe vaak moet ik databaseintegriteitscontroles uitvoeren voor mijn database?
SQL Database kan bepaalde klassen gegevensbeschadiging automatisch en zonder gegevensverlies verwerken. Deze ingebouwde technieken worden door de service gebruikt wanneer de behoefte zich voordoet. Uw databaseback-ups binnen de service worden regelmatig getest door ze te herstellen en DBCC CHECKDB erop uit te voeren. Als er problemen zijn, lost SQL Database deze proactief op.
Automatisch paginaherstel wordt gebruikt voor het herstellen van pagina's die beschadigd zijn of problemen met gegevensintegriteit hebben. De databasepagina's worden altijd gecontroleerd met de standaardinstelling CHECKSUM waarmee de integriteit van de pagina wordt gecontroleerd. SQL Database bewaakt en controleert proactief de gegevensintegriteit van uw database en lost problemen op wanneer deze zich voordoen. U kunt desgewenst uw eigen integriteitscontroles uitvoeren. Zie Gegevensintegriteit in SQL Database voor meer informatie.
Gegevensverplaatsing na migratie
Hoe kan ik gegevens exporteren en importeren als BACPAC-bestanden uit SQL Database met behulp van Azure Portal?
Exporteren: U kunt uw database in Azure SQL Database exporteren als een BACPAC-bestand vanuit Azure Portal:
Importeren: U kunt gegevens ook importeren als een BACPAC-bestand in uw database in Azure SQL Database met behulp van Azure Portal:
Hoe synchroniseer ik gegevens tussen SQL Database en SQL Server?
U hebt verschillende manieren om dit te bereiken:
Data Sync: met deze functie kunt u gegevens bidirectioneel synchroniseren tussen meerdere SQL Server-databases en SQL Database. Als u wilt synchroniseren met SQL Server-databases, moet u de synchronisatieagent installeren en configureren op een lokale computer of een virtuele machine en de uitgaande TCP-poort 1433 openen.
Transactiereplicatie: Met transactiereplicatie kunt u uw gegevens vanuit een SQL Server-database synchroniseren naar Azure SQL Database met het SQL Server-exemplaar als uitgever en de Azure SQL Database als abonnee. Voorlopig wordt alleen deze installatie ondersteund. Zie Transaction Replication gebruiken voor meer informatie over het migreren van uw gegevens van een SQL Server-database naar Azure SQL met minimale downtime