W jaki sposób przeprowadzić kompaktowanie, (zmniejszanie rozmiaru) bazy danych SharePoint na SQL Server?
W jaki sposób przeprowadzić kompaktowanie, (zmniejszanie rozmiaru) bazy danych SharePoint na SQL Server?
To zależy od sposobu konfiguracji baz danych oraz rodzaju baz danych SharePoint (konfiguracji, zawartości, usług itp.). Podstawowa technika to użycie DBCC SHRINKFILE oraz przebudowa indeksów po wykonaniu tej operacji.
Witam Ponownie.
Temat powraca.
Baza danych SharePoint w firmie przekroczyła 160GB. Udało mi się w końcu wywalczyć w zarządzie czas na przeprowadzenie maintenance.
Podzieliłem naszego SP z jednego Site Collection na wiele w wielu, różnych bazach. Jednak nie wszystko mogę przenieść.
Rozmiar podstawowej bazy danych obecnie to 130GB. Po opróżnieniu SQL Management Studio twierdzi, że w bazie jest ponad 60GB wolnego miejsca.
Przeprowadziłem przy pomocy Maintenance planu:
1. Check Database Integrity.
2. Shrink Database.
3. Reorganize Index.
4. Rebuild Index.
5. Update Statistics.
Niestety po zakończeniu działania planu rozmiar bazy się nie zmienił, za to Available Space spadło do 55GB.
Próbowałem również przeprowadzić sam Shrink z Tasks -> Shrink -> Files.
Również bezskutecznie.
Proszę o pomoc.
Proszę sprawdzić jaki model odzyskiwania danych (recovery model) został zastosowany w SQL Server. Jeżeli w tej chwili jest Full Recovery, to proponuję zmienić na Simple. Poniżej link do artykułu w MSDN opisujący procedurę:
https://msdn.microsoft.com/pl-pl/library/ms189272(v=sql.110).aspx
Dziękuję za szybką odpowiedź.
Recovery model mamy Simple...
Czy o to chodzi?
Shrink Database (localhost\sharepoint). Shrink Database on Local server connection. Databases: WSS_Content_REC. Limit: 50 MB. Free space: 10 %. Task start: 2016-01-30T21:44:33. Task end: 2016-01-30T21:44:39. Success. Command:USE [WSS_Content_REC]. GO. DBCC SHRINKDATABASE(N''WSS_Content_REC'', 10, TRUNCATEONLY).
Tak, dokładnie o ten wpis chodziło. Proszę zwrócić uwagę na polecenie DBCC SHRINKDATABASE, a dokładniej na użycie opcji TRUNCATEONLY. Użycie tej opcji powoduje zwolnienie nieużywanego miejsca jedynie z końca pliku, czyli poza ostatnim zaalokowanym ekstentem.
Aby zwolnić pozostałe miejsce (pamiętając o wcześniejszych uwagach) polecenie powinno wyglądać następująco:
DBCC SHRINKDATABASE(N''WSS_Content_REC'', 10)
Drobna uwaga:
3. Reorganize Index.
4. Rebuild Index.
5. Update Statistics.
Zamiast tych trzech działań, wystarczy samo Rebuild Index, bo ono fizycznie porządkuje wszystkie poziomy indeksu, usuwa zbędne miejsce i odnawia statystyki.
Dziękuję za Panów odpowiedzi/podpowiedzi.
Co zmienić w maintenance plan, żeby wykonało się polecenie DBCC SHRINKDATABASE(N
''
WSS_Content_REC
''
, 10)
zamiast DBCC SHRINKDATABASE(N''WSS_Content_REC'', 10, TRUNCATEONLY).