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

自己可以申请网站做外卖吗竞价广告推广

自己可以申请网站做外卖吗,竞价广告推广,图片分享网站源码,wordpress single一、MySQL事务 1.1、什么是MySQL事务? 是用户定义的,将多条命令打包,在服务端执行,要么全部执行,要么全部不执行。保证不会被其他命令加塞,打断。 MySQL当中的事务是自动执行的,默认情况下&…

一、MySQL事务

1.1、什么是MySQL事务?

是用户定义的,将多条命令打包,在服务端执行,要么全部执行,要么全部不执行。保证不会被其他命令加塞,打断。

MySQL当中的事务是自动执行的,默认情况下,每条SQL语句执行完成以后都会自动提交事务。

1.2、手动控制事务

    1. 查看/设置事务的提交方式
SELECT @@autocommit;    -- 查看事务的提交方式,1表示自动提交,0表示手动提交
SET @@autocommit = 0;   -- 设置事务的提交方式为手动提交
    1. 提交事务
-- 执行完事务后,如果要提交事务,使用COMMIT语句
COMMIT;
    1. 回滚事务
-- 如果执行完事务后,发现执行的事务有问题,想要撤销事务,使用ROLLBACK语句
ROLLBACK;

1.3、自动控制事务

    1. 开启事务
START TRANSACTION OR BEGIN;    -- 显式地开启一个事务
    1. 提交事务
COMMIT;
    1. 回滚事务
ROLLBACK;

1.4、事务的特性(ACID)

  • 原子性(Automicity):事务是最小的执行单位,不允许分割,要么全部成功,要么全部失败
  • 一致性(Consistency):事务完成时,所有数据都必须处于一致状态
  • 隔离性(Isolation):数据库系统提供一定的隔离机制,保证事务在不受外部并发操作影响的独立环境下运行
  • 持久性(Durability):事务一旦提交或回滚,它对数据库中的数据的改变就是永久的

1.5、并发事务处理可能遇到的问题

问题描述
脏读(Dirty Read)一个事务在处理过程中读取了另一个未提交的事务中的数据
不可重复读一个事务先后读取同一条记录,但两次读取的数据不同,称为不可重复读
幻读一个事务按照条件查询数据时,没有对应的数据行,但是在插入数据时,又发现这行数据已经存在,好像出现了“幻影”

1.6、事务的隔离级别(为了解决并发事务遇到的问题)

隔离级别脏读不可重复读幻读
读未提交(Read Uncommitted)可能发生可能发生可能发生
读已提交(Read Committed)不可能发生可能发生可能发生
可重复读(Repeatable Read–MySQL默认级别)不可能发生不可能发生可能发生
串行化(Serializable)不可能发生不可能发生不可能发生

注意:

  • 隔离级别从小到大,安全性越高,效率越低,串行化级别效率最低,但是安全性最高

1.7、查看/设置事务的隔离级别

SELECT @@transaction_isolation;    -- 查看事务的隔离级别SET [SESSION|GLOBAL] TRANSACTION ISOLATION LEVEL 隔离级别{READ UNCOMMITTED|READ COMMITTED|REPEATABLE READ|SERIALIZABLE};

二、存储引擎

2.1、 体系结构

在这里插入图片描述

2.2、 存储引擎简介

是存储数据、建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表而不是基于库的,所以存储引擎也可以被称为表引擎,即不同的表可以选择不同的存储引擎。

CREATE TABLE 表名(字段1 数据类型 [约束],...
) ENGINE=存储引擎名称;    -- MySQL5.5以后的版本,默认存储引擎为InnoDB

2.3、查看当前数据库支持的存储引擎

SHOW ENGINES;

2.4、 存储引擎-InnoDB

  • 介绍:InnoDB是一种兼顾高可靠性高性能的通用存储引擎,在MySQL5.5以后版本中是默认的存储引擎。
  • 特点:
      1. DML操作遵循ACID模型,支持事务安全(具有事务,回滚,并发控制)
      1. 行级锁,提高并发访问性能
      1. 支持外键,保证数据的完整性和正确性
    • 文件:xxx.ibd,InnoDB引擎的每张表都会对应一个表空间文件,存储该表的表结构(frm、sdi)、数据和索引,参数:innodb_file_per_table
    -- 查看参数是否开启
    SHOW VARIABLES LIKE 'innodb_file_per_table';
    
    # 查看idb文件
    idb2sdi xxx.ibd
    
  • 逻辑存储结构
    在这里插入图片描述

2.5、存储引擎-MyISAM

  • 介绍:MyISAM是MySQL早期的默认存储引擎
  • 特点:
      1. 不支持事务,不支持外键
      1. 支持表锁,不支持行锁
      1. 访问速度快
    • 文件:
      • xxx.sdi:存储表结构信息
      • xxx.MYD:存储数据
      • xxx.MYI:存储索引

2.6、存储引擎-Memory

  • 介绍:Memory引擎的表数据是存储在内存中的,因此速度快,但是不安全,一旦MySQL服务关闭,所有的数据都会丢失
  • 特点:
      1. 存储内容全部放在内存中,速度快
      1. hash索引(默认)
    • 文件:
      • xxx.sdi:存储表结构信息

2.7、存储引擎的选择(常用还是InnoDB)

  • InnoDB:是MySQL的默认引擎,支持事务、外键,如果应用对事务的完整性有比较高的要求,在并发条件下要求数据的一致性,数据操作除了插入和查询之外,还包含很多的更新、删除操作,那么InnoDB是最好的选择。
  • MyISAM: 如果应用是以读操作和插入操作为主,只有很少的更新和删除操作,并且对事务的完整性、并发性要求不高,那么选择MyISAM是非常合适的。NoSQL数据库替代
  • MEMORY: 将所有数据保存在内存中,速度快,通常用于临时表及缓存、MEMORY的缺陷就是对于表的大小有限制,太大的表无法缓存在内存中,而且如果mysqld服务关闭了,那么所有的数据都会丢失。Redis替代

三、总结:

3.1、MySQL的事务与Redis的事务比较

MySQLRedis
事务支持支持(默认开启)支持(需手动控制)
回滚事务支持不支持
ACID支持支持

3.2、MySQL的存储引擎比较

在这里插入图片描述

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

相关文章:

  • 做淘宝联盟网站要多少钱?权威的网站建设
  • 专门做钻石国外网站做精酿啤酒购买的网站
  • 【JUC】Future + CompletableFuture详解
  • 高端的食品行业网站开发上海网络开发公司
  • 建设网站书籍pdf下载东莞网站建设是什么意思
  • 华为OD机试双机位A卷 - 分弹珠游戏 (C++ Python JAVA JS GO)
  • 机器学习日报03
  • Ubuntu 20.04上安装MuJoCo 210
  • 耳机商城网站开发新华书店网上商城
  • xcode只显示堆栈不定位断点处
  • 米思米网站订单取消怎么做室内设计师怎么找
  • “十五五”制造业自立新篇:工业软件成为关键支撑
  • 加速度计LIS2DW12开发(2)----基于中断信号获取加速度数据
  • **发散创新:金丝雀发布的技术深度解析与实现**随着技术的不断进步,金丝雀发布作为一种重要的软件发布策略,被广泛应用于生
  • 矽塔 SA8208 36V输入耐压 8A过流保护阈值 大功率过压过流保护芯片
  • 在网上做翻译的网站网站建设费属于哪个会计科目
  • 网站如何收录沭阳网站建设方案
  • 东丽集团网站建设什么网站可以接图做图
  • SAP SD交货单执行跟踪报表分享
  • vs code工具新手操作技巧
  • Delft3D建模、水动力模拟方法及在地表水环境影响评价中的实践技术应用
  • Python多态与继承详解
  • 详解c++中的文件流
  • 2017网站建设费用html网页设计毕业设计作品
  • 单页响应式网站模板html5电商网页制作
  • PaddleOCR-VL:紧凑型0.9B参数模型在多语言文档解析领域表现卓越
  • syssetup!Wizard函数分析之comctl32!_CreatePropertySheetPage
  • Python爬虫数据存储:MySQL实战教程
  • 网站源码免费的电影网站页面seo
  • 青岛建设工程信息网站银川360推广 网站建设