Вопросы с тегом «locking»

Механизм управления одновременным доступом к совместно используемым данным или ресурсам путем предоставления временно исключительного доступа процессам, запрашивающим блокировку.

1
Как мне поменять местами таблицы в MySQL?
Предположим, у меня есть таблица foo, которая содержит статистику, которая вычисляется время от времени. Он активно используется другими запросами. Вот почему я хочу вычислить более свежую статистику foo_newи поменять ее, когда вычисления будут готовы. я мог бы сделать ALTER TABLE foo RENAME foo_tmp; ALTER TABLE foo_new RENAME foo; но что …


5
Проблема с блокировкой при одновременном удалении / вставке в PostgreSQL
Это довольно просто, но я озадачен тем, что делает PG (v9.0). Начнем с простой таблицы: CREATE TABLE test (id INT PRIMARY KEY); и несколько строк: INSERT INTO TEST VALUES (1); INSERT INTO TEST VALUES (2); Используя мой любимый инструмент запросов JDBC (ExecuteQuery), я подключаю два сеансовых окна к БД, где …

4
NOLOCK всегда плох?
Я разработчик отчетов, который хочет сделать мои запросы максимально эффективными. Раньше я работал с администратором базы данных, который говорил мне - я считаю, потому что я всегда имел дело с отчетами на производственном сервере - для использования NOLOCKв каждом отдельном запросе. Теперь я работаю с администратором базы данных, который запретил …

3
Добавление столбцов в производственные таблицы
Каков наилучший способ добавления столбцов в большие производственные таблицы в SQL Server 2008 R2? Согласно книгам Microsoft в Интернете: Изменения, указанные в ALTER TABLE, применяются немедленно. Если изменения требуют изменения строк в таблице, ALTER TABLE обновляет строки. ALTER TABLE получает блокировку изменения схемы для таблицы, чтобы убедиться, что никакие другие …

3
Управление параллелизмом при использовании шаблона SELECT-UPDATE
Допустим, у вас есть следующий код (пожалуйста, не обращайте внимания, что это ужасно): BEGIN TRAN; DECLARE @id int SELECT @id = id + 1 FROM TableA; UPDATE TableA SET id = @id; --TableA must have only one row, apparently! COMMIT TRAN; -- @id is returned to the client or used …

3
Как отменить запрос блокировки приложения в SQL Server?
Sp_getapplock процедура хранится имеет следующие возвращаемые значения: 0: блокировка была успешно предоставлена ​​синхронно. 1: Блокировка была успешно предоставлена ​​после ожидания освобождения других несовместимых блокировок. -1: истекло время ожидания запроса на блокировку -2: запрос на блокировку был отменен. -3: запрос на блокировку был выбран в качестве жертвы тупика. -999: указывает на …

6
Могу ли я рассчитывать на чтение значений идентификаторов SQL Server по порядку?
TL; DR: вопрос ниже сводится к следующему: при вставке строки существует ли окно возможности между генерацией нового Identityзначения и блокировкой соответствующего ключа строки в кластеризованном индексе, где внешний наблюдатель может видеть более новую Identity значение, вставленное параллельной транзакцией? (В SQL Server.) Подробная версия У меня есть таблица SQL Server с …

3
Обоснуйте НЕ используя (nolock) подсказку в каждом запросе
Вам когда-нибудь приходилось оправдываться, НЕ используя подсказку? Я вижу WITH (NOLOCK)в каждом запросе, который попадает на очень занятый сервер. Дело в том, что разработчики думают, что он должен быть включен по умолчанию, потому что они ненавидят видеть это в своем коде тысячи раз. Я пытался объяснить, что он допускает грязное …

6
Как определить, заблокирована ли таблица Oracle или нет?
Мы использовали программное обеспечение BI и базу данных хранилища, которые установлены в Oracle Enterprise 11gR2. Некоторые из этих пакетных отчетов будут пытаться получить доступ к таблице базы данных, которая все еще может быть заблокирована. Как я могу узнать, заблокирована ли таблица Oracle или нет? Есть ли какой-нибудь оператор SQL, который …

6
В Sql Server есть способ проверить, заблокирована ли выбранная группа строк или нет?
Мы пытаемся обновить / удалить большое количество записей в многомиллиардной таблице строк. Поскольку это популярная таблица, в разных разделах этой таблицы много активности. Любая крупная операция по обновлению / удалению блокируется на длительные периоды времени (так как она ожидает блокировки всех строк, или блокировки страницы, или блокировки таблицы), что приводит …


2
Обнаружение заблокированной таблицы или строки в SQL Server
Я пытаюсь понять / научиться отслеживать детали заблокированного сеанса. Поэтому я создал следующую настройку: create table foo (id integer not null primary key, some_data varchar(20)); insert into foo values (1, 'foo'); commit; Теперь я подключаюсь к базе данных дважды от двух разных клиентов. Первая сессия вопросов: begin transaction update foo …

2
Блокировка CREATE TABLE
В другом приложении меня поразил плохой дизайн: несколько потоков одновременно выполняют EnsureDatabaseSchemaExists()метод, который выглядит в основном так: IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'MyTable') AND type = N'U') BEGIN CREATE TABLE MyTable ( ... ); END Однако, даже если он выполняется в транзакции SERIALIZABLE, этот код …

2
В SQL Server, как работают блокировки чтения?
Предположим, у меня есть следующий длительный запрос UPDATE [Table1] SET [Col1] = 'some value' WHERE [Col2] -- some clause which selects thousands of rows и предположим, что следующий запрос выполняется во время выполнения вышеуказанного запроса SELECT * FROM [Table1] Предотвращает ли первый запрос выполнение второго запроса до тех пор, пока …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.