Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Проблемы с FileTable  [new]
Alexey30
Member

Откуда:
Сообщений: 163
Доброе утро.
Имеем Microsoft SQL Server 2016 (SP2-GDR) (KB4505220) - 13.0.5101.9 (X64) Jun 15 2019 23:15:58 Copyright (c) Microsoft Corporation Enterprise Edition (64-bit) on Windows Server 2012 R2 Standard 6.3 <X64> (Build 9600: ) (Hypervisor).
В базе была таблица FILETABLE [OrdersDocs], в которую ReportServer успешно генерировал отчеты по подписке.
Заметили, что отчеты генерироваться перестали.
Стали смотреть, что произошло, увидели, что расшаренная папка куда-то пропала.
То есть есть папка вида \\ServerName\MSSQLSERVER, но она пустая, хотя раньше это работало.
Сделали SELECT из данной таблицы, вместо сотен файлов увидели только 4. При этом в файловой системе, если я ничего не путаю, раньше была именно папка с тем же названием, как и таблица, сейчас же её найти не удалось. Решили пересоздать таблицу, но это тоже ни к чему не привело.
Честно говоря, не очень вообще понимаю, что происходит.
Давайте по порядку.
1. Свойства базы: http://SSMaker.ru/34192979/ - есть файлстрим в указаной папке.
2. Папка в проводнике выглядит так: http://SSMaker.ru/20135498/
3. Внутри - так: http://SSMaker.ru/ddf2f95d/
4. Удаляем существующую таблицу. Судя по проводнику, визуально ничего не меняется.
5. Создаем новую таблицу таким скриптом:
CREATE TABLE [dbo].[OrdersDocs] AS FILETABLE ON [PRIMARY] FILESTREAM_ON [fsGroup]
WITH
(
FILETABLE_DIRECTORY = N'VendToysOrdersDocs', FILETABLE_COLLATE_FILENAME = Cyrillic_General_CI_AS
)
GO
- появляется новая папка (3:16 время создания) http://SSMaker.ru/2e1ca270/
6. Заходим в нее, в ней еще одна http://SSMaker.ru/94a37feb/, уже пустая.
7. Создаю в обеих папках по текстовому файлу, делаю SELECT * FROM dbo.OrdersDocs - в ответ 0 строк.
8. Общая папка также не появилась...

Толи я сбил какую-то настройку, то ли еще что-то. Помогите, пожалуйста, разобраться.
22 авг 19, 03:21    [21954964]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с FileTable  [new]
Alexey30
Member

Откуда:
Сообщений: 163
SELECT FileTableRootPath ( )  

Возвращает \\SERVERNAME\MSSQLSERVER\FileTables
Но при этом папка \\SERVERNAME\MSSQLSERVER\ абсолютно пуста.
22 авг 19, 03:34    [21954965]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с FileTable  [new]
Alexey30
Member

Откуда:
Сообщений: 163
Решение найдено.
Я не могу это объяснить, но каким-то образом опция FILESTREAM Non-Transacted Access = Off. При том что раньше мы ее точно включали, так как без нее FileTables не создавались. Изменили на FullAccess - всё сразу встало на свои места.
22 авг 19, 17:17    [21955781]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с FileTable  [new]
Alexey30
Member

Откуда:
Сообщений: 163
Alexey30,

Господа, сегодня опять такая же ерунда. Открываю свойства БД и там опять
FILESTREAM Non-Transacted Access = Off

Почему она опять выключилась? Что могло произойти?
23 авг 19, 18:38    [21956692]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с FileTable  [new]
Alexey30
Member

Откуда:
Сообщений: 163
Причина найдена.
В базу разворачивали CLR функции, в настройках проекта в Project Settings - Database Settings - Miscellaneous эти свойств не были установлены - соответственно, при деплойменте перезаписывались.
23 авг 19, 18:47    [21956696]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с FileTable  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36501
Alexey30
Причина найдена.
В базу разворачивали CLR функции, в настройках проекта в Project Settings - Database Settings - Miscellaneous эти свойств не были установлены - соответственно, при деплойменте перезаписывались.
Так бывает, если скрипт деплоя не проверять.
23 авг 19, 18:55    [21956701]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить