150

Is there any way to stop a SQL Azure DB so that it doesn't charge anything towards our account? I don't want to delete it, just while in testing and it's not being used than we set it to "stopped" like we can do with websites, cloud services, and VMs.

2
  • Why don't you use serverless? Commented Apr 19, 2021 at 9:08
  • 8
    @FrancescoMantovani Because it was released five years after this question was asked. Commented Apr 27, 2022 at 15:44

14 Answers 14

173

As of July 4th, 2023, The answer is No.

They won't allow it. So the billing will continue for your Azure Database starting the day you create it. There really is no way to pause / stop billing for your Azure SQL Database.

Official Source: feedback.azure.com Please add ability to temporarily turn off/on SQL Azure server to pause billing

Microsoft's official answer appears to be "Yes, you can export your database. Delete the Azure SQL database and that will pause billing. Then when you need it you can create a new database and import your previously expored DB."

I don't believe this is acceptable as an answer for "Allow me to temporarily turn off SQL Server to save on my billing"

enter image description here

Sign up to request clarification or add additional context in comments.

9 Comments

No. What if you are just renting a SQL Server instance, and not an entire VM? You can't "Pause" a SQL Server. That's what the connect ticket and this question is for.
Thanks for updating your answer every couple of days!
It is a shame. Thanks for your awnser, direct and clear.
Probably worth updating this as of May 2019 you now have an option for this using the 'serverless' tier of Azure SQL DB. Details here: learn.microsoft.com/en-au/azure/sql-database/…
Serverless exists as an option. When you pause a vm hosting Sql server you still pay for disk space. This matches what serverless does in sql azure.
|
28

This is not an option today - the only choice you have is to reduce the size of the Azure SQL Database which will reduce the cost from the next hour of service. If you really don't want to pay for the DB you could backup the DB to blob storage, delete the database and then restore when required. You could orchestrate this using PowerShell or similar.

Update May 2019: There is a new Azure SQL Database "Serverless" tier coming that might meet some of the requirements around reducing costs by not billing when not in use. Official documentation is available to read.

1 Comment

It looks that it is still accurate as of today. I don't see the option anywhere and Google confirms the same.
15

The Azure SQL Database team is happy to announce that there is now an option that may address your request. We just announced a "serverless" option for Azure SQL DB that will pause your database when it is not in use. You can read more about the feature here: SQL Database Serverless

4 Comments

It does not seem that the "Auto Pause" feature works. I have a Serverless Database. The "Enable auto-pause" checkbox is set and the time period is set to 1 hour. I have just got back from the long holidays and noticed that SQL Database consumed the vCores seconds all these days. No requests were made, the app which uses this DB was not active. The chart on the Overview page shows a constant CPU usage ~ 0.007%. I have no idea how to prevent it from consuming CPU while it is idle.
After additional research and this thread: stackoverflow.com/questions/57909700/… I have found out that the problem is on the application level. Sorry for a false alarm.
Be aware that the basic serverless option is more expensive (per second) than the comparable "provisioned" server, and dramatically more than the Standard and Basic options. For instance, the cheapest "serverless" option, were it to run full time, will cost $425/month. If you have a database that only needs to be online for a few minutes a month—as I do—that's fine. If you'd otherwise be using the comparable General Purpose provisioned database, but expect it to run less than 90% of the time on average, that's also fine. In other scenarios, though, it can be quite expensive.
So, for a development database, the Basic database will cost you $5/month. With the serverless database, you get eight hours for the same price. If you're not actively developing against the database, and only need it on occasion for e.g. testing a hotfix as part of sustained maintenance, that's probably fine. But if you're actively developing against it, it's going to be much more expensive than a Basic database, unless you'd otherwise need a lot of DTUs for your development database.
10

The databases get backed up automatically just before a drop. so, you can just drop it when you dont need it and restore it when needed. Restores will take some time depending on the database size and how much log you generated, so it wont be fast for large databases.

Also, there is an expiration policy on how long the backups are retained (depends on the service tier) so just watch out for that.

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

1 Comment

ironic that this article was "archived"
3

Agree with @Shiva answer. But if you are simply trying out SQL Server on an Azure VM, you would not want to incur charges by accidentally leaving it running over the weekend or weeks. One solution is to use Automatic Shutdown Feature.

enter image description here

1 Comment

this is when it is a VM, not when it is a Azure SQL Database.
3

This is now possible and the preview feature is public. Azure SQL Database serverless

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

1 Comment

The serverless option provides great flexibility and does not bill unless it is actually getting used. This is great for databases that get low usage over time. The startup time after it goes into standby is a factor to take into account however. For Developmental purposes, this is excellent however.
2

Whereas, at this low scale (scale down requirement (pause) rather than scale up), SQL running within a VM might be a better answer for you...

Comments

2

Yes you can, with Azure Serverless SQL Database. While your compute resources will be suspended when the database is not in use, you'll definitely save the costs for compute resources, however the billing will continue for storage resources. You can set the inactive timeout for the database after which the compute resources will be suspended. This timeout can be as low as 1 hour.

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

Comments

1

As is it is not supported however there are a few work arounds. It really depends upon how long you want to stop it and how immediately you want it and the size of the database. If it is for a couple hours then it may not worth it because the billing is hourly and you may have round off issues. If days then you can drop it and restore when needed. If weeks then exporting the database and importing when needed is another option. Also you may want to check backup strategy for the edition you choose before preferring export / restore. The other thing to note is the immediate need vs planned. If immediate, and the db is big then make sure the SLAs in place works for you

Comments

1

You could export the database to Azure storage and Import it when you want to re-enable it, as suggested here:

Temporarily turn off on sql

Comments

1

Here's what I did with my Azure database (4/20/19)

I scaled the database DTUs as low as possible while still reserving up to 250GB, which turns out to be 10 DTUs with an estimated cost of 1.50 per DTU (estimated at $15 per month). To me, that's almost as good as turning it off and on. I can scale it up to 100 DTUs when I want to get more processing and scale it down when I don't. Even at 100 DTUs for a whole month, the cost was only $75.93 last month on my test database.

NOTE: I am NOT using a VM to run a database, just the standard SQL server you get when you create a database in Azure.

Comments

1

Elastic Pool
If you have more than one database you can use the Elastic Pool option to bring your total cost down.

Others also mention the option to Drop your database, and rely on restore. That will also work, if you do not leave it deleted for too long...

Comments

0

As of 2024, an Azure database can be stopped and of course, you still pay for the storage. However, note that:

  • there is an automatic restart after 7 days (I think this is done for maintenance reasons)
  • if you use a lot of storage, scaling the database down to the cheapest burstable and lowest IOPs will the cost of SKU will be dwarfed by the cost of storage => you might keep it running, just scaling it down as low as possible

Comments

0

I solved this today by:

  • Clicking on the SQL database
  • Clicking Export
  • On the Export page find or set up a storage container to keep the export
  • Select the container
  • Click Ok

To find the export browse SQL Servers > (your sql server) > Import/Export history

Once the export is made I deleted the SQL database and SQL server. When I need to use them again I'll re-create them and import the schema and data.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.