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为需要设置的值

  • 相关阅读:
    day33-1 线程队列
    day32-4 GIL全局解释锁
    day32-3 阻塞非阻塞同步异步&异步回调
    day32-2 线程池与进程池
    day32-1 事件Event
    Chrome设置--disable-web-security解决跨域问题
    去除系统部分属性触摸是出现的色值
    初始化一个React项目
    ## normalize.css 中文版
    vue组件的3种书写形式
  • 原文地址:https://www.cnblogs.com/who-else/p/6659564.html
Copyright © 2011-2022 走看看