云数据库 GAUSSDB-事务:transaction_read_only

时间:2024-11-13 14:45:07

transaction_read_only

参数说明:设置当前事务是否为只读事务。对于开启的新事务,该参数在数据库恢复过程中或者在备机里,固定为on;否则在CDB里,固定为default_transaction_read_only的值。该参数可在PDB级别设置, 设置pdb_transaction_read_only后,以pdb_transaction_read_only的值为准。

参数类型:布尔型

参数单位:

取值范围:

  • on:表示设置当前事务为只读事务。
  • off:表示设置当前事务为读写事务。

默认值:off。在PDB场景内,若未设置该参数,则继承来自全局的设置。

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。

设置建议:推荐使用默认值。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。

  • 当dbcompatibility='M'时,查询tx_read_only和查询transaction_read_only效果相同。
  • 当dbcompatibility='M'且m_format_dev_version = 's2'时,执行“SET [local|session|@@session.] transaction_read_only= value;”会修改会话级事务特性。即同时修改default_transaction_read_only参数值。
  • 当dbcompatibility='M'且m_format_dev_version = 's2'时,执行“SET @@transaction_read_only= value;”用来设置下一个事务的访问模式,并且不允许在显式事务内使用;如果隐式事务报错,即单个SQL语句报错,继续保持下一个事务特性。
support.huaweicloud.com/centralized-devg-v8-gaussdb/gaussdb-40-0369.html