An Azure relational database service.
Hi,
When Azure SQL Database Free tier database is set to: Behavior when free off limit reached: Auto-pause the database until next month, you are not allowed to change auto-pause delay. This is why you are seeing ProvisioningDisabled error when you attempted to disable auto-pause by setting delay to -1.
Full error below, for reference:
(ProvisioningDisabled) Only default value for auto pause delay is allowed for Free Limit database with auto pause exhaustion behavior
Code: ProvisioningDisabled
Message: Only default value for auto pause delay is allowed for Free Limit database with auto pause exhaustion behavior
If you change it to: Behavior when free off limit reached: Continue using database for additional charges you will be able to change auto-pause delay, however, you would not want to disable auto-pause since that would massively increase your monthly charges. Typically DTU or Provisioned tier would make more sense (while costing less).
When using Serverless tier, any time the database is Online (not Paused) you are being charged vCore seconds. Even if there are no connections to the database, you are still being charged.
If you were to disable auto-pause, and you didn't use the database at all, your free credits would be consumed in about 55.5 hours (2+ days)! 55.5 hours is best case--if you set minimum vCore to higher value and/or executed queries against the database, the credits could be consumed in less than a day.
For application/use case that expects to be able to connect to SQL Database instantly, 24x7, selecting DTU or Provisioned tier database is the appropriate choice. Alternatively, if the end users are okay with it, you can adjust your application code so that it properly handles the database being paused when connecting, waits 1 minute or so, and retries the connect.
Please let me know if you have any questions or if something I wrote above is unclear.
Thanks.
-TP