Mam serwer z tanim wolnym dyskiem i drogim szybkim dyskiem.
Chcę używać drogiego dysku do wszystkich rzeczy, w których ważne jest, aby był szybki, takich jak moje bazy danych.
Aby zaoszczędzić pieniądze, chcę używać wolnego dysku do wszystkiego, co nie ma większego znaczenia, czy jest szybkie czy wolne, na przykład do tworzenia kopii zapasowych.
Teraz moje pytanie brzmi: czy powinienem zainstalować mój Microsoft SQL Server na wolnym lub szybkim dysku?
(Żeby było jasne, umieszczę moje bazy danych na szybkim dysku bez względu na wszystko, więc moje pytanie dotyczy tylko lokalizacji samej instalacji)
sql-server
database-administration
database-performance
Niels Brinch
źródło
źródło
Odpowiedzi:
To rodzaj opinii, ale chciałbym umieścić pliki binarne programu SQL Server na wolnym dysku. Pliki binarne są dość powszechne na dysku systemu operacyjnego (chociaż niektórzy tego nie znoszą) lub na wolniejszym dysku.
Zdecydowanie chcesz jednak pamiętać o umieszczeniu systemowych baz danych, zwłaszcza tempdb, na szybszym dysku. W rzeczywistości często używa się tempdb.
Jest to zgodne z pomocą pary z artykułów znalazłem, że może być przydatna.
Do pomyślenia są także kopie zapasowe dziennika transakcji, a ja jestem rozdarty, ponieważ chcesz LDF na szybszym dysku i chcesz także tworzyć kopie zapasowe na innym dysku niż miejsce, w którym znajdują się bazy danych, ale byłoby lepiej, gdyby były na szybszy dysk. Musisz zadzwonić, ale prawdopodobnie wrócę do wolniejszego dysku i narzekam na to. ;)
źródło
Chciałbym odpowiedzieć na dość dobrą odpowiedź Katherine Villyard .
Zależy to nieco od zamierzonego wykorzystania bazy danych.
Jeśli spodziewasz się wielu operacji zapisu, śmiało i umieść swoje pliki
.mdf
oraz.ndf
pliki na szybszym dysku.Jeśli jednak twoja baza danych jest na ogół dość statyczna (na przykład udostępniająca treści internetowe). Zapytania nie różnią się zbytnio, istnieje duże prawdopodobieństwo, że w pamięci pojawi się duża liczba zapytań, a nawet buforowane po stronie aplikacji. W którym momencie jesteś lepiej wyłączyć za pomocą szybszego dysku dla swoich
.ldf
,tempdb
i kopii zapasowych.Podobnie, jeśli spodziewasz się wiele dużych zapytań, takich jak na
OLAP
bazie danych, jesteś lepiej przechowywania.mdf
,tempdb
na szybszym dysku. I zakładanie.ldf
wolniejszych dysków, ponieważ często nie będzie to częścią wąskiego gardła.W każdym razie nie przejmuj się umieszczaniem plików binarnych na szybkim dysku, zwykle umieszczamy je na wolnym dysku (nie w systemie, jeśli można tego uniknąć).
Ponadto, nie rozłączaj się, próbując pobrać zarówno pliki, jak
.ldf
i.mdf
pliki na szybki dysk, zazwyczaj są one oddzielane, gdy tylko jest to możliwe.Podsumowując, przejrzyj ładunek, aby zobaczyć, jakie będzie najbardziej prawdopodobne wąskie gardło.
źródło
Masz rzeczy do tyłu. Wiem, że jest to sprzeczne z intuicją, ale chcesz tworzyć kopie zapasowe (szczególnie kopie zapasowe dziennika transakcji) na szybkim dysku, a pliki mdf / ldf (z godnym uwagi wyjątkiem tempdb) na wolnym dysku.
Możesz myśleć o tym tak, jakby Sql Server przechowywał dwie reprezentacje twoich danych. Pliki MDF + LDF reprezentują bieżący stan bazy danych, a kopia zapasowa (w tym kopie zapasowe dziennika transakcji od czasu ostatniej pełnej kopii zapasowej) reprezentuje to, czego potrzebujesz, aby przywrócić aktualny stan bazy danych w przypadku awarii. Chcesz, aby te dwie reprezentacje były od siebie oddzielone, aby zdarzenie, które zniszczy jedną reprezentację, nie uszkodzi również innej reprezentacji.
Okazuje się, że wydajność SQL Server ma tendencję do zależeć na DUŻO więcej o tym, jak szybko można zapisywać pliki dzienników transakcji i ich kopie zapasowe ponad jak szybko można uzyskać dostęp do plików MDF. Oznacza to, że musisz zdecydowanie rozważyć umieszczenie kopii zapasowych na szybkim dysku (idealnie byłoby dodać do serwera mały dysk SSD, którego można użyć do plików ldf, aby nadać im szybkość, zachowując jednocześnie separację od kopii zapasowych). Niestety pozostawia to wolny dysk dla plików MDF, ale znowu: nie będzie to miało większego znaczenia, niż myślisz.
Warto zauważyć, że powyższe zakłada, że masz wystarczającą ilość pamięci RAM, że wykonujesz typowe obciążenia i że planujesz używać trybu pełnego odzyskiwania, zamiast prostego. Dodatkowo, system operacyjny i sam zainstalowany program Sql Server można umieścić na wolnym dysku, choć oczywiście prawdopodobnie chcesz tyle, ile masz miejsca na życie na szybkim dysku.
źródło
.ldf
i musisz.mdf
być oddzielony w przypadku katastrofy ... Ogólnie nie zakłada się, że użyjesz jednego z nich do odzyskiwania po awarii, po to są kopie zapasowe. Jeśli utrata danych nie jest tak bliska zeru, jak to możliwe, masz bardzo częste kopie zapasowe dziennika, nie polegasz na samym pliku dziennika.