Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / При чтении данных блокируется таблица на изменение / 25 сообщений из 25, страница 1 из 1
21.02.2019, 14:28
    #39777294
leonix
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Выполняю запрос по переносу данных из одной базы в другую.
В базе в которой я только читаю данные возникает блокировка читаемой таблицы.
Пользователи не могут работать.
Что можно сделать чтобы не блокировалась работа всех пользователей.
Вот сам запрос.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
insert into [_InfoRg222] (
[_Fld223],--объект 
[_Fld224], --номер версии
[_Fld251], --дата версии
[_Fld225], --версия объекта
[_Fld226], --автор версии
[_Fld232], -- контрольная сумма
[_SimpleKey]
)  
SELECT         
lower(dbo.funcgetid(_Fld40351_RRRef)),--объект 
[_Fld40352]+10000002, --номер версии
[_Fld40356], --дата версии
[_Fld40353], --версия объекта
lower(dbo.funcgetid(_Fld40355RRef)) ,-- автор версии
[_Fld43440], --контрольная сумма
Convert(binary(16),NEWID()) --[_SimpleKey] --
FROM [myserver].[mybase].dbo._InfoRg40350 
where [_Fld40356]>='4018-11-01' and [_Fld40356]<'4018-12-01 00:00:00'
...
Рейтинг: 0 / 0
21.02.2019, 15:11
    #39777348
Dzianis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
leonix,

авторПользователи не могут работать.

не могут обновить данные? Или как?
Сколько времени выполняется конкретно ваш запрос чтения?

1) Сделайте индексы, чтобы чтение прошло быстрее или блокировалась не вся таблица.
2) переносите меньший объем данных за 1 раз.
3) включить другой уровень изоляции
...
Рейтинг: 0 / 0
21.02.2019, 15:16
    #39777354
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Код: sql
1.
'4018-11-01'



это что за дата такая?
...
Рейтинг: 0 / 0
21.02.2019, 15:20
    #39777359
Гавриленко Сергей Алексеевич
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Задать paglock / rowlock на вычитываемой таблице.
...
Рейтинг: 0 / 0
21.02.2019, 15:21
    #39777362
iiyama
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Konst_One,
re> это что за дата такая?

это 1c, установлено смещение 2000
...
Рейтинг: 0 / 0
21.02.2019, 15:22
    #39777363
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
и конечно нет индекса по полю _Fld40356
...
Рейтинг: 0 / 0
21.02.2019, 15:43
    #39777389
L_argo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Konst_One
Код: sql
1.
'4018-11-01'



это что за дата такая?Ну ты как маленький..... Это ж 1С !

па сабжу: попробовать поставить :
from [myserver].[mybase].dbo._InfoRg40350 with(nolock)
...
Рейтинг: 0 / 0
21.02.2019, 15:44
    #39777392
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
L_argoпа сабжу: попробовать поставить :
from [myserver].[mybase].dbo._InfoRg40350 with(nolock)
мда
...
Рейтинг: 0 / 0
21.02.2019, 16:20
    #39777418
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Konst_One
Код: sql
1.
'4018-11-01'



это что за дата такая?

гости из будущего
...
Рейтинг: 0 / 0
21.02.2019, 16:35
    #39777423
leonix
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Dzianisleonix,

авторПользователи не могут работать.

не могут обновить данные? Или как?
Сколько времени выполняется конкретно ваш запрос чтения?

1) Сделайте индексы, чтобы чтение прошло быстрее или блокировалась не вся таблица.
2) переносите меньший объем данных за 1 раз.
3) включить другой уровень изоляции

Да, не могут записать данные в этот регистр.
Если просто читать данные, то секунд 10-20.

1) думаю чтение и так быстро идет, в индексе не вижу смысла
2) и так вроде небольшими частями переношу, 10 сек читаются 300 000 строк
3) вот это не знаю как делать
...
Рейтинг: 0 / 0
21.02.2019, 16:36
    #39777424
leonix
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Гавриленко Сергей АлексеевичЗадать paglock / rowlock на вычитываемой таблице.

Это надо изучить мне, пока не знаю что это
...
Рейтинг: 0 / 0
21.02.2019, 16:36
    #39777425
leonix
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Konst_Oneи конечно нет индекса по полю _Fld40356
Индекса нет, но читается быстро. Проблема не в чтении.
...
Рейтинг: 0 / 0
21.02.2019, 16:37
    #39777426
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
leonix,

автор1) думаю чтение и так быстро идет, в индексе не вижу смысла
при чём здесь скорость?

автор3) вот это не знаю как делать
что бы просто развести всех читателей и писателей читайте про RCSI
...
Рейтинг: 0 / 0
21.02.2019, 16:37
    #39777427
leonix
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
L_argoKonst_One
Код: sql
1.
'4018-11-01'



это что за дата такая?Ну ты как маленький..... Это ж 1С !

па сабжу: попробовать поставить :
from [myserver].[mybase].dbo._InfoRg40350 with(nolock)

Спасибо! Сейчас запустил, вроде пользователи не жалуются и блокировок не вижу.
...
Рейтинг: 0 / 0
21.02.2019, 16:39
    #39777428
leonix
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
TaPaKL_argoпа сабжу: попробовать поставить :
from [myserver].[mybase].dbo._InfoRg40350 with(nolock)
мда

Почему "мда"? Вроде это мне как раз и помогло?
...
Рейтинг: 0 / 0
21.02.2019, 16:39
    #39777430
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
leonixВыполняю запрос по переносу данных из одной базы в другую.

хрень вы всякую со своим nolock перенесёте в новую базу
ps
извиняюсь за грубость
...
Рейтинг: 0 / 0
21.02.2019, 16:40
    #39777431
leonix
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
TaPaKleonix,

автор1) думаю чтение и так быстро идет, в индексе не вижу смысла
при чём здесь скорость?

Интересно... индекс поможет избежать блокировок?

автор3) вот это не знаю как делать
что бы просто развести всех читателей и писателей читайте про RCSI

ок. спасибо. почитаю.
...
Рейтинг: 0 / 0
21.02.2019, 16:41
    #39777433
leonix
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Konst_OneleonixВыполняю запрос по переносу данных из одной базы в другую.

хрень вы всякую со своим nolock перенесёте в новую базу
ps
извиняюсь за грубость

Почему? Переношу данные за ноябрь прошлого года, данные в этом периода 100% уже не будут меняться сейчас. Это архив истории изменений данных.
...
Рейтинг: 0 / 0
21.02.2019, 16:42
    #39777434
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
вам виднее, nolock - это грязное чтение
...
Рейтинг: 0 / 0
21.02.2019, 17:25
    #39777465
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
leonix,

из-за nolock можно прочесть неполноценные или удалённые при откате данные. "Отчеты биться не будут".
...
Рейтинг: 0 / 0
21.02.2019, 18:11
    #39777490
Dzianis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
leonixKonst_Oneпропущено...


хрень вы всякую со своим nolock перенесёте в новую базу
ps
извиняюсь за грубость

Почему? Переношу данные за ноябрь прошлого года, данные в этом периода 100% уже не будут меняться сейчас. Это архив истории изменений данных.

если это древние данные, не лучше ли их перенос проводить в регламентное время, когда активность пользователей отсусттвует или минимальна?
...
Рейтинг: 0 / 0
21.02.2019, 18:40
    #39777516
Alexander Us
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
leonix,

1) обязательно создайте индекс по полю _Fld40356

2) попробуйте опцию option(maxdop 1) чтобы выш запрос не забирал слишком много ресурсов

3) если первых 2 пунктов окожется недостаточно, и вы абсолютно уветены, что данные не меняются/не откатываются то тогда можно и with(nolock).
Ну или если для вашей отчётности приемлимы неточности.
...
Рейтинг: 0 / 0
21.02.2019, 19:39
    #39777565
Очень лысый
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Как вариант, дабы забороть подобные моменты в корне. https://infostart.ru/public/157277/
...
Рейтинг: 0 / 0
21.02.2019, 19:41
    #39777566
Очень лысый
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
Типа включают версионный режим и подкручивают 1С дабы корректно с ним работала.
...
Рейтинг: 0 / 0
21.02.2019, 19:45
    #39777569
Очень лысый
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При чтении данных блокируется таблица на изменение
На 8.3, если не врут, READ_COMMITED_SNAPSHOT включается по умолчанию.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / При чтении данных блокируется таблица на изменение / 25 сообщений из 25, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]