Запитання з тегом «locking»

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

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


5
Проблема з блокуванням паралельних DELETE / INSERT в PostgreSQL
Це досить просто, але мене бентежить те, що робить PG (v9.0). Почнемо з простої таблиці: CREATE TABLE test (id INT PRIMARY KEY); і кілька рядів: INSERT INTO TEST VALUES (1); INSERT INTO TEST VALUES (2); Використовуючи мій улюблений інструмент запитів JDBC (ExecuteQuery), я підключаю два вікна сеансу до db, де …

4
Чи НОЛОК завжди поганий?
Я розробник звітів, який хоче зробити мої запити максимально ефективними. Раніше я працював з DBA, який сказав мені - я вважаю, тому що я завжди мав справу зі звітами на виробничому сервері - для використання NOLOCKу кожному запиті. Зараз я працюю з DBA, який заборонив NOLOCKза будь-яких обставин - навіть …

3
Додавання стовпців до виробничих таблиць
Який найкращий спосіб додати стовпці до великих виробничих таблиць на SQL Server 2008 R2? Згідно з книгами Microsoft в Інтернеті: Зміни, зазначені в ALTER TABLE, вводяться негайно. Якщо для змін потрібні зміни рядків у таблиці, ALTER TABLE оновлює рядки. ALTER TABLE отримує блокування модифікації схеми на столі, щоб переконатися, що …


3
Як скасувати запит на блокування програми в SQL Server?
Sp_getapplock процедура зберігається має наступні повернені значення: 0: Блокування було успішно надано синхронно. 1: Блокування було успішно надано після очікування звільнення інших несумісних замків. -1: Запит блокування вичерпано. -2: Запит блокування скасовано. -3: Запит блокування був обраний як жертва тупика. -999: Позначає перевірку параметрів або іншу помилку виклику. Я пишу …

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

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

6
Як визначити, заблокована чи ні таблиця Oracle?
Ми використовували програмне забезпечення BI та базу даних репозиторіїв, які встановлені в Oracle Enterprise 11gR2. Деякі з цих пакетних звітів намагаються отримати доступ до таблиці бази даних, яка все ще може бути заблокована. Як я можу дізнатись, заблокована чи ні таблиця Oracle? Чи є якийсь оператор SQL, який відображає аналогічні …

6
Чи є на сервері Sql спосіб перевірити, заблокована чи вибрана група рядків?
Ми намагаємось оновити / видалити велику кількість записів у багатомільярдній таблиці рядків. Оскільки це популярна таблиця, в різних розділах цієї таблиці є велика активність. Будь-яка велика активізація оновлення / видалення блокується протягом тривалого періоду часу (оскільки вона чекає отримання блоку в усіх рядках або блокуванні сторінки або блокуванні таблиці), що …

2
Що блокує і як це відбувається?
Я намагався знайти деяку інформацію про блокування в 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
Блокування СТВОРИТИ ТАБЛИЦЮ
В іншому додатку мене вразив поганий дизайн: кілька потоків виконують EnsureDatabaseSchemaExists()метод одночасно, який в основному виглядає так: IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'MyTable') AND type = N'U') BEGIN CREATE TABLE MyTable ( ... ); END Однак, навіть якщо він виконується в транзакції СЕРІАЛІЗАЦІЙНО, цей код …

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.