Зупинка SQL Azure DB, коли вона не використовується


98

Чи є спосіб зупинити SQL Azure DB, щоб вона нічого не брала з нашого облікового запису? Я не хочу видаляти його, просто під час тестування, і він не використовується, ніж ми встановили його як "зупинений", як ми можемо робити з веб-сайтами, хмарними службами та віртуальними машинами.

Відповіді:


116

Станом на 10 жовтня 2020 р. Відповідь - Ні.

Вони не дозволять. Отже, виставлення рахунків для бази даних Azure триватиме з дня створення. Насправді немає можливості призупинити / зупинити виставлення рахунків для бази даних Azure SQL.

Офіційне джерело: feedback.azure.com Будь ласка, додайте можливість тимчасово вимикати / вмикати сервер SQL Azure, щоб призупинити виставлення рахунків

Офіційна відповідь корпорації Майкрософт: "Так, ви можете експортувати свою базу даних. Видаліть базу даних SQL Azure, і це призведе до призупинення виставлення рахунків. Потім, коли вона вам буде потрібна, ви зможете створити нову базу даних та імпортувати раніше експортовану БД."

Я не вважаю, що це прийнятно як відповідь на "Дозволити мені тимчасово вимкнути SQL Server, щоб заощадити на моїх рахунках"

введіть тут опис зображення


11
Ні. Що робити, якщо ви просто орендуєте екземпляр SQL Server, а не всю віртуальну машину? Ви не можете "призупинити" SQL Server. Ось для чого потрібен квиток на підключення і це питання.
Шива

4
Дякуємо, що оновлювали свою відповідь кожні кілька днів!
Зенука

3
Це ганьба. Дякую за ваш awnser, прямий та зрозумілий.
Striter Alfa

1
Ймовірно, варто оновити це станом на травень 2019 року, і тепер у вас є така можливість, використовуючи `` безсерверний '' рівень Azure SQL DB. Детальніше тут: docs.microsoft.com/en-au/azure/sql-database/…
Саймон В

1
Досить справедливо, але нульових витрат не відбудеться. Коли ви зупиняєте віртуальну машину в Azure, ви все ще платите за зберігання дисків віртуальної машини, а функція зупинки нульових витрат для служби додатків Azure (включаючи веб-сайти) не підтримує, оскільки базовий план служби додатків продовжує виставляти вам рахунки.
Саймон Ш

26

Сьогодні це не варіант - єдиний вибір, який ви маєте, - це зменшити розмір бази даних Azure SQL, що зменшить вартість з наступної години обслуговування. Якщо ви дійсно не хочете платити за БД, ви можете зробити резервну копію БД для зберігання BLOB-об'єктів, видалити базу даних, а потім відновити за необхідності. Ви можете організувати це за допомогою PowerShell або подібного.

Оновлення в травні 2019 року: з'являється новий рівень "Безсерверний" бази даних Azure SQL, який може відповідати деяким вимогам щодо зменшення витрат, не виставляючи рахунки, коли не використовується. Офіційну документацію можна прочитати .


3
Схоже, на сьогодні це все ще точно. Я ніде не бачу опції, і Google підтверджує те саме.
leeman24

10

Резервне копіювання баз даних здійснюється автоматично перед падінням. отже, ви можете просто скинути його, коли вам це не потрібно, і відновити за потреби. Відновлення займе деякий час, залежно від розміру бази даних та кількості створеного журналу, тому для великих баз даних це не буде швидко.

Крім того, існує політика щодо закінчення терміну дії резервного копіювання (залежить від рівня обслуговування), тому просто стежте за цим.

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


7

Команда бази даних Azure SQL рада повідомити, що зараз існує варіант, який може відповісти на ваш запит. Щойно ми оголосили "безсерверний" варіант для Azure SQL DB, який призупинить базу даних, коли вона не використовується. Детальніше про цю функцію можна прочитати тут: База даних SQL Serverless


Здається, функція "Автоматична пауза" не працює. У мене є безсерверна база даних. Установлено прапорець "Увімкнути автоматичну паузу", а часовий проміжок - 1 годину. Я щойно повернувся з довгих свят і помітив, що база даних SQL споживала секунди vCores усі ці дні. Запитів не надходило, програма, яка використовує цю БД, не була активною. Діаграма на сторінці Огляд показує постійне використання процесора ~ 0,007%. Я не уявляю, як запобігти його споживанню центрального процесора, коли він не працює.
Андрій Симонцев

Після додаткових досліджень та цієї теми: stackoverflow.com/questions/57909700/… Я з’ясував, що проблема на рівні програми. Вибачте за помилковий сигнал тривоги.
Андрій Симонцев

Ого, це чудовий варіант. Набагато дешевше і швидше після переходу на це для моєї бази розробок. Дякую!
faddison

Майте на увазі, що основний безсерверний варіант дорожчий (на секунду), ніж порівнянний "забезпечений" сервер, і значно більше, ніж стандартний та базовий параметри. Наприклад, найдешевший "безсерверний" варіант, якби він працював повний робочий день, коштував би 425 доларів на місяць. Якщо у вас є база даних, яка повинна бути в мережі лише кілька хвилин на місяць - як і я, - це нормально. Якщо ви в іншому випадку використовували б порівняльну базу даних загального призначення , але очікуєте, що вона працюватиме в середньому менше 90% часу, це теж добре. Однак в інших сценаріях це може бути досить дорого.
Джеремі Кейні

Таким чином, для розробки баз даних, то Базова база даних буде коштувати $ 5 / місяць. За допомогою безсерверної бази даних ви отримуєте вісім годин за ту саму ціну. Якщо ви не активно розробляєте базу даних і вам потрібна лише час від часу, наприклад, для тестування виправлення як частини постійного обслуговування, це, мабуть, добре. Але якщо ви активно розвиваєтеся проти нього, це буде набагато дорожче базової бази даних, якщо тільки вам не знадобиться багато DTU для вашої бази даних розробки.
Джеремі Кейні,

3

Тепер це можливо, і функція попереднього перегляду є загальнодоступною. База даних SQL Azure без серверів

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


Безсерверний варіант забезпечує велику гнучкість і не виставляє рахунки, якщо він фактично не звик. Це чудово підходить для баз даних, які з часом мало використовуються. Однак час запуску після переходу в режим очікування є фактором, який слід враховувати. Однак для цілей розвитку це чудово.
Грег Гам

2

Тоді як при такому низькому масштабі (вимога до зменшення масштабу (пауза), а не збільшення), SQL, який працює у віртуальній машині, може бути кращою відповіддю для вас ...


2

Погодьтеся з відповіддю @Shiva. Але якщо ви просто випробовуєте SQL Server на віртуальній машині Azure, ви не хочете стягувати плату, випадково залишаючи його запущеним протягом вихідних або тижнів. Одним із рішень є використання функції автоматичного відключення .

введіть тут опис зображення


2

Ви не можете отримати заряд до нуля, але майже ...
Якщо ви спробуєте цю команду SQL:

alter DATABASE myDB modify (EDITION = 'Basic') 

або

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

тоді ваша вартість може знизитися до приблизно 5 USD на місяць (залежно від розміру вашої бази даних).
Коли ви повернетесь до роботи над своєю базою даних, вам просто потрібно запустити

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

і через кілька хвилин все прийде в норму .

Якщо у вас більше однієї бази даних, ви можете скористатися опцією Elastic Pool, щоб знизити загальну вартість.


1

Оскільки це не підтримується, проте є кілька методів роботи. Це насправді залежить від того, як довго ви хочете його зупинити і як негайно ви цього хочете, і від розміру бази даних. Якщо це протягом декількох годин, це може не коштувати, оскільки виставлення рахунків відбувається щогодини, і у вас можуть бути округлі проблеми. Якщо днів, то ви можете кинути його та відновити, коли це потрібно. Якщо тижнів, то інший варіант - експорт бази даних та імпорт за необхідності. Також ви можете перевірити стратегію резервного копіювання для вибраного вами видання, перш ніж віддавати перевагу експорту / відновлення. Інше, на що слід звернути увагу, - це безпосередня потреба проти запланованого. Якщо це негайно, і значення db велике, переконайтесь, що SLA на місці працює для вас



0

Так, можна за допомогою безсерверної бази даних SQL Azure. Хоча ваші обчислювальні ресурси будуть призупинені, коли база даних не використовується, ви однозначно заощадите витрати на обчислювальні ресурси, проте виставлення рахунків для ресурсів зберігання буде продовжено. Ви можете встановити неактивний час очікування для бази даних, після чого обчислювальні ресурси будуть призупинені. Цей тайм-аут може становити лише 1 годину.

Прочитайте це: https://azure.microsoft.com/en-in/updates/update-to-azure-sql-database-serverless-providing-even-greater-price-optimization/


-1

Ось що я зробив зі своєю базою даних Azure (20.04.19)

Я масштабував DTU бази даних якнайнижче, при цьому резервуючи до 250 Гб, що виявляється 10 DTU з орієнтовною вартістю 1,50 за DTU (оцінюється в 15 доларів на місяць). Для мене це майже так само добре, як вимкнення та ввімкнення. Я можу масштабувати його до 100 DTU, коли хочу отримати більше обробки, і зменшувати, коли цього не роблю. Навіть при 100 DTU протягом цілого місяця, вартість склала лише 75,93 доларів США минулого місяця в моїй тестовій базі даних.

ПРИМІТКА. Я НЕ використовую віртуальну машину для запуску бази даних, а лише стандартний сервер SQL, який ви отримуєте при створенні бази даних в Azure.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.