当前位置: 首页 > news >正文

MySQL 锁

MySQL中最常见的锁有全局锁、表锁、行锁。


全局锁

全局锁用于锁住当前库中的所有实例,也就是说会将所有的表都锁住。一般用于做数据库备份的时候就需要添加全局锁,数据库备份的时候是一个表一个表备份,如果没有加锁的话在备份的时候会有其他的事务进行提交,从而造成数据不一致,加锁后能保证在备份的时候不会有其他事务提交数据。


如何添加一个全局锁呢?

通过以下命令添加一个全局锁

#设置全局锁
flush tables with read lock;

执行增删改操作,会发现当前锁冲突,无法操作

insert into user (username, password, phone) 
values ('Jack', '$2a$10$6ptTq3V9XfaJmFYwYT2W9ud377BUkEWk.whf.iQ.0sX5F.L497rAC', 
        '12345678901');


执行读取操作

#读取user
    select *
    from user;


可以发现,添加全局锁后,整个数据库都变成了只读状态,操作完别忘记释放全局锁。

#释放全局锁
unlock tables;

http://www.dtcms.com/a/74227.html

相关文章:

  • 浅谈StarRocks SQL性能检查与调优
  • 判断字符串是否为回文(信息学奥赛一本通-1146)
  • 算法刷题整理合集(四)
  • ai-1 搭建python
  • 熔断和降级的区别,具体使用场景有哪些?
  • 笔试-广度优先搜索BFS-信号强度
  • 手机端Flutter、React Native与原生安卓、iOS交互的方案及设计原理
  • 数据结构与算法-图论-拓扑排序
  • An error occurred: ‘numpy.ndarray‘ object has no attribute ‘clone‘
  • 创建表空间和表
  • 再学:Solidity数据类型
  • [Linux]进程控制
  • 实战ansible-playbook
  • 论文修改参考文献的数字顺位顺序技巧
  • leetcode每日一题:使字符串平衡的最小交换次数
  • 6个月的Go语言学习甘特图路线图 从零基础到项目实战
  • GB9706.1-2020部分定义
  • flutter Json转Dart Model类
  • EF框架数据库更新后自动更新类及上下文
  • NA611系列WiFi串口服务器常见问题以及解决办法
  • Android PC 要来了?Android 16 Beta3 出现 Enable desktop experience features 选项
  • 爬虫逆向:详细讲述Android底层原理及机制
  • 安全无事故连续天数计算,python 时间工具的高效利用
  • 算法016——最小覆盖子串
  • 209、不大于n的数的组合(python)
  • Linux(8.4)NFS
  • 一、串行通信基础知识
  • Dufs 文件共享系统,内部文件共享还在用ftp\samba?
  • 100. 岛屿的最大面积
  • Linux安装MySQL5.7.26教程图解