• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > mysql中什么是大表?什么是大事务?该如何处理?

mysql中什么是大表?什么是大事务?该如何处理?

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了事务处理,mysql优化,性能,事务,mysql等相关知识,希望本文的分享对您有所帮助
本篇文章给大家带来的内容是关于mysql中什么是大表?什么是大事务?该如何处理?有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

前言

相对来说,什么情况下的数据库表能够称为“大表”呢?

  • 当一个表的数据超过千万行的时候,就会对数据库造成影响

  • 当表数据文件巨大,表数据文件超过10G(数据值相对硬件而言)

大表的影响

大表对查询的影响

慢查询:很难在一定的时间内过滤出所需要的数据
(Eg:显示订单、来源少、区分度底、大量磁盘IO、降低磁盘效率、慢查询)

大表对DDL操作的影响

1、建立索引需要很长时间

风险:

MYSQL版本 < 5.5 建立索引会锁表
MYSQL版本 >= 5.5 虽然不会锁表但会引起主从延迟

2、修改表结构需要长时间锁表

风险:

会造成长时间的主从延迟
影响正常的数据操作

如何处理数据库中的大表

1、分库分表把一张大表分成多个小表

难点:

分表主键的选择
分表后跨分区数据的查询和统计

2、大表的历史数据归档

优点:

减少对前后端业务的影响

难点:

归档时间点的选择
如何进行归档的操作

什么是事务?

  • 事务是数据库系统区别于其他一切文件系统的重要特性之一

  • 事务是一组具有原子性的SQL语句,或是一个独立的工作单元

事务要求符合:原子性、一致性、隔离性、持久性

事务的原子性

一个事务必须被视为不可分离的最小工作单位,整个事务中的所有操作要么全部提交成功,要么全部失败,对于一个事务来说,不可能只执行其中的一部分操作。

Eg:
1、检查理财账户中的余额是否高于2000元
2、从理财账户的余额中减去2000元
3、在活动存款账户上增加2000元

整个事务中的所有操作要么全部提交成功,要么全部失败回滚。

事务的一致性

一致性是指事务将数据库从一种一致性状态转换到另外一种一致性状态,在事务开始之前和事务结束后数据库中数据的完整性没有被破坏。

事务的隔离性

隔离性要求一个事务对数据库中数据的修改,在未提交完成之前对于其他事务是不可见的。

SQL标准中定义的四种各类级别(隔离性由低到高)(并发性由高到低)

未提交读(READ UNCOMMITED)
已提交读(READ COMMITED)
可重复读(REPEATABLE READ)
可串行化(SERIALIZABLE)

事务的持久性

一旦事务提交,则其所做的修改就会永远保存到数据库中,此时即使系统崩溃,已经提交的修改数据也不会丢失。

什么是大事务?

运行的时间比较长,操作的数据比较多的事务

风险:

锁定太多的数据,造成大量的阻塞和锁超时
回滚所需要的时间比较长
执行时间长,容易造成主从延迟

如何处理大事务?

  • 避免一次处理太多的数据

  • 移出不必要在事务中的SELECT操作

以上就是mysql中什么是大表?什么是大事务?该如何处理?的详细内容,更多请关注微课江湖其它相关文章!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • MySQL什么是事务处理 ?(代码示例)
  • mysql中什么是大表?什么是大事务?该如何处理?
  • Mysql中关于事务处理的详细介绍
  • 关于NodeJs如何使用Mysql模块实现事务处理实例
  • MySQL事务处理实例讲解
  • Mysql高并发加锁事务处理
  • 【MySQL 06】事务处理
  • mysql事务处理机制的使用技巧步骤
  • 为mysql数据库添加添加事务处理的方法
  • mysql实现事务的提交和回滚实例

相关文章

  • 2018-12-05MySQL数据库之信息函数与加密函数
  • 2017-05-11linux下备份MYSQL数据库的方法
  • 2018-12-05Mysql中关于索引操作的经验分享
  • 2018-12-05MySQL常用语句简介
  • 2018-12-05sqlserver常用命令行操作(启动、停止、暂停)
  • 2018-12-05mysql5.7.21解压版安装配置图文
  • 2017-05-11关于MySQL数据迁移--data目录直接替换注意事项的详解
  • 2018-12-05sql基本函数大全
  • 2018-12-05sqlserver 此数据库没有有效所有者错误的解决方法
  • 2018-12-05MySQL选择合适的引擎及引擎转换的详解

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • MySql .frm数据库文件导入的问题
    • pdo db 操作类
    • Oracle数据库安全策略分析(二)
    • MYSQL基础之连接MYSQL、修改密码、添加用户
    • 一个DDL导致MySQL主从停止问题及解决
    • MySQL存储引擎MyISAM与InnoDB的9点区别
    • 韩顺平MySQL基础视频教程的源码课件分享
    • 提升SQL Server速度 整理索引碎片
    • MySQL事务处理基础入门
    • mysql 关键词相关度排序方法详细示例分析

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有