首页 > 数据库 >MYSQL 数据库之锁

MYSQL 数据库之锁

时间:2024-05-08 11:14:34浏览次数:19  
标签:之锁 加锁 lock 数据库 阻塞 MYSQL 表锁 客户端

本文参考 哔哩哔哩黑马

TODO 补充 详细mysql 实例操作语句

全局锁

全局锁就是对整个数据库实例加锁 加锁后处于只读状态 后续的DML的写 语句 和 DLL 不执行
image

表级锁

image

表锁

表锁分为两类:
表共享锁(read lock)
表独占写锁(write lock)
--> 语法 :加锁 lock tables 表名... read/write
--> 释放锁 :unlock tables / 客户端断开连接
总结:读锁不会阻塞其他客户端的读,但是会阻塞写。写锁既会阻塞其他客户端的读,又会阻塞其他客户端的写。

元数据锁

主要是为了保证读写的正确性
image

意向锁

主要为了解决 行锁和 表锁的冲突
image
image

行级锁

image
image

image

image

标签:之锁,加锁,lock,数据库,阻塞,MYSQL,表锁,客户端
From: https://www.cnblogs.com/Bo-H/p/18118812

相关文章

  • Mysql脚本——备份客户自建数据库
    #!/bin/bashDATE=$(date+%F_%H-%M-%S)HOST=127.0.0.1USER=rootPASS=Linux@123PORT=3306BACKUP_DIR=./db_backup#删选客户自建数据库(排除系统库)DB_LIST=$(mysql-u$USER-p$PASS-h$HOST-P$PORT-s-e"showdatabases;"2>/dev/null|egrep-v"Database|......
  • mysql死锁优化
    查看连接showprocesslist--已开启10秒以上的活跃连接SELECTid,user,db,command,state,time,infoFROMinformation_schema.processlistwherecommand<>'sleep'andtime>10orderbytime;--已运行超过10s的执行计划SELECTid,user,db,command,state,timeFROMinfo......
  • Glang&Mysql&Excel
    packagemainimport( "database/sql" "fmt" "log" _"github.com/go-sql-driver/mysql" "github.com/tealeg/xlsx")funcmain(){ //连接MySQL数据库 db,err:=sql.Open("mysql","root:123456......
  • mysql练习 —— 关于一些函数的使用
    学校作业,拿来记录一下。(老师出的习题貌似是从一本书上拿到的)Q1:使用RAND()函数来获得3个随机值。A1: 解析:rand()函数,获得随机值,产生0-1的随机值。(random,随机) Q2:求3和4的平方根。A2: 解析:sqrt()用于求解平方根。 Q......
  • MySQL如何定位慢查询
    做压力测试的时候有的接口非常的慢,接口的响应时间超过了2秒以上。系统部署了运维的监控系统Skywalking,在展示的报表中可以看到是哪一个接口比较慢,并且可以分析这个接口哪部分比较慢,这里可以看到SQL的具体的执行时间,所以可以定位是哪个SQL语句出了问题。另外MySQL中也提供了慢日......
  • MySQL同步故障:“ Slave_SQL_Running:No“ 两种解决办法
    进入slave服务器,运行: ​mysql>showslave status\G            .......              Relay_Log_File:localhost-relay-bin.000535               Relay_Log_Pos:21795072       Relay_Ma......
  • 如何为数据库中新建用户B复制用户A的表和视图权限?
    故事背景:公司使用的是SQLServer数据库,经常会碰到一种情况,需要为新入职的员工赋予同组内其他同事的权限。  常用方法:1,为同一组申请创建统一的SecurityGroup(安全组),为创建的组分配相关表和视图的访问权限。不管员工入职还是离职,仅需将组内的成员进行相关的添加和删除即可......
  • oracle表导出mysql适用的脚本方法
    oracle表导出mysql适用的脚本方法1.在对应的oracle数据库plsql中执行下面代码,建F_LIMS_GET_SQL_FOR_MYSQL函数CREATEORREPLACEFUNCTIONF_LIMS_GET_SQL_FOR_MYSQL(PI_TABLENAMEINVARCHAR2,PI_ISDROPININTEGER:=1......
  • 数据库管理工具-DBeaver安装
    DBeaver官网下载1.点击下载dbeaver程序2.双击安装,安装过程如下操作......
  • Mysql-事务的基本特性和隔离级别
    0.背景在数据库中,事务是一组数据库操作,可以将事务操作视为一个基本的工作单元。1.事务的基本特性事务的基本特性“ACID”对于事务呢,就是这一组sql操作,要确保ACID这4个基本特性。哎,八股文不好背,我记忆方式是:一元吃个(原持隔)原子性(Atomicity):事务中的所有操作要么全部执行成功,......