我有一个postgres 9.6服务器,上面有>100个数据库。在进行大规模迁移时,我使用如下语句:
ALTER DATABASE mydatabase SET default_transaction_read_only = false;效果很好。但是,有时我会陷入这样一种状态:我不确定哪些数据库是只读的,哪些不是。我知道如何在服务器范围内查询:
SHOW default_transaction_read_only;但不是在数据库的特定级别。
发布于 2019-04-09 10:03:08
这些设置存储在pg_catalog.pg_db_role_setting系统目录中。可以搜索具有上述设置的数据库,如
SELECT datname
FROM (SELECT datname, unnest(setconfig) AS setting
FROM pg_db_role_setting
JOIN pg_database AS d ON setdatabase = d.oid) AS t
WHERE setting = 'default_transaction_read_only=false';https://dba.stackexchange.com/questions/234280
复制相似问题