postgresql 事务隔离级别 set transaction isolation level
os: centos 7.4
db: postgresql 10.11
postgresql 默认的 isolation level 为 read committed,可以调整隔离级别。
版本
# cat /etc/centos-release
CentOS Linux release 7.4.1708 (Core)
#
#
# su - postgres
Last login: Wed Jan 15 18:34:12 CST 2020 on pts/0
$
$
$ psql -c "select version();"version
----------------------------------------------------------------------------------------------------------PostgreSQL 10.11 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39), 64-bit
(1 row)
set transaction isolation level
postgres=# select name,setting from pg_settings where name like 'transaction%';name | setting
------------------------+----------------transaction_deferrable | offtransaction_isolation | read committedtransaction_read_only | off
(3 rows)postgres=# \h set transaction
Command: SET TRANSACTION
Description: set the characteristics of the current transaction
Syntax:
SET TRANSACTION transaction_mode [, ...]
SET TRANSACTION SNAPSHOT snapshot_id
SET SESSION CHARACTERISTICS AS TRANSACTION transaction_mode [, ...]where transaction_mode is one of:ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }READ WRITE | READ ONLY[ NOT ] DEFERRABLE
postgres=# set transaction isolation level serializable;
WARNING: SET TRANSACTION can only be used in transaction blocks
SET
serializable
postgres=# begin;
postgres=# set transaction isolation level serializable;
postgres=# show transaction_isolation;transaction_isolation
-----------------------serializable
(1 row)postgres=# rollback;
repeatable read
postgres=# begin;
postgres=# set transaction isolation level repeatable read;
postgres=# show transaction_isolation;transaction_isolation
-----------------------repeatable read
(1 row)postgres=# rollback;
read committed
postgres=# begin;
postgres=# set transaction isolation level read committed;
postgres=# show transaction_isolation;transaction_isolation
-----------------------read committed
(1 row)postgres=# rollback;
read uncommitted
postgres=# begin;
postgres=# set transaction isolation level read uncommitted;
postgres=# show transaction_isolation;transaction_isolation
-----------------------read uncommitted
(1 row)postgres=# rollback;
begin
postgres=# \h begin
Command: BEGIN
Description: start a transaction block
Syntax:
BEGIN [ WORK | TRANSACTION ] [ transaction_mode [, ...] ]where transaction_mode is one of:ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }READ WRITE | READ ONLY[ NOT ] DEFERRABLE
serializable
postgres=# begin transaction isolation level serializable;
postgres=# show transaction_isolation;transaction_isolation
-----------------------serializable
(1 row)postgres=# rollback;
repeatable read
postgres=# begin transaction isolation level repeatable read;
postgres=# show transaction_isolation;transaction_isolation
-----------------------repeatable read
(1 row)postgres=# rollback;
read committed
postgres=# begin transaction isolation level read committed;
postgres=# show transaction_isolation;transaction_isolation
-----------------------read committed
(1 row)postgres=# rollback;
read uncommitted
postgres=# begin transaction isolation level read uncommitted;
postgres=# show transaction_isolation;transaction_isolation
-----------------------read uncommitted
(1 row)postgres=# rollback;
参考:
http://postgres.cn/docs/10/sql-set-transaction.html
postgresql 事务隔离级别 set transaction isolation level相关推荐
- linux事务隔离级别,事务的隔离级别(Transaction isolation levels)2
READ COMMITTED READ COMMITTED这是数据库默认的隔离级别.它能保证你不能读取那张表格数据,只要有其它事务还在改变这张表格数据.可是,因为sql server在select操作 ...
- 事务的隔离级别(Transaction isolation levels)5
2019独角兽企业重金招聘Python工程师标准>>> SERIALIZABLE隔离级别可以确保,如果一个查询语句多次执行,不会有数据改变.换句话说,在一个事务里执行相同的查询语句两 ...
- pb设置Oracle事务的隔离级别,Oracle的事务隔离级别
ANSI/ISO SQL规定了四种事务隔离级别,分别是:read uncommitted,read committed,repeatable read,serializable ORACE提供了SQ9 ...
- 事务隔离级别神话与误解
在今天的文章里我想谈下SQL Server里现存的各种事务隔离级别的神话和误解.主要我会谈谈下列话题: 什么是事务隔离级别(Transaction Isolation Levels)? NOLOCK从 ...
- Sql Server事务+隔离级别+阻塞+死锁
背景 分析事务的执行过程 写在前面 摘录自https://www.cnblogs.com/jackson0714/p/TSQLFundamentals_08.html link 分析当前查询中的锁 s ...
- SQL Server事务隔离级别详解
SQL Server事务隔离级别详解 标签: SQL SEERVER/MSSQL SERVER/SQL/事务隔离级别选项/设置数据库事务级别 SQL 事务隔离级别 概述 隔离级别用于决定如果控制并发用 ...
- 五分钟搞清楚MySQL事务隔离级别
好久没碰数据库了,只是想起自己当时在搞数据库的时候在事务隔离级别这块老是卡,似懂非懂的.现在想把这块整理出来,尽量用最简洁的语言描述出来,供新人参考. 首先创建一个表account.创建表的过程略过( ...
- mysql不支持python3吗_MySQL的4种事务隔离级别你还不清楚吗?
前言 现在想把数据库这块整理出来,尽量用最简洁的语言描述出来,供新人参考. 首先创建一个表 account.创建表的过程略过(由于 InnoDB 存储引擎支持事务,所以将表的存储引擎设置为 InnoD ...
- sequelize怎么看插入的数据成功不成功_MySQL的4种事务隔离级别你还不清楚吗?
前言 现在想把数据库这块整理出来,尽量用最简洁的语言描述出来,供新人参考. 首先创建一个表 account.创建表的过程略过(由于 InnoDB 存储引擎支持事务,所以将表的存储引擎设置为 InnoD ...
最新文章
- 搞懂限流算法这一篇就够了 No.154
- 第十四篇:有概率的上下文无关语法Probabilistic Context-Free Grammar
- 【iOS开发-8】UIButton类型属性简单归纳以及自定义按钮的设置
- Design Pattern Strategy C
- 左耳朵耗子论微服务 Serverless 及 FaaS | GIAC 访谈
- 释疑の资源短缺DATASET_CANT_CLOSE
- AIX上报:“Shell will time out in 60 seconds” 解决办法
- 在类模板的声明和定义中把.h与.cpp分离
- 64位的Mac OS X也有Windows.Forms了
- Prime Distance On Tree-树分治+FFT
- window 2008+apache2.4.4+php5.5+mysql-5.6.12+phpmyadmin4.0.4.1安装过程(参考他人文章基础上加上自己遇到的问题)...
- [并非笑话]当Borland的工程师向微软寻求技术支持时
- codeM美团编程大赛初赛B轮E题
- php 按行读取并分割字符串
- 南卫理公会大学 计算机排名,2020年南卫理公会大学Times世界排名
- linux安装pyodbc模块,Linux下安装pyodbc报错 error: command 'gcc' failed with exit status 1
- 苹果屏蔽更新描述文件_无需越狱,屏蔽 iOS 更新的描述文件来了
- 【EverydaySport】健身笔记——人体肌肉分解图
- 1039: 绝对值最大(C语言)
- jQuery 案例-图片抽奖
热门文章
- Java物品清单结算
- Tikz学习笔记(一)
- 电商b2b_企业对企业– B2B | 第2部分
- B2B2C商城系统以及优点
- Codeforces Round #533(Div. 2) A.Salem and Sticks
- 使用联通云OSS小程序直传
- 报错:The media could not be loaded, either because the server or network failed or ...
- 《和平精英》与永久自行车界合作
- Catherine 成长记第一篇
- git修改已提交的信息