zoukankan      html  css  js  c++  java
  • 隔离级别

    mysql,oracle,sql server中的默认事务隔离级别查看,更改

     

    未提交读(隔离事务的最低级别,只能保证不读取物理上损坏的数据)

    已提交读(数据库引擎的默认级别)

    可重复读

    可序列化(隔离事务的最高级别,事务之间完全隔离)

    可串行化比较严谨,级别高;

    MySQL

    mysql默认的事务处理级别是'REPEATABLE-READ',也就是可重复读

    1.查看当前会话隔离级别

    select @@tx_isolation;

    2.查看系统当前隔离级别

    select @@global.tx_isolation;

    3.设置当前会话隔离级别

    set session transaction isolatin level repeatable read;

    4.设置系统当前隔离级别

    set global transaction isolation level repeatable read;

    Oracle

    oracle数据库支持READ COMMITTED 和 SERIALIZABLE这两种事务隔离级别。

    默认系统事务隔离级别是READ COMMITTED,也就是读已提交

    1.查看系统默认事务隔离级别,也是当前会话隔离级别

    --首先创建一个事务
    declare
         trans_id Varchar2(100);
      begin
         trans_id := dbms_transaction.local_transaction_id( TRUE );
      end; 

    --查看事务隔离级别

    SELECT s.sid, s.serial#,

      CASE BITAND(t.flag, POWER(2, 28))
        WHEN 0 THEN 'READ COMMITTED'
        ELSE 'SERIALIZABLE'
      END AS isolation_level
    FROM v$transaction t
    JOIN v$session s ON t.addr = s.taddr AND s.sid = sys_context('USERENV', 'SID');

    SQL Server

    默认系统事务隔离级别是read committed,也就是读已提交

    1.查看系统当前隔离级别

    DBCC USEROPTIONS 

    isolation level 这一项的 Value 既是当前的隔离级别设置值

    2.设置系统当前隔离级别

    SET TRANSACTION ISOLATION LEVEL Read UnCommitted;

    其中Read UnCommitted为需要设置的值

    更改MySql的默认事务级别:

    大多数的数据库系统的默认事务隔离级别都是:Read committed

    而MySQL的默认事务隔离级别是:Repeatable Read

    我们可以采用下面这种方法查询Mysql中的当前事务隔离级别:

    然后使用命令:SET session TRANSACTION ISOLATION LEVEL Serializable;(参数可以为:Read uncommitted,Read committed,Repeatable,Serializable)

    将MySQL中的事务隔离级别改变成:Serializable,范围是当前session,即一个cmd窗口的范围。

    查看更改成功:

    注意:

    这里修改事务权限的语句是:set [ global | session ] transaction isolation level Read uncommitted | Read committed | Repeatable | Serializable;

    如果选择global,意思是此语句将应用于之后的所有session,而当前已经存在的session不受影响。

    如果选择session,意思是此语句将应用于当前session内之后的所有事务。

    如果什么都不写,意思是此语句将应用于当前session内的下一个还未开始的事务。

    图形:

  • 相关阅读:
    Java正则表达式
    FlashFXP 5.0.0官方中文破解版,附文件下载地址和破解码
    【转】推荐!国外程序员整理的Java资源大全
    有线网卡和无线网卡同时使用
    Shell脚本传递带有空格的参数
    Ubuntu 14.04下MySQL服务器和客户端的安装
    python 读取不同的列,判断然后将结果写入excel
    tps qps
    python ddt 实现数据驱动一
    JMeter入门:04Java Request实例
  • 原文地址:https://www.cnblogs.com/wyl123/p/7721773.html
Copyright © 2011-2022 走看看