首页 > 其他分享 >openGauss 事务隔离说明

openGauss 事务隔离说明

时间:2024-05-14 17:00:09浏览次数:15  
标签:事务 隔离 读写操作 T1 并发 提交 openGauss

事务隔离说明

openGauss基于MVCC(多版本并发控制)并结合两阶段锁的方式进行事务管理,其特点是读写之间不阻塞。SELECT是纯读操作,UPDATE和DELETE是读写操作。

  • 读写操作和纯读操作之间并不会发生冲突,读写操作之间也不会发生冲突。每个并发事务在事务开始时创建事务快照,并发事务之间不能检测到对方的更改。

    • 读已提交隔离级别中,如果事务T1提交后,事务T2就可以看到事务T1更改的结果。
    • 可重复读级别中,如果事务T1提交事务前事务T2开始执行,则事务T1提交后,事务T2依旧看不到事务T1更改的结果,保证了一个事务开始后,查询的结果前后一致,不受其他事务的影响。
  • 读写操作,支持的是行级锁,不同的事务可以并发更新同一个表,只有更新同一行时才需等待,后发生的事务会等待先发生的事务提交后,再执行更新操作。

    • READ COMMITTED:读已提交隔离级别,事务只能读到已提交的数据而不会读到未提交的数据,这是缺省值。
    • REPEATABLE READ: 事务只能读到事务开始之前已提交的数据,不能读到未提交的数据以及事务执行期间其它并发事务提交的修改。

详情查看:https://opengauss.org

详情查看:https://docs-opengauss.osinfra.cn

标签:事务,隔离,读写操作,T1,并发,提交,openGauss
From: https://www.cnblogs.com/techbing/p/18191637

相关文章

  • openGauss 数据安全维护建议
    数据安全维护建议为保证openGauss数据库中的数据安全,避免丢失数据,非法访问数据等事故发生,请仔细阅读以下内容。避免数据被丢失建议用户规划周期性的物理备份,且对备份文件进行可靠的保存。在系统发生严重错误的情况下,可以利用备份文件,将系统恢复到备份前的状态。避免数据被非法......
  • openGauss 使用gs_restore命令导入数据
    使用gs_restore命令导入数据操作场景gs_restore是openGauss数据库提供的与gs_dump配套的导入工具。通过该工具,可将gs_dump导出的文件导入至数据库。gs_restore支持导入的文件格式包含自定义归档格式、目录归档格式和tar归档格式。gs_restore具备如下两种功能。导入至数据库......
  • openGauss 使用gs_dump和gs_dumpall命令导出数据
    使用gs_dump和gs_dumpall命令导出数据概述导出单个数据库导出所有数据库无权限角色导出数据详情查看:https://opengauss.org详情查看:https://docs-opengauss.osinfra.cn......
  • openGauss 使用gsql元命令导入数据
    使用gsql元命令导入数据gsql工具提供了元命令\copy进行数据导入。\copy命令\copy命令格式以及说明参见表1\copy元命令说明。表1\copy元命令说明语法说明\copy{table[(column_list)]|(query)}{from|to}{filename|stdin|stdout|pstdin|......
  • openGauss 使用合并方式更新和插入数据
    使用合并方式更新和插入数据在用户需要将一个表中所有的数据或大量的数据添加至现有表的场景下,openGauss提供了MERGEINTO语句通过两个表合并的方式高效地将新数据添加到现有表。MERGEINTO语句将目标表和源表中数据针对关联条件进行匹配,若关联条件匹配时对目标表进行UPDATE,关联......
  • openGauss 示例1-通过本地文件导入导出数据
    示例1:通过本地文件导入导出数据在使用JAVA语言基于openGauss进行二次开发时,可以使用CopyManager接口,通过流方式,将数据库中的数据导出到本地文件或者将本地文件导入数据库中,文件格式支持CSV、TEXT等格式。样例程序如下,执行时需要加载openGauss的JDBC驱动。importjava.sql.Conne......
  • openGauss 使用逻辑复制工具复制数据
    使用逻辑复制工具复制数据目前支持openGauss逻辑复制的工具有SDR和DRS。复制工具从openGauss抽取逻辑日志后到对端数据库回放。对于使用JDBC连接数据库的复制工具,具体代码请参考示例:逻辑复制代码示例。详情查看:https://opengauss.org详情查看:https://docs-opengauss.osinfra.cn......
  • openGauss 逻辑解码概述
    逻辑解码概述功能描述openGauss对数据复制能力的支持情况为:支持通过数据迁移工具定期向异构数据库(如Oracle等)进行数据同步,不具备实时数据复制能力。不足以支撑与异构数据库间并网运行实时数据同步的诉求。openGauss提供了逻辑解码功能,通过反解xlog的方式生成逻辑日志。目标数......
  • openGauss 逻辑复制支持DDL操作
    逻辑复制支持DDL操作功能描述Vastbase在逻辑复制过程中支持如下DDL操作:CREATE/DROPTABLE|TABLEPARTITIONCREATE/DROPINDEX注意事项只支持行存表的DDL操作。不支持列存,ustore存储引擎。在订阅端手动删除表会导致DDL同步失败,发布订阅阻塞。不支持在对表进行相......
  • openGauss 慢SQL诊断
    慢SQL诊断背景信息在SQL语句执行性能不符合预期时,可以查看SQL语句执行信息,便于事后分析SQL语句执行时的行为,从而诊断SQL语句执行出现的相关问题。前提条件数据库实例运行正常。查询SQL语句信息,需要正确设置GUC参数track_stmt_stat_level。只能用系统管理员和监控管理员权限......