1. Trang chủ
  2. » Công Nghệ Thông Tin

Tailieu transaction 1

27 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Microsoft PowerPoint Seminar 2 XuLiTranhChap Trình bày Tiết Gia Hồng  Xử lí tranh chấp đồng thời  Deadlock  Xử lý deadlock 2  Kỹ thuật khóa  Mức cô lập là các thiết lập trong giao tác quy định vi[.]

Trình bày : Tiết Gia Hồng Xử lí tranh chấp đồng thời  Deadlock  Xử lý deadlock  Kỹ thuật khóa  Mức lập : thiết lập giao tác quy định việc xin khóa/giữ khóa thao tác đọc/ghi lên đơn vị liệu  Khóa trực tiếp câu lệnh  Read Uncommitted Đọc liệu chưa commit Read Committed Chỉ đọc liệu commit (Default) Repeatable Read Cho phép đọc lại liệu Serializable Cho phép đọc  Read Uncommitted  Đăc điểm: Không phát S đọc khơng phải chờ đọc liệu  Lỗi:  Đọc liệu rác  Khơng đọc lại liệu  Bóng ma  Mất liệu cập nhật  Giải : Không giải vấn đề xử lý đồng thời Update TAIKHOAN(‘TK01’, 300) T2 : Xin cấp X-lock bảng TAIKHOAN SQL : Cấp X-lock bảng TAIKHOAN Set  Read Uncommitted Select (TAIKHOAN) T1: Khơng xin khóa Commit Commit Mức lập gán giao tác T2 (giao tác đọc liệu) CREATE PROC USP_VANTINTK @MATK CHAR(10) AS BEGIN TRAN SET TRAN ISOLATION LEVEL READ UNCOMMITTED DECLARE @SODU FLOAT = SELECT * FROM TAIKHOAN WHERE MATK = @MATK COMMIT TRAN  Read Committed  Đặc điểm: Phát S đọc trả khóa đọc xong  Lỗi:  Khơng đọc lại liệu  Bóng ma  Mất liệu cập nhật  Giải : Giải Dirty Read Set  Read Committed Update TAIKHOAN(‘TK01’, 300) T1 : Xin khóa X SQL : Cấp khóa X Select (TAIKHOAN) T2: Xin khóa S SQL : Khơng cấp khóa S T1 khóa X Commit Commit Mức cô lập gán giao tác T2 (giao tác đọc liệu) CREATE PROC USP_VANTINTK @MATK CHAR(10) AS BEGIN TRAN SET TRAN ISOLATION LEVEL READ COMMITTED DECLARE @SODU FLOAT = SELECT * FROM TAIKHOAN WHERE MATK = @MATK COMMIT TRAN 10 Mức cô lập gán giao tác T1 (giao tác đọc liệu) CREATE PROC USP_DANGNHAP @MAKH CHAR(10), @MATKHAU CHAR(10) AS BEGIN TRAN SET TRAN ISOLATION LEVEL REPEATABLE READ IF EXISTS (SELECT * FROM KHACHHANG WHERE MAKH = @MAKH AND MATKHAU = @MATKHAU) SELECT * FROM KHACHHANG WHERE MAKH = @MAKH AND MATKHAU = @MATKHAU COMMIT TRAN 13  Serializable  Giống Repeatable Read, có ngăn chặn lệnh insert liệu thoả điều kiện thiết lập S Giải Dirty Read,Unrepeatable Read Phantom 14 Set  Serializable Select (TAIKHOAN) T1 : Xin khóa S SQL : Cấp khóa S T1 : giữ khóa S đến hết giao tác Ngăn chèn liệu vào tập khóa Insert (TAIKHOAN) T2: Xin khóa X SQL : Khơng cấp khóa X T1 ngăn không cho insert vào Commit Commit 15 Mức cô lập gán giao tác T1 (giao tác đọc liệu) CREATE PROC USP_DANGNHAP @MAKH CHAR(10), @MATKHAU CHAR(10) AS BEGIN TRAN SET TRAN ISOLATION LEVEL SERIALIZABLE IF EXISTS (SELECT * FROM KHACHHANG WHERE MAKH = @MAKH AND MATKHAU = @MATKHAU) SELECT * FROM KHACHHANG WHERE MAKH = @MAKH AND MATKHAU = @MATKHAU COMMIT TRAN 16 Lost Update Dirty Read Unrepeatable Read Phantom Read Read Uncommitted     Read Committed     Repeatable  Read (deadlock)   Serializable (deadlock)   Giải  Không giải     17 STT Khóa Ý nghĩa ReadUncommitted Khơng thiết lập shared lock đọc / Nolock (tương tự mức cô lập Read Uncommitted) ReadCommitted -Đây chế độ mặc định (tương tự readcommitted) -Chỉ đọc liệu commit -Thiết lập shared lock đơn vị liệu đọc mở clock đọc xong RepeatableRead Thiết lập shared lock đọc giữ shared lock đến hết giao tác 18 STT Khóa Ý nghĩa Serializable / Holdlock -Thiết lập shared lock đọc, giữ lock đến hết giao tác -Khơng cho insert dịng thỏa điều kiện thiết lập khóa Updlock -Dùng updatelock thay cho shared lock -Chỉ sử dụng câu đọc liệu -Uplock giữ đến hết giao tác XLock Chỉ định dùng khóa độc quyền Readpast -Chỉ khóa dịng liệu thao tác -Áp dụng cho câu lệnh đọc liệu -Chỉ dùng với READ COMMITTED 19 REPEATABLE READ STT Khóa Ý nghĩa RowLock Chỉ đặt khóa dịng cần thao tác TabLock -Khóa tồn dịng bảng thao tác khóa S -Các thao tác (Insert / Update / Delete) thực bảng 10 TabLockX Xlock + TabLock  1, 2, 3, 5, 6, có ý nghĩa dùng câu select  1, 2, 3, 5, 6, kết hợp với (khóa theo kiểu key-range) 8, (chỉ đơn vị cần khóa) 20

Ngày đăng: 06/04/2023, 09:31

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN