MySQL數據庫如何鎖定和解鎖數據庫表?

mysql數據庫支持的存儲引擎的表進行表級鎖定,利用lock tables可以鎖定用于當前線程,unlock tables 可以釋放當前線程獲得的任何鎖定。下面利用一個具體實例說明lock和unlock的用法,具體操作如下:

MySQL數據庫如何鎖定和解鎖數據庫表?

1.第一步,創建數據庫表writer和查看表結構,利用SQL語句:

create?table?writer(  wid?int(10),  wno?int(10),  wname?varchar(20),  wsex?varchar(2),  wage?int(2)  );  desc?writer;

如下圖所示:

MySQL數據庫如何鎖定和解鎖數據庫表?

2.第二步,向數據庫表writer插入五條數據,插入后查看表里數據,如下圖所示:

MySQL數據庫如何鎖定和解鎖數據庫表?

3.第三步,利用鎖定語句鎖定數據庫表writer,利用SQL語句:

lock?table?writer?read;

讓數據庫表只讀不能進行寫

如下圖所示:

MySQL數據庫如何鎖定和解鎖數據庫表?

4.第四步,為了驗證鎖定效果,可以查看數據庫表數據,利用SQL語句:

select?*?from?writer;

如下圖所示:

MySQL數據庫如何鎖定和解鎖數據庫表?

5.第五步,利用update語句對id=5進行更新,SQL語句為:

update?writer?set?wname?=?'胡思思'?where?id?=?5;

如下圖所示:

MySQL數據庫如何鎖定和解鎖數據庫表?

6.第六步,利用unlock進行解鎖,SQL語句為:

unlock?tables;

如下圖所示:

MySQL數據庫如何鎖定和解鎖數據庫表?

注意事項

熟練使用lock和unlock命令

了解mysql數據庫鎖定和解鎖線程

? 版權聲明
THE END
喜歡就支持一下吧
點贊8 分享