W SQL Server 2017 (CU3), ilekroć włączę kompresję kopii zapasowej w jednej z moich baz danych TDE, proces tworzenia kopii zapasowej zawsze uszkadza określoną stronę w bazie danych. Jeśli uruchomię kopię zapasową bez kompresji, nie zostanie ona uszkodzona. Oto kroki, które podjąłem, aby zweryfikować i odtworzyć ten problem: Uruchom DBCC …
Trenuję, a jeden ze skryptów ma następującą komendę: SELECT SUM(Col2) FROM clust_table WHERE Col1 % 3 = 1 Chciałbym wiedzieć, do czego służy ten fragment w klauzuli WHERE: Col1 % 3 = 1 Przeprowadziłem badania w Internecie i nie znalazłem żadnych odniesień do tego polecenia.
Plany CACHESTORE_SQLCP Sql zajmują> 38 GB po kilku dniach. Już działamy z opcją „optymalizuj pod kątem obciążeń ad hoc”. (Entity Framework i niestandardowe raporty tworzą wiele ad hoców!) SQL Server 2016 SE 3.00.2164.0.v1 na AWS RDS z funkcją kopii lustrzanej wielu serwerów AZ Kiedy biegnę: DBCC FREESYSTEMCACHE('SQL Plans'); lub DBCC …
Korzystam z programu SQL Server 2014 i taka jest sytuacja: Mam serwer A i serwer B. Nocleg ETL jest przetwarzany na serwerze A. Po zakończy proces ładowania, baza X pobiera kopii zapasowej (z CHECKSUMi RESTORE VERIFYONLYaby zapewnić niezawodność) i następnie wysyłane do serwera B. Serwer B odbiera bakplik, a następnie …
Usiłuję lepiej zrozumieć, jak silnik wykonawczy SQL Server zachowuje się w stanie niskiej pamięci. Mówiąc o dotacjach pamięci, zastanawiam się, czy istnieje jakiś sposób, aby zmusić GrantedMemorydo bycia równym RequiredMemory. (Domyślam się, że istnieje nieudokumentowana flaga śledzenia, która to zrobi. Czy ktoś wie, co to jest?)
Proszę spojrzeć na następujące zapytanie SQL: CREATE TYPE dbo.IN_MEMORY_TABLE_TYPE AS TABLE ( source_col INT NULL, target_col INT not NULL INDEX ix_InMemoryTable NONCLUSTERED (target_col) ) WITH (MEMORY_OPTIMIZED = ON) GO DECLARE @t dbo.IN_MEMORY_TABLE_TYPE INSERT @t ( source_col, target_col ) VALUES (10, 0), (0, 0) UPDATE r1 SET target_col = -1 FROM …
Obsługuję aplikację w dużym przedsiębiorstwie, jedną z moich ról jest czyszczenie danych. Jest pytanie, które muszę wykonywać co godzinę i chciałbym je zautomatyzować. Ze względu na zasady organizacji nie mogę tworzyć zadań agenta SQL Server ani modyfikować schematu, mogę jedynie manipulować danymi. Niekończący się WHILE(1=1) BEGIN WAITFOR DELAY '01:00'; --do …
Po przeczytaniu tego ograniczenia długości LIKE tutaj wygląda na to, że nie mogę wysłać tekstu dłuższego niż ~ 4000 znaków w klauzuli LIKE. Próbuję pobrać plan zapytań z pamięci podręcznej planu zapytań dla określonego zapytania. SELECT * FROM sys.dm_exec_cached_plans AS cp CROSS APPLY sys.dm_exec_query_plan(cp.plan_handle) AS qp CROSS APPLY sys.dm_exec_sql_text(cp.plan_handle) AS …
Co w programie SQL Server mierzy licznik Perfmon „Statystyki grupy obciążeń: plany nieoptymalne / s”? Jest to jeden z liczników Resource Governor , więc jest mierzony w grupie obciążeń (którą masz niezależnie od tego, czy skonfigurujesz RG, czy nie). Nie pytam, co stanowi dobry lub zły plan, ale co konkretnie …
Stworzyłem skrypt, który usuwa wszystkie klucze obce z bazy danych, tak jak poniżej: ALTER TABLE MyTable1 DROP CONSTRAINT FK_MyTable1_col1 ALTER TABLE MyTable2 DROP CONSTRAINT FK_MyTable2_col1 ALTER TABLE MyTable2 DROP CONSTRAINT FK_MyTable2_col2 Zaskakuje mnie to, że skrypt zajmuje dużo czasu: średnio 20 sekund na każde DROP FK. Rozumiem teraz, że utworzenie …
Mam bardzo dużą tabelę LINESTRINGdanych geograficznych, które przenoszę z Oracle na SQL Server. Istnieje szereg ocen, które są wykonywane w odniesieniu do tych danych w Oracle, i będą musiały zostać wykonane również w stosunku do danych w SQL Server. Problem: SQL Server ma bardziej rygorystyczne wymagania dla ważnego LINESTRINGniż Oracle; …
Mam nieco złożone zapytanie Oracle, którego wypełnienie zajmuje około pół godziny. Jeśli wezmę wolną część zapytania i uruchomię je osobno, zakończy się w ciągu kilku sekund. Oto zrzut ekranu raportu SQL Monitor dla izolowanego zapytania: Oto ta sama logika podczas uruchamiania w ramach pełnego zapytania: Kolory odpowiadają tym samym tabelom …
Jest to trochę odwrócenie uwagi od prawdziwego problemu. Jeśli pomaga kontekst, generowanie tych danych może być przydatne do testowania wydajności metod przetwarzania ciągów, do generowania ciągów, które wymagają pewnej operacji zastosowanej wobec nich w obrębie kursora, lub do generowania unikalnych, anonimowych zamienników nazw dla wrażliwych danych. Interesują mnie tylko wydajne …
Rozwiązałem problem zapytania za pomocą ... row_number() over (partition by... to jest bardziej ogólne pytanie, dlaczego nie możemy używać kolumn z wartościami null w złączeniach. Dlaczego null nie może być równy null ze względu na połączenie?
Próbuję zrozumieć kolejność wykonywania operacji logicznych i mam następujący kod: declare @T bit ='TRUE' declare @F bit ='False' print @T and @F i zwraca błąd jako Niepoprawna składnia w pobliżu słowa kluczowego „i”. Zamieniłem „i” na „&”, a kod znów działa. Dlaczego poprzedni kod nie działał? Używam serwera SQL.
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.