SQL入门第六篇——事务与索引

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介: 什么是事务?一个事务就是一个完整的业务逻辑,就是a转账给b,那么a要扣钱,b要加钱两者需要同时进行。只有DML的三个语句和事务有关系,其他都没有关系。因为三个语句是数据库表的增删改。只要你的操作一旦涉及到就需要考虑安全问题。提交事务:清空事务性活动的日志文件,将数据全部

SQL入门第六篇——事务与索引

事务介绍

  1. 什么是事务?一个事务就是一个完整的业务逻辑,就是a转账给b,那么a要扣钱,b要加钱两者需要同时进行。
  2. 只有DML的三个语句和事务有关系,其他都没有关系。因为三个语句是数据库表的增删改。只要你的操作一旦涉及到就需要考虑安全问题。
  3. 提交事务:清空事务性活动的日志文件,将数据全部彻底持久化到数据库表中,提交事务标志着,事务的结束,并且是一种全部成功的结束。
  4. 回滚事务:将之前所有的DML操作全部撤销,并且清空事务性活动的日志文件回滚事务标志着,事务的结束。并且是一种全部失败的结束。
  5. 怎么提交事务,怎么回滚事务
    提交事务:commit
    回滚事务:rollback
    事务对应的英语单词是:transaction
  6. 事务四大特性:原子性,一致性,隔离性,持久性
  7. 事务的隔离性:有四种级别
    读未提交:read uncommitted,事务A可以读取到事务B这种现象称为脏读现象
    读已提交:read committed,事务A只能读取到事务B提交后的数据
    可重复读:repeatable read,事务A读取到了事务B,后来事务B修改并且提交了,那么事务A还是能读取到没修改之前的数据
    序列化:seriallizable,最高级别效率也是最低,不能并发进行。

索引简介

  1. 索引:类书书本的排列方式,有目录和小节。遵循左小右大的原则,采用中序遍历
    提醒1:在任何数据库中主键都会自动添加索引对象,id字段上自动有索引。如果一个字段上有unique约束的话,也会自动创建索引对象
    提醒2:在任何数据库中,任何一张表的任何一条记录硬盘存储上都有一个硬盘的物理存储编号
    提醒3:在mysql中,索引是一个单独的对象,不同的存储引擎以不同的形式存在,在MYISAM存储引擎中,索引存储在一个.MYI文件中。在InnoDB存储引擎中索引存储在一个逻辑名称叫做tablespace的当中。在MEMOEY存储引擎中,索引存储在一个内存当中,不管索引存储在哪里,索引在mysql当中都是一个树的形式存在(自平衡树:b+树)
  2. 在mysql当中,主键上,以及unique字段上都会自动添加索引的什么条件下,我们会考虑给字段添加索引呢?
    条件1:数据量庞大
    条件2:该字段经常出现在where的前面,以条件的形式存在,经常被扫描
    条件3:该字段很少的DML操作
  3. 索引怎么创建和删除,语法是什么?
    创建索引:create index emp_ename_index on emp(ename);
    删除索引:drop index emp_ename_index on emp;
  4. 索引失效的情况:
  1. 使用%或者_,
  2. 2使用or,
  3. 3使用复合索引的时候,没有使用左  侧的列查找。
  4. 4在where当中索引参加了运算
  5. 在where当中索引列使用了函数
  1. 索引是各种数据库进行优化的重要手段。优化的时候优先考虑的因素就是索引
    有单一索引,复合索引,主键索引,唯一性索引

DBA命令

  • 必会的导出与导入:mysql dump bjpowernode    >D:bjpwernode.sql -uroot(用户名)-p(密码)
  • 导入:mysql dum p bjpowernode emp>D:bjpwernode.sql -uroot(用户名)-p(密码)
  • 初始话数据库:source D:\bjpowernode.sql
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
SQL 数据库 开发者
MSSQL性能调优实战技巧:索引优化、SQL语句微调与并发控制策略
在Microsoft SQL Server(MSSQL)的管理与优化中,性能调优是一项复杂但至关重要的任务
|
5天前
|
SQL 数据库 数据安全/隐私保护
SQL Server数据库Owner导致事务复制log reader job无法启动的解决办法
【8月更文挑战第14天】解决SQL Server事务复制Log Reader作业因数据库所有者问题无法启动的方法:首先验证数据库所有者是否有效并具足够权限;若非,使用`ALTER AUTHORIZATION`更改为有效登录名。其次,确认Log Reader使用的登录名拥有读取事务日志所需的角色权限。还需检查复制配置是否准确无误,并验证Log Reader代理的连接信息及参数。重启SQL Server Agent服务或手动启动Log Reader作业亦可能解决问题。最后,审查SQL Server错误日志及Windows事件查看器以获取更多线索。
|
1月前
|
SQL 监控 数据库
MSSQL性能调优实战技巧:索引优化策略、SQL查询重构与并发控制详解
在Microsoft SQL Server(MSSQL)的管理与优化过程中,性能调优是确保数据库高效运行的关键环节
|
1月前
|
SQL 监控 数据库
MSSQL性能调优实战指南:精准索引策略、SQL查询优化与高效并发控制
在Microsoft SQL Server(MSSQL)的性能调优过程中,精准索引策略、SQL查询优化以及高效并发控制是三大核心要素
|
3天前
|
SQL 存储 关系型数据库
数据库SQL入门指南
数据库SQL入门指南
|
25天前
|
SQL 关系型数据库 分布式数据库
PolarDB产品使用问题之相同的SQL语句在不同时间执行EXPLAIN计划显示出不同的索引类型,是什么原因
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
PolarDB产品使用问题之相同的SQL语句在不同时间执行EXPLAIN计划显示出不同的索引类型,是什么原因
|
2天前
|
SQL 数据库 索引
SQL语言入门:如何表达你的数据需求
在数据库的世界里,SQL(Structured Query Language)是一种至关重要的语言,它允许用户与数据库进行交互,执行数据的查询、更新、插入和删除等操作
|
26天前
|
存储 SQL 索引
面试题MySQL问题之使用SQL语句创建一个索引如何解决
面试题MySQL问题之使用SQL语句创建一个索引如何解决
32 1
|
8天前
|
SQL 关系型数据库 MySQL
SQL Server 事务执行、回滚
SQL Server 事务执行、回滚
16 0
|
1月前
|
SQL 运维 监控
MSSQL性能调优实战技巧:索引优化、SQL查询优化与并发控制策略
在Microsoft SQL Server(MSSQL)的运维过程中,性能调优是确保数据库高效运行、满足业务需求的关键环节