gaussdb 设置数据库只读

GaussDB 设置数据库只读

Gauss没有严格意义上的只读模式,只能通过调整参数或设置事务模式可以将后续登录的SESSION或者当前事务设置为只读模式。

1. 设置数据库只读
注意,这里设置只读只对新session生效,而且数据库不需要重启也永久生效。

alter user {user_name} set default_transaction_read_only=on;

2. 设置数据库可写
注意,这里设置只读只对新session生效,而且数据库不需要重启也永久生效。

alter user {user_name} set default_transaction_read_only=off;

3. 示例

  • 设置用户只读
GAUSSDB1=# alter user user_ufo set default_transaction_read_only=on; 
ALTER ROLE
  • 杀掉用户连接
    注意用户名需要大写匹配
select pg_terminate_backend(PID) from pg_stat_activity where usename = 'USER_UFO' ;
  • 重连用户session
    重新登录即可,对于应用来说,一般是有重连机制的。
[dbadmin@cn-north3a-DBA-DB01 ~]$ gsql -h111.111.111.111 -p8635 -Uuser_ufo -dufo
Password for user benchmarksql: 
gsql (9.2.1) 
Type "help" for help. 
 
ufo=> 
ufo=> 
ufo=> select * from test; 
 ID | NAME 
----+------ 
 1  | ufo111
 2  | ufo112
(2 rows) 
  • 测试用户读写
ufo=> insert into test values ('3', 'ufo113'); 
ERROR:  cannot execute INSERT in a read-only transaction 
ufo=>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值