Важливість розташування установки Microsoft SQL Server


10

У мене є сервер з дешевим повільним диском і дорогим швидким диском.

Я хочу використовувати дорогий диск для всіх речей, де важливо, щоб він був швидким, як-от мої бази даних.

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

Тепер моє запитання полягає в тому, чи слід встановлювати свій Microsoft SQL Server на повільний або швидкий диск?

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


3
Чому б ви навіть вважали це з огляду на те, що ssd з низькою частотою запису 120 Гб є (а) CHEAP і (b) надшвидким та (c) досить хорошим для всього розумного програм + + OS? Я перемістив усі операційні системи на 120gb ssd 2 роки тому, і вартість насправді не мала значення - на той час. Зараз це ще менш актуально.
TomTom

Ви хочете довірити критичну місію базі даних на SSD-диску? Нагадуйте мені ніколи не робити з вами справи ...
Шадур

2
@Shadur, що вогник. Так, я розміщу його на дискові з налаштованим на SSD RAID 10 диском, який реплікується на 2 інших дисках локально і створюється резервна копія вночі у віддалене місце. Ласкаво просимо в десятиліття!
Нільс Брінч

@TomTom, ти, звичайно, маєш рацію, але я в цьому випадку знаходжуся в досить затратній ситуації, тому я навіть турбуюся з таким типом гіпер-оптимізації. З кожним роком моє запитання стає все більш неактуальним, як це стосується більшості питань тут.
Нільс Брінч

@NielsBrinch Cent Smart and Pound Foolish. Серйозно.
TomTom

Відповіді:


11

Це свого роду думка, але я ставлю бінарні файли SQL Server на повільний диск. Досить звичайно розміщувати двійкові файли на диску OS (хоча деякі люди це ненавидять) або на повільнішому диску.

Ви, безумовно, хочете пам'ятати, щоб розмістити ваші системні бази даних, особливо tempdb, на більш швидкому диску. Насправді також звичайно ставити tempdb самостійно.

Це відповідає в декількох з статей я виявив , що може бути корисним для вас.

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


Дякую. Ви хочете сказати, що це не впливає помітно на продуктивність того, чи встановлено сервер sql (бінарні файли тощо) на повільний або швидкий диск?
Нільс Брінч

1
Не те, що я помітив. І це досить поширена конфігурація.
Кетрін Вільярд

6
Кетрін має рацію, бо самі бінарні файли не пов'язані між собою. Як правило, розміщення двійкових файлів на швидкому диску покращить час завантаження, але рідко впливає на загальну швидкість роботи, оскільки код працює з пам'яті. Якщо ви часто не перезапускаєте сервер, це не завадить значно мати бінарні файли на повільному зберіганні.
Корі

@Corey дякую велике за дуже точне пояснення. Це те, що я шукав.
Нільс Брінч

6

Я хотів би продовжити відповідь на досить гарну відповідь, яку вже виголосила Кетрін Вільярд .

Це дещо залежить від запланованого використання вашої бази даних.
Якщо ви очікуєте багато операцій запису, йти вперед і покласти ваші .mdfі .ndfфайли на диску швидше.

Якщо ваша база даних, як правило, є досить статичною (наприклад, розміщення веб-контенту). І запити не сильно відрізняються, швидше за все, ви отримаєте велику кількість запитів у своїй пам’яті або навіть кешовані на стороні програми. У цей момент ви краще використовувати більш швидкий диск для .ldf, tempdbі резервних копій.

Так само, якщо ви очікуєте багато великих запитів, таких як OLAPбаза даних, вам краще зберігати свій .mdf, tempdbна більш швидкому диску. І ставити .ldfна повільніші диски, оскільки це часто не буде частиною вузького місця.

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

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


3

У вас є речі назад. Я знаю, що це контр-інтуїтивно зрозуміло, але ви хочете робити резервні копії (особливо включаючи резервні копії журналу транзакцій) на швидкому диску, а також файли mdf / ldf (за винятком винятку tempdb) на повільному диску.

Ви можете думати про це так, ніби сервер Sql зберігає два представлення ваших даних. Файли MDF + LDF представляють поточний стан бази даних, тоді як резервні копії (включаючи резервні копії журналу транзакцій з останньої повної резервної копії) являють собою те, що потрібно для відновлення поточного стану бази даних у разі відмови. Ви хочете, щоб ці два подання були відокремлені один від одного, тому подія, яка знищує одне представництво, також не завдасть шкоди іншому.

Виявляється, продуктивність Sql Server має тенденцію залежати БАГАТО більш того, наскільки швидко ви можете записувати файли журналу транзакцій і їх резервні копії над тим, як швидко ви можете отримати доступ до файлів МДФ. Це означає, що вам потрібно серйозно розглянути можливість розміщення резервних копій на швидкому диску (в ідеалі ви додасте невеликий SSD на сервер, який ви можете використовувати для файлів ldf, щоб забезпечити їм швидкість, зберігаючи при цьому відрив від резервних копій). На жаль, це залишає повільний диск для ваших файлів MDF, але знову ж таки: це матиме значення не так, як ви думаєте.

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


Під резервними копіями я маю на увазі файли, які не використовуються, а просто зберігаються. Я б поклав як mdf, так і ldf-файли на швидкий диск. Для мене новина, що mdf - це нормально розміщувати на повільному диску, це було цікавою та несподіваною інформацією.
Нільс Брінч

1
Ви не хочете, щоб mdf був на тому ж диску, що і резервні копії / журнали. MDF представляє поточний стан бази даних. Резервне копіювання + LDF являють собою те, що вам потрібно для відновлення бази даних до її поточного стану. Ви хочете, щоб два уявлення були відокремлені один від одного, тому подія, яка знищує одне, також не пошкодить інше. А оскільки журнали та резервні копії мають бути на швидкому диску (продуктивність залежить набагато більше від того, наскільки швидко ви можете записати у файл ldf, ніж як швидко ви можете записати у mdf-файл), це означає, що mdf повинен перейти на повільний диск.
Joel Coel

Я збираюся відредагувати більшу частину вищевказаного коментаря у відповідь.
Джоел Коель

1
Я не впевнений , чому ви говорите , що про .ldfта .mdfнеобхідності бути розділені в разі стихійного лиха ... Це як правило , НЕ передбачається , що ви будете використовувати або один для аварійного відновлення, це те, що стояки для. Якщо ви не хочете якнайбільше 0 втрат даних, ви отримуєте надзвичайно часті резервні копії журналу, ви не покладаєтесь на сам файл журналу.
Реалізує

@Reaces Ви маєте рацію. У мене був мозок пердеть і писав файли LDF пальцями, думаючи про резервні копії TRN в моїй голові. Загальні думки дотримуються, але мені потрібно значно переглянути, щоб уточнити це (зараз над цим працюю).
Джоел Коель
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.