Arrêt de SQL Azure DB lorsqu'il n'est pas utilisé

95

Existe-t-il un moyen d'arrêter une base de données SQL Azure afin qu'elle ne facture rien à notre compte? Je ne veux pas le supprimer, juste pendant le test et qu'il n'est pas utilisé que nous le définissons sur "arrêté" comme nous pouvons le faire avec les sites Web, les services cloud et les machines virtuelles.

Mat
la source

Réponses:

109

Au 20 août 2020, la réponse est non.

Ils ne le permettront pas. La facturation se poursuivra donc pour votre base de données Azure à compter du jour où vous la créez. Il n'y a vraiment aucun moyen de suspendre / d'arrêter la facturation de votre base de données Azure SQL.

Source officielle: feedback.azure.com Veuillez ajouter la possibilité de désactiver / activer temporairement le serveur SQL Azure pour suspendre la facturation

La réponse officielle de Microsoft semble être "Oui, vous pouvez exporter votre base de données. Supprimez la base de données Azure SQL et cela suspendra la facturation. Ensuite, lorsque vous en avez besoin, vous pouvez créer une nouvelle base de données et importer votre base de données précédemment expirée."

Je ne pense pas que cela soit acceptable comme réponse à la question "Permettez-moi de désactiver temporairement SQL Server pour économiser sur ma facturation"

entrez la description de l'image ici

Shiva
la source
11
Non. Que faire si vous louez simplement une instance SQL Server et non une machine virtuelle entière? Vous ne pouvez pas «mettre en pause» un serveur SQL. C'est à cela que sert le ticket de connexion et cette question.
Shiva
4
Merci d'avoir mis à jour votre réponse tous les deux jours!
Zenuka
3
C'est dommage. Merci pour votre auvent, direct et clair.
Striter Alfa
1
Cela vaut probablement la peine de le mettre à jour à partir de mai 2019, vous avez maintenant une option pour cela en utilisant le niveau `` sans serveur '' d'Azure SQL DB. Détails ici: docs.microsoft.com/en-au/azure/sql-database/…
Simon W
1
Assez juste, mais aucun coût ne se produira. Lorsque vous arrêtez une machine virtuelle dans Azure, vous payez toujours le stockage pour les disques de la machine virtuelle, et il n'y a pas de fonction d'arrêt à coût nul pour Azure App Service (y compris les sites Web) car le plan App Service sous-jacent continue de vous facturer.
Simon W
26

Ce n'est pas une option aujourd'hui - le seul choix que vous avez est de réduire la taille de la base de données Azure SQL, ce qui réduira le coût de la prochaine heure de service. Si vous ne voulez vraiment pas payer pour la base de données, vous pouvez sauvegarder la base de données sur le stockage blob, supprimer la base de données, puis restaurer si nécessaire. Vous pouvez orchestrer cela à l'aide de PowerShell ou similaire.

Mise à jour de mai 2019: un nouveau niveau Azure SQL Database "sans serveur" est à venir qui pourrait répondre à certaines des exigences relatives à la réduction des coûts en ne facturant pas lorsqu'il n'est pas utilisé. La documentation officielle est disponible pour lecture .

Simon W
la source
3
Il semble que ce soit toujours exact à ce jour. Je ne vois l'option nulle part et Google confirme la même chose.
leeman24
10

Les bases de données sont sauvegardées automatiquement juste avant une suppression. Ainsi, vous pouvez simplement le déposer lorsque vous n'en avez pas besoin et le restaurer en cas de besoin. Les restaurations prendront un certain temps en fonction de la taille de la base de données et de la quantité de journal que vous avez générée, donc cela ne sera pas rapide pour les grandes bases de données.

En outre, il existe une politique d'expiration sur la durée de conservation des sauvegardes (dépend du niveau de service), alors faites attention à cela.

https://msdn.microsoft.com/en-us/library/azure/jj650016.aspx

Hari Krishna S
la source
7

L'équipe Azure SQL Database est heureuse d'annoncer qu'il existe désormais une option qui peut répondre à votre demande. Nous venons d'annoncer une option "sans serveur" pour Azure SQL DB qui mettra en pause votre base de données lorsqu'elle n'est pas utilisée. Vous pouvez en savoir plus sur la fonctionnalité ici: SQL Database Serverless

Conor Cunningham MSFT
la source
Il ne semble pas que la fonction "Auto Pause" fonctionne. J'ai une base de données sans serveur. La case à cocher «Activer la pause automatique» est activée et la période de temps est définie sur 1 heure. Je viens de rentrer de longues vacances et j'ai remarqué que SQL Database consommait les secondes vCores tous ces jours. Aucune demande n'a été effectuée, l'application qui utilise cette base de données n'était pas active. Le graphique de la page Vue d'ensemble montre une utilisation constante du processeur ~ 0,007%. Je ne sais pas comment l'empêcher de consommer du processeur lorsqu'il est inactif.
Andrew Simontsev le
Après des recherches supplémentaires et ce fil: stackoverflow.com/questions/57909700/… j'ai découvert que le problème est au niveau de l'application. Désolé pour une fausse alarme.
Andrew Simontsev le
Wow, c'est une excellente option. Beaucoup moins cher et plus rapide après le passage à cela pour ma base de données de développement. Merci!
faddison
Sachez que l'option sans serveur de base est plus chère (par seconde) que le serveur «provisionné» comparable, et considérablement plus que les options Standard et Basic . Par exemple, l'option «sans serveur» la moins chère, si elle fonctionnait à plein temps, coûtera 425 $ / mois. Si vous avez une base de données qui n'a besoin d'être en ligne que quelques minutes par mois - comme moi - c'est très bien. Si vous utilisiez autrement la base de données provisionnée à usage général comparable , mais que vous vous attendiez à ce qu'elle s'exécute moins de 90% du temps en moyenne, c'est également très bien. Dans d'autres scénarios, cependant, cela peut être assez coûteux.
Jeremy Caney
Ainsi, pour une base de données de développement, la base de données Basic vous coûtera 5 $ / mois. Avec la base de données sans serveur, vous bénéficiez de huit heures pour le même prix. Si vous ne développez pas activement par rapport à la base de données, et n'en avez besoin qu'à l'occasion, par exemple pour tester un correctif dans le cadre d'une maintenance soutenue, c'est probablement très bien. Mais si vous développez activement contre elle, cela va coûter beaucoup plus cher qu'une base de données de base, à moins que vous n'ayez autrement besoin de beaucoup de DTU pour votre base de données de développement.
Jeremy Caney
3

C'est désormais possible et la fonction de prévisualisation est publique. Azure SQL Database sans serveur

https://docs.microsoft.com/en-us/azure/sql-database/sql-database-serverless

Pwd9000
la source
L'option sans serveur offre une grande flexibilité et ne facture que si elle est réellement utilisée. C'est parfait pour les bases de données qui sont peu utilisées au fil du temps. Le temps de démarrage après sa mise en veille est cependant un facteur à prendre en compte. À des fins de développement, c'est excellent cependant.
Greg Gum le
2

Alors qu'à cette faible échelle (exigence de réduction (pause) plutôt que mise à l'échelle), SQL s'exécutant dans une machine virtuelle pourrait être une meilleure réponse pour vous ...

Simon
la source
2

D'accord avec la réponse @Shiva. Mais si vous essayez simplement SQL Server sur une machine virtuelle Azure, vous ne voudriez pas engager de frais en le laissant accidentellement fonctionner pendant le week-end ou les semaines. Une solution consiste à utiliser la fonction d'arrêt automatique .

entrez la description de l'image ici

Sami
la source
2

Vous ne pouvez pas ramener la charge à zéro, mais presque ...
Si vous essayez cette commande SQL:

alter DATABASE myDB modify (EDITION = 'Basic') 

ou

alter DATABASE myDB modify (EDITION = 'Standard', SERVICE_OBJECTIVE = 'S0', MAXSIZE = 10 gb)

alors votre coût peut descendre à quelque chose comme 5 USD par mois (selon la taille de votre base de données).
Lorsque vous revenez travailler sur votre base de données, il vous suffit d'exécuter

alter DATABASE myDB modify (EDITION = 'Standard', SERVICE_OBJECTIVE = 'S2', MAXSIZE = 10 gb)

et tout reviendra à la normale après quelques minutes.

Si vous disposez de plusieurs bases de données, vous pouvez également utiliser l'option Elastic Pool pour réduire votre coût total.

Henrik Staun Poulsen
la source
1

En l'état, il n'est pas pris en charge, mais il existe quelques solutions de contournement. Cela dépend vraiment de la durée pendant laquelle vous souhaitez l'arrêter, de la rapidité avec laquelle vous le souhaitez et de la taille de la base de données. Si c'est pour quelques heures, cela ne vaut peut-être pas la peine car la facturation est horaire et vous pouvez avoir des problèmes d'arrondi. Si des jours, vous pouvez le supprimer et le restaurer si nécessaire. Si des semaines, puis exporter la base de données et importer si nécessaire est une autre option. Vous pouvez également vérifier la stratégie de sauvegarde pour l'édition que vous choisissez avant de préférer l'exportation / la restauration. L'autre chose à noter est le besoin immédiat vs planifié. Si immédiat et que la base de données est importante, assurez-vous que les SLA en place fonctionnent pour vous

Sirisha Chamarthi
la source
1

Vous pouvez exporter la base de données vers le stockage Azure et l'importer lorsque vous souhaitez la réactiver, comme suggéré ici:

Désactiver temporairement sur SQL

noelicus
la source
0

Oui, vous pouvez, avec Azure Serverless SQL Database. Bien que vos ressources de calcul soient suspendues lorsque la base de données n'est pas utilisée, vous économiserez certainement les coûts des ressources de calcul, mais la facturation se poursuivra pour les ressources de stockage. Vous pouvez définir le délai d'inactivité de la base de données après lequel les ressources de calcul seront suspendues. Ce délai d'expiration peut être aussi bas que 1 heure.

Lisez ceci: https://azure.microsoft.com/en-in/updates/update-to-azure-sql-database-serverless-providing-even-greater-price-optimization/

Ajay Narvekar
la source
-1

Voici ce que j'ai fait avec ma base de données Azure (20/04/19)

J'ai réduit au maximum les DTU de la base de données tout en réservant jusqu'à 250 Go, ce qui se révèle être 10 DTU avec un coût estimé de 1,50 par DTU (estimé à 15 $ par mois). Pour moi, c'est presque aussi bien que de l'éteindre et de l'allumer. Je peux le mettre à l'échelle jusqu'à 100 DTU lorsque je veux obtenir plus de traitement et le réduire lorsque je ne le fais pas. Même à 100 DTU pendant un mois entier, le coût n'était que de 75,93 $ le mois dernier sur ma base de données de test.

REMARQUE: je n'utilise PAS de machine virtuelle pour exécuter une base de données, mais uniquement le serveur SQL standard que vous obtenez lorsque vous créez une base de données dans Azure.

Daniel
la source