Адміністратори баз даних

Питання та відповіді для професіоналів баз даних, які бажають покращити свої навички роботи з базами даних та дізнатися від інших у спільноті

1
Стиснення резервного копіювання, що спричинює пошкодження в базі даних TDE SQL 2017
У SQL Server 2017 (CU3) щоразу, коли я включаю компресію резервного копіювання на одній із моїх баз даних TDE, процес резервного копіювання завжди пошкоджує певну сторінку в базі даних. Якщо я запускаю резервну копію без стиснення, вона не пошкоджується. Ось кроки, які я вжив для перевірки та відтворення цієї проблеми: …

1
Ім'я таблиці SQL Server, починаючи з # в базі даних користувача, а не в tempdb, не в таблиці temp
Якось десятиліття тому в нашій базі даних була створена таблиця, яка починається з #. Він відображається в Провіднику об’єктів у базі даних програми, а не в tempdb. Чомусь Azure не імпортує подібну базу даних. Ми не можемо скинути його, перейменувати його або взаємодіяти з ним. Я спробував « Видалити» з …

4
Що робить% у цьому пункті WHERE?
Я тренуюсь, і один із сценаріїв має таку команду: SELECT SUM(Col2) FROM clust_table WHERE Col1 % 3 = 1 Мені хотілося б знати, для чого цей фрагмент у пункті WHERE: Col1 % 3 = 1 Я провів кілька досліджень в Інтернеті і не знайшов посилань на цю команду.
13 sql-server  t-sql 

2
Ні DBCC FREEPROCCACHE, ні DBCC FREESYSTEMCACHE ("плани SQL") нічого не роблять, щоб звільнити пам'ять CACHESTORE_SQLCP
CACHESTORE_SQLCP Плани Sql займають понад 38 Гб через кілька днів. Ми вже працюємо з опцією "оптимізувати для спеціальних навантажень". (Entity Framework та спеціальні звіти створюють багато рекламних кампаній!) SQL Server 2016 SE 3.00.2164.0.v1 на AWS RDS з дзеркальним відображенням з декількома AZ Коли я бігаю: DBCC FREESYSTEMCACHE('SQL Plans'); або DBCC …

1
Випуск резервного резервного копіювання - чому? Це можливо?
Я використовую SQL Server 2014, і це така ситуація: У мене є сервер A і сервер B. За ніч ETL обробляється на сервері А. Після завантаження завершення процесу, бази даних X отримує резервні копії (з CHECKSUMі RESTORE VERIFYONLYдля забезпечення надійності) , а потім відправляють на сервер B. Сервер B отримує …

1
як імітувати стан низької пам’яті під час запуску запиту
Я намагаюся краще зрозуміти, як поводиться механізм виконання SQL Server у режимі з низькою пам’яттю. Якщо говорити про грамати пам'яті, мені цікаво, чи є якийсь спосіб змусити GrantedMemoryбути рівним RequiredMemory. (Я здогадуюсь, що там є недокументований прапор слідів, який це зробить. Хтось знає, що це?)

1
Неправильна поведінка SQL Server 2016 з оптимізованими пам’яттю таблицями
Перегляньте наступний запит 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 @t r1 …

3
Автоматично виконувати запит у MS SQL Studio щогодини
Я підтримую програму на великому підприємстві, одна з моїх ролей - очищення даних. Є запит, який мені потрібно виконувати щогодини, і я хотів би його автоматизувати. Через політику організації я не можу створювати завдання агента SQL Server або змінювати схему, можу лише маніпулювати даними. Нескінченний WHILE(1=1) BEGIN WAITFOR DELAY '01:00'; …

3
Подолайте обмеження довжини символів LIKE
Читаючи це обмеження довжини символів LIKE , схоже, я не можу надсилати текст довше ~ 4000 символів у пункті LIKE. Я намагаюся отримати план запиту з кешу плану запитів для конкретного запиту. 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 st where st.text …

1
Що насправді вимірює лічильник Perfmon "Субоптимальні плани / сек"?
Що в SQL Server вимірює лічильник Perfmon "Статистика навантаження групи: Субоптимальні плани / сек"? Це один з лічильників управління ресурсами , тому він вимірюється в групі навантаження (який у вас є, налаштовуєте ви RG чи ні.) Я не запитую, що робить хороший план чи поганий план, але що конкретно робить …
13 sql-server 

2
Чому скидання сторонніх ключів займає багато часу?
Я створив сценарій, який по черзі видаляє всі зовнішні ключі з бази даних, саме так: ALTER TABLE MyTable1 DROP CONSTRAINT FK_MyTable1_col1 ALTER TABLE MyTable2 DROP CONSTRAINT FK_MyTable2_col1 ALTER TABLE MyTable2 DROP CONSTRAINT FK_MyTable2_col2 Що мене дивує, це те, що сценарій займає тривалий час: в середньому 20 секунд на кожен DROP …

2
Альтернатива MakeValid () для просторових даних у SQL Server 2016
У мене дуже велика таблиця географічних LINESTRINGданих, що я переходжу від Oracle до SQL Server. Існує ряд оцінок, які виконуються на основі цих даних в Oracle, і їх також потрібно буде виконати на даних у SQL Server. Проблема: SQL Server має більш жорсткі вимоги до дійсних, LINESTRINGніж Oracle; "Екземпляр LineString …

1
Як я можу запобігти перетворенню UNPIVOT на Спілку ВСІХ?
У мене є дещо складний запит Oracle, який займає близько півгодини. Якщо я візьму повільну частину запиту і запускаю його окремо, він закінчується через кілька секунд. Ось знімок екрана звіту про SQL Monitor для окремого запиту: Ось така ж логіка під час запуску як частини повного запиту: Кольори відповідають однаковим …

4
Як я можу перетворити перші 100 мільйонів додатних цілих чисел у рядки?
Це трохи відхилення від реальної проблеми. Якщо надання контексту допомагає, генерування цих даних може бути корисним для тестування продуктивності способів обробки рядків, для генерування рядків, яким потрібно виконати певну операцію до них у курсорі, або для створення унікальних, анонімних замін імен для чутливих даних. Мене просто цікавлять ефективні способи генерування …

6
Чому я не можу використовувати нульові значення при приєднанні?
Я вирішив проблему запиту, використовуючи ... row_number() over (partition by... це більш загальне питання про те, чому ми не можемо використовувати стовпці з нульовими значеннями. Чому заради об’єднання нуль не може бути рівний нулю?
13 oracle  join  null 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.