it-swarm-eu.dev

Primární souborová skupina je plná SQL Server 2008

Mám velkou tabulku (~ 50 milionů řádků) Snažím se hromadně vložit do SQL Serveru a dostanu chybu:

Nelze přidělit místo pro objekt 'myDB' v databázi 'I 3 Stroke', protože skupina souborů 'PRIMARY' je plná. Vytvořte místo na disku odstraněním nepotřebných souborů, přetažením objektů do skupiny souborů, přidáním dalších souborů do skupiny souborů, nebo nastavení automatického růstu pro existující soubory ve skupině souborů.

V databázi je další tabulka s přibližně 25 miliony řádků. Tato databáze bude použita pouze na jednom počítači a bude navržena tak, aby těžila data, která již existují, a za žádných okolností se nikdy nezvýší nad její současnou velikost.

Jaký je nejlepší způsob řešení situace, jako je tato, aby si SQL Server nestěžoval? Záleží na řešení, že tato databáze nebude vystavena více uživatelům?

14

Následuj tyto kroky:

  1. Určete, kolik místa chcete přidat k přidělení úložiště databáze:
    1. Otevřete Průzkumník Windows
    2. Klikněte pravým tlačítkem na diskovou jednotku, na které vaše databázové soubory existují
    3. Vyberte vlastnosti
    4. Zkontrolujte, kolik volného místa na disku je k dispozici, a rozhodněte se, kolik z toho chcete pro databázi přidělit
      (Návrh: Pokud máte soubory databáze na stejném disku jako váš operační systém, nechte alespoň 20% volného místa na disku {Dílčí návrh: Nedělejte to! Znovu sestavte/migrujte svá data na svůj vlastní disk; šroubujete se na I/O.} A ponechte alespoň 8% na čistě datový disk; tato čísla jsou odhady co si myslím, že skutečné procentuální návrhy jsou. )
  2. Aktualizujte přidělení úložiště pro databázi.
    1. Otevřete SSMS
    2. Klikněte na kartu Zobrazit
    3. Vyberte "Object Explorer"
    4. Rozbalte složku "Databáze"
    5. Klepněte pravým tlačítkem myši na databázi, do které se snažíte hromadně vložit
    6. Vyberte "Vlastnosti"
    7. V oblasti „Vybrat stránku“ v levé části okna vlastností klikněte na možnost Seznam souborů
    8. Vyhledejte řádek "Databázové soubory" s "Filegroup" jako "PRIMARY"
    9. Do čísla „Počáteční velikost (MB)“ přidejte libovolný počet megabajtů, který chcete přidat do přidělení databáze
    10. Stiskněte "OK"
      ( Možná budete chtít zvážit i vaše hodnoty „Autogrowth“, když jste tady. )

Chcete dát své databázi tolik prostoru, kolik si můžete dovolit. Pokud vám dojde nedostatek místa, obdržíte tuto chybu bez automatického růstu a pokud je automatické růst zapnuté, pokaždé, když se má auto-růst, automaticky zasáhne výkon. Pokud jste jednoduše nedostatek místa na disku, pak je to vaše odpověď a potřebujete větší disk.

16
Eric J. Price

Express Edition 2014 má limit 10 GB na databázi. Pokud dojde k automatickému růstu databáze, které ukáže, že SQL Server vyvolá chybovou zprávu (nejasný?), Bez ohledu na licenční limit. Na disku může být spousta místa, ale tato zpráva se stále zobrazuje.

Náprava, pokud to design umožňuje: v rámci této licence použijte více databází.

12
RickC

Databázím často dochází nedostatek místa, když jsou v režimu úplného zotavení. Pokud neděláte transakce a manuální zálohy jsou dostatečné, můžete změnit režim obnovení na jednoduchý.

Možná bude také potřeba obnovit místo ze souboru protokolu. . . to může být vyprázdněno, ale stále využívá prostor.

Je však lepší položit tuto otázku DBA, kteří mohou nabídnout více řešení.

1
Gordon Linoff

Podle mé zkušenosti k této zprávě dochází, když primární soubor (.mdf) nemá místo pro uložení metadat databáze. Tento soubor obsahuje systémové tabulky a do něj ukládají pouze svá data.

V souboru udělejte místo a příkazy budou fungovat znovu. To je vše, užijte si to

1
FcoJavier99

Chcete-li vyřešit Primární souborová skupina je plná chyba přejděte do databáze -> Soubory -> Databázové soubory -> Souborová skupina "PRIMARY" -> Autogrowth/Maxsize a Change Filegroup Database_Name V megabajtech na 1, Kontrola maximální velikosti souboru Neomezeno, pak Ok.

0
Dimitilde