Database Level Locks
A database level lock is taken on the database that the operation is operating on. While an operation holds a database level lock, no other operation that requires the same lock can operate on that database.
A database level lock can be taken concurrently with locks on other databases in the same cluster. For example, two ALTERs can run simultaneously on two different databases.
If a database level lock is taken, it will block a cluster lock from being taken.
DML operations are not affected by these locks.
DDL operations that are affected by these locks are listed in Operations that Take Database Level Locks.
Any blocked operations will queue.
Example: Database a
takes a shared lock to perform CREATE DATABASE
. Database b
takes a shared lock to perform BACKUP DATABASE
concurrently.