他的回复:
-- CN 无法自动剔除1. gsql或者界面工具使用管理员用户连接CCN,执行drop node,SQL语句如下(cn_id替换成需要剔除的cn实例id比如cn_5001): SQL: DROP NODE IF EXISTS cn_id; 2. gsql连接ccn执行reload_active_coordinator刷新CN连接池 SQL: SELECT pg_catalog.reload_active_coordinator();-- CN 剔除后部分业务建连阻塞,等待视图中wait_status为“pooler create node” 第1步:等待视图中查询是否有“pooler create node”的会话,并执行查杀会话 1.1)SELECT 'EXECUTE DIRECT ON (' || a.coorname || ') $$ SELECT pg_terminate_backend(' || a.pid || ')$$;' FROM pgxc_stat_activity a, pgxc_thread_wait_status s WHERE a.query_id = s.query_id and s.wait_status like '%pooler createe conn%'; 1.2)执行2.1生成的查杀SQL第2步:在每个CN上强制执行reload pooler操作 SELECT * FROM pgxc_pool_reload();