greenplum数据库-锁

       在数据库中有两种基本的锁类型:排它锁(Exclusive Locks,即X锁)和共享锁(Share Locks,即S锁)。当数据对象被加上排它锁时,其他的事务不能对它读取和修改。加了共享锁的数据对象可以被其他事务读取,但不能修改。数据库利用这两 种基本的锁类型来对数据库的事务进行并发控制。
greenplum数据库,基本两种锁:

  • RowExclusiveLock: 行级排他锁,不允许读取和修改。
  • AccessShareLock:共享锁,允许读取,不允许修改。

1.GP查看锁

-- 通过表名,获取该表是否被锁,然后按照lorpid字段进行升序排序
select * from gp_toolkit.gp_locks_on_relation t where t.lorrelname = '#{table_name}' order by lorpid;

多个事务同时在数据库中运行时,查看GP库所有表锁

SELECT 
l.pid,
a.datname AS database,
c.relname AS table,
l.mode AS lock_mode,
l.granted AS granted,
a.usename AS username,
a.query AS query
FROM 
pg_locks l
JOIN 
pg_stat_activity a ON l.pid = a.pid
JOIN 
pg_class c ON l.relation = c.oid

2.解锁 

-- 按照lorpid,自上而下,进行删除进程,将排他锁之前的共享锁停止后,排他锁可正常运行。
select pg_cancel_backend('#{pid}')
/* 
select pg_terminate_backend(#{pid}) 
*/


参考文章:

      https://www.jianshu.com/p/763eb183a291

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于Greenplum数据库的分布式部署,您需要遵循以下步骤: 1. 首先,确保您的系统符合Greenplum的硬件要求,并具备必要的操作系统和软件依赖。 2. 下载Greenplum数据库的安装包(greenplum-db-6.13.0-rhel7-x86_64.rpm),并将其复制到所有节点上。 3. 在每个节点上安装Greenplum数据库软件包。您可以使用以下命令进行安装: ``` rpm -ivh greenplum-db-6.13.0-rhel7-x86_64.rpm ``` 4. 创建一个主节点和多个段节点的配置文件(gpinitsystem_config),该文件指定了Greenplum数据库的分布式配置。您可以使用以下命令创建配置文件: ``` gpinitsystem -c gpinitsystem_config ``` 5. 编辑配置文件(gpinitsystem_config),指定主节点和段节点的主机名、IP地址、端口号等信息。确保所有节点都在配置文件中正确配置。 6. 在主节点上运行gpinitsystem命令以初始化Greenplum数据库集群。这将创建数据库实例并启动相关服务。您可以使用以下命令进行初始化: ``` gpinitsystem -c gpinitsystem_config ``` 7. 在每个段节点上启动Greenplum数据库服务。您可以使用以下命令启动服务: ``` gpstart -a ``` 8. 检查Greenplum数据库集群的状态,确保所有节点都已成功启动。您可以使用以下命令进行检查: ``` gpstate -a ``` 以上是Greenplum数据库的基本分布式部署步骤。请注意,这只是一个概述,并且需要根据您的特定环境进行适当的调整和配置。建议您参考Greenplum官方文档以获取更详细的部署指南和最佳实践。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值