Quantcast
Channel: SQL.ru: Microsoft SQL Server
Viewing all 7251 articles
Browse latest View live

Ошибка при ресторе базы из снапшота в ажурном сторадже. Нужен совет. Желательно поскорее.

$
0
0
Всем доброго дня.
Microsoft SQL Server 2014 (SP2-GDR) (KB3194714) - 12.0.5203.0 (X64)
Sep 23 2016 18:13:56
Copyright (c) Microsoft Corporation
Developer Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) (Hypervisor)
1. Файлы баз данных храняться в Azure Blog storage
2. Создаю снапшот базы
CREATE DATABASE [Snapshot_MyDB] ON (NAME = [MyDB], FILENAME = 'https://********/MyDB_Snapshot.ss') AS SNAPSHOT OF [MyDB]
Создается без вопросов
3. Пытаюсь ревертать базу к снапшоту
ALTER DATABASE [MyDB] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
RESTORE DATABASE [MyDB] FROM DATABASE_SNAPSHOT = 'Snapshot_MyDB';
И вот тут получаю ошибку
Msg 5120, Level 16, State 145, Line 2
Unable to open the physical file "https://********/MyDB_log.ldf". Operating system error 183: "183(Cannot create a file when that file already exists.)".
Msg 5024, Level 16, State 2, Line 2
No entry found for the primary log file in sysfiles1. Could not rebuild the log.
Msg 5028, Level 16, State 2, Line 2
The system could not activate enough of the database to rebuild the log.
Msg 3013, Level 16, State 1, Line 2
RESTORE DATABASE is terminating abnormally.

Подскажите, такой откат к снапшоту для моей версии сервера не работает в принципе для баз хранимых в Azure Blog storage?
Может я чегото не так делаю, но найти решение не могу? :(

Azure DWH небольшая заметка

$
0
0
Тем кто собирается юзать Azure DWH (почти APS, раньше PDW) будет интересно.

Рекламируют килер фичу - Resume/Scale/Pause чтобы оптимизировать затраты.

Вообще оно работало. Но последний месяц у них баг - невозможно стартануть DWH, после пинг-понга в тикеты выяснилось:

"...
The issue is related to capacity metric. On tenant rings with relatively low capacity we have an optimized algorithm which tries to use minimal number of possible nodes and it sometimes pack two sql server instances of our DW app into one node, which will cause this problem. We have a fix rolling out soon which will fix this issue.
..."

Вроде отписались потом, что пофиксили. Но проблема не ушла - стартует через раз. Уже несколько тикетов об одном и том же - проблема не ушла. Иногда приходится пинать суппорт чтобы стартанули... Видать пока праздники не кончатся ладу не дадут.

Замена даты пустым значением (не NULL) MSSQL.

$
0
0
Добрый день, подскажите, пожалуйста,
Как в запросах MSSQL заменять "пустую" дату, чтобы вместо NULL выводилось '' (Пусто)?
Если делаю isnull или coalesce на '' или ' ', то выводится: 1900-01-01 00:00:00

Связать таблицу FileTable с другой таблицей

$
0
0
Доброго времени суток.
Есть MS SQL 2012
Есть две таблицы: FileTable (FileStream), FileTransfer

Возможно как-то связать эти две таблицы (по конкретному полю?), что бы при удалении записи, например из таблицы FileTable, удалялась запись из таблицы FileTransfer?

Производительность на вставку

$
0
0
Есть хранимая процедура, которая принимает набор параметров и раскидывает их по нескольким связанным таблицам. Померил производительность, приуныл, поэкспериментировал, в конце концов переписал код практически 1-в-1 на trigger instead of insert, который повешен на view над этими же таблицами. Разница на моем дохлом ноуте - 500 инсертов в секунду в хранимой процедуре против 3500-4000 в секунду в триггере. ЧЯДНТ и чем теоретически объясняется такой разброс?
ХП мне милее из соображений безопасности, да и бизнес-логику в ней держать как-то привычнее чем в триггере.

Счетчик Buffer Manager\Lazy Writes/sec по-русски

$
0
0
Доброе время суток. В SQL Server, в английской версии, есть счетчик Buffer Manager\Lazy Writes/sec. Вопрос - как он называется в русской версии SQL ? - В Диспетчер Буфера - нет ни одного счетчика с чем-то "ленивым". Как называется этот счетчик ?

Cumulative Update #10 for SQL Server 2014 SP1

Cumulative Update #3 for SQL Server 2014 SP2


Ошибка создания связанного сервера под учетной записью Windows

$
0
0
Здравствуйте!
Подскажите, пожалуйста!!!

Обращаюсь к файлу эксель через такой запрос:

select*
FROM OPENDATASOURCE('Microsoft.ACE.OLEDB.12.0',
'Data Source=C:\dn\с пробелом\файл пробел.xlsx;Extended Properties=EXCEL 12.0')...[Лист1$].

если вход выполнен под sa то все работает. Но если вхожу под учетной записью Windows то получаю ошибку:

Поставщик OLE DB "Microsoft.ACE.OLEDB.12.0" для связанного сервера "(null)" вернул сообщение "Неопознанная ошибка".
Сообщение 7303, уровень 16, состояние 1, строка 1
Не удалось проинициализировать объект источника данных поставщика OLE DB "Microsoft.ACE.OLEDB.12.0" для связанного сервера "(null)".

Для пользователя Windows полный доступ к папке. Все разрешения на базу данных. Может какое-то особое разрешение на связанный сервер должно быть??

Исчезновение данных в таблицах баз данных

$
0
0
Народ, SQL Server гуру!!!!!!!

Случилась странная ситуация:
Суть: есть приложение которое формирует документы в базу данных.
Транзакции постоянно записываются в базу и после удачного сохранением идет распечатка документа с уникальным ID (он формируется инкрементом в поле отдельной таблицы.) и т.д.

К определенному времени заметили что часть данных куда-то исчезла - это видно по времени формирования документа/транзакции
ID уникальность не нарушена и то есть 10,11,12 ..... итд. но данных с 9 часов до 14 не осталось, как будто кто-то откатил данные из архивного файла транзакций. НО лога транзакций нет и не было, делается ежедневный полный бэкап раз в сутки - в час ночи.

У кого какие есть идеи или советы что это могло быть - и как избежать в дальнейшем таких ситуаций?
Всем спасибо.

Хранимая процедура

$
0
0
Должен получить список, а получаю последнюю запись в списке. Что делаю не так ?

CREATE PROCEDURE [dbo].[SVOB_MESTA]
@ID_OTD INT OUTPUT, @NOM_PAL INT OUTPUT
AS

DECLARE CURSOR_TYPE2 CURSOR LOCAL FOR
select s.id_otd, s.nom_palata from spr_palat s, spr_otdelenie o where s.id_otd=o.id_otd
OPEN CURSOR_TYPE2

FETCH NEXT FROM CURSOR_TYPE2
INTO @ID_OTD,@NOM_PAL

WHILE @@FETCH_STATUS = 0
BEGIN
PRINT @ID_OTD;
PRINT @NOM_PAL;

FETCH NEXT FROM CURSOR_TYPE2
INTO @ID_OTD,@NOM_PAL
END

CLOSE CURSOR_TYPE2
DEALLOCATE CURSOR_TYPE2

XPATH, получить значение одного из родителей

$
0
0
Всем доброго дня и всех с наступающим!
Есть вот такой XML:
            <address-set>
              <name junos:key="key">SKYPE</name>
              <address>
                <name junos:key="key">skype-net1</name>
              </address>
              <address>
                <name junos:key="key">skype-net2</name>
              </address>
            .....
            </address-set>
            <address-set>
              <name junos:key="key">SOMETHING</name>
              <address>
                <name junos:key="key">Something</name>
              </address>
            .....
            </address-set>

Задача вытащить значения узлов <name> , которые идут сразу под <address-set> (имя адресного сета), в который входит адрес (узел <address>) с заданным именем в переменной.
Делаю следующим образом:
  	SELECT 
	Tab.Col.value('name[1]/.','varchar(150)')  AS set_name,
	Tab.Col.value('.','varchar(150)')  AS name
	FROM   @xm.nodes('//configuration/security/zones/security-zone[name=sql:variable("@zone_name")]/address-book/address-set/address[name=sql:variable("@code_name")]/name') Tab(Col)  

@code_name для примера равен skype-net1, на выходе в идеале должно быть
SET_NAME NAME
SKYPE skype-net1
но в итоге получаю:
NULL skype-net1
Подскажите, плз, в чем грабли! Заранее благодарен!!

Не делается Backup (Diff и Full), dbcc говорит все хорошо.

$
0
0
2008 SP3. Модель Full.

В общем какая то непонятная ерунда: 2 дня назад в NetBackup перестали делатся Backup (кроме лога), так как это делается через NetBackup который админим не мы и который часто гонит, а логи бекапились дальше, сделал все по нашей инструкции, мне ответили седня "фиг знает у нас все нормально, смотрите у себя". Сразу же сделал dbcc ошибок нет, думаю, попробую сделать бекап вручную, запустил команду (copy_only) и все, 2 часа а до сих пор ничего (обычно делается за 30 мин), что это может быть?

Неоправданно долгое выполнение дефрагментации индекса sql

$
0
0
Добрый день.
2 недели назад появилась проблема: дефрагментация (реорганизация) стала "зависать", т.е. вместо 2,5-3,0 часов ночью - выполняется 12 и более часов - пока не прерву руками.
Прерываю по причине того, что в 1С появляется ошибка конфликт блокировок при попытке открытия любого документа Требование-накладная. Стоит остановить "зависшее" рег.задание скуля - проблема уходит.

При этом реиндексация (перестроение) выполняется нормально за те же 3часа (раз в неделю).

Что это и как лечить?

онлайн встреча Russian Virtual Chapter - 18 января

$
0
0
На следующей встрече поговорим на тему: Колоночные индексы в SQL Server 2016

Описание: Колоночные индексы в SQL Server впервые появились в 2012-ой версии и получили развитие в SQL Server 2014, однако технология имела ряд существенных ограничений. В SQL Server 2016 многие из ограничений были сняты, что увеличило число сценариев их использования и область применения.
В докладе будет сделан обзор технологии колоночного хранения, её эволюции в SQL Server 2012 – 2016, рассмотрено внутреннее устройство колоночных индексов, а также особенности их обработки процессором запросов (Query Processor).

Докладчик: Дмитрий Пилюгин

Регистрация: https://attendee.gotowebinar.com/register/4053732625559436546

Как полностью удалить MS SQL сервер с домашней машины

$
0
0
Решил на длинных праздниках инициативный проект начать.

Стояло 2008 экспресс и 2012 экспресс.
И оба не отзывались. Попробовал удалить - штатное удаление не сработало.

Видимо я не правильно что-то удалил ранее.

Теперь не могу ничего установить. Все установки обрываются, потому что чего-то не находят.

всех с Новым Годом!

Система отчетов

$
0
0
Система отчетов на экселе
Посоветуйте или отсоветуйте

На основании одних и тех же данных - около 50 отчетов и графиков

Планирую пока вот так:

1. Drop/Create Глобальная временная таблица - одна процедура

2. Заполнение Глобальной временной таблицы - одна процедура (ну или несколько; но пока одна)
Внутри будут:
2.1 пересоздание времянки - вызов п.1. Какие подводные камни? Вдруг кто-то ту же времянку еще не закрыл?
2.2 инсерты и несколько апдейтов. Нужны ли begin trans / commit?

3. На каждый запрос из времянки будет своя процедура с запросом

Data Collector - зачем это надо?

$
0
0
Почитал в документации, понял, что можно коллекционировать какие-то данные откуда-то.

Какие случаи применения в жизни?
Кому и когда это полезно?
Это админам или конечному юзеру может помочь?

C# библиотеки для массового заполнения xlsx

$
0
0
Добрый день. Может кто-то подскажет библиотеку или кодом поможет. Запись в xlsx без отркытия excel. Объём большой.
Viewing all 7251 articles
Browse latest View live