plv8
PL/JavaScript (v8) 可信过程程序语言
Module:
Categories:
扩展总览
PIGSTY 第三方扩展: plv8
: PL/JavaScript (v8) 可信过程程序语言
基本信息
- 扩展编号: 3010
- 扩展名称:
plv8
- 标准包名:
plv8
- 扩展类目:
LANG
- 开源协议: PostgreSQL
- 官方网站: https://github.com/plv8/plv8
- 编程语言: C++
- 其他标签: 无
- 备注信息: 无
元数据
- 默认版本: 3.2.3
- PG大版本:
17
,16
,15
,14
,13
- 动态加载: 无需动态加载
- 需要DDL: 需要执行
CREATE EXTENSION
DDL - 可重定位: 可以重定位安装至其他模式下
- 信任程度: 未受信任,创建扩展需要超级用户权限
- 所需模式:
pg_catalog
- 所需扩展: 无
软件包
- RPM仓库:PIGSTY
- RPM包名:
plv8_$v*
- RPM版本:
3.2.3
- RPM依赖:无
- DEB仓库:PIGSTY
- DEB包名:
postgresql-$v-plv8
- DEB版本:
3.2.3
- DEB依赖:无
最新版本
系统 | 架构 | PG17 | PG16 | PG15 | PG14 | PG13 |
---|---|---|---|---|---|---|
el8 |
x86_64 |
plv8_17 PIGSTY 3.2.3 |
plv8_16 PIGSTY 3.2.3 |
plv8_15 PIGSTY 3.2.3 |
plv8_14 PIGSTY 3.2.3 |
plv8_13 PIGSTY 3.2.3 |
el8 |
aarch64 |
plv8_17 PIGSTY 3.2.3 |
plv8_16 PIGSTY 3.2.3 |
plv8_15 PIGSTY 3.2.3 |
plv8_14 PIGSTY 3.2.3 |
plv8_13 PIGSTY 3.2.3 |
el9 |
x86_64 |
plv8_17 PIGSTY 3.2.3 |
plv8_16 PIGSTY 3.2.3 |
plv8_15 PIGSTY 3.2.3 |
plv8_14 PIGSTY 3.2.3 |
plv8_13 PIGSTY 3.2.3 |
el9 |
aarch64 |
plv8_17 PIGSTY 3.2.3 |
plv8_16 PIGSTY 3.2.3 |
plv8_15 PIGSTY 3.2.3 |
plv8_14 PIGSTY 3.2.3 |
plv8_13 PIGSTY 3.2.3 |
d12 |
x86_64 |
postgresql-17-plv8 PIGSTY 3.2.3 |
postgresql-16-plv8 PIGSTY 3.2.3 |
postgresql-15-plv8 PIGSTY 3.2.3 |
postgresql-14-plv8 PIGSTY 3.2.3 |
postgresql-13-plv8 PIGSTY 3.2.3 |
d12 |
aarch64 |
postgresql-17-plv8 PIGSTY 3.2.3 |
postgresql-16-plv8 PIGSTY 3.2.3 |
postgresql-15-plv8 PIGSTY 3.2.3 |
postgresql-14-plv8 PIGSTY 3.2.3 |
postgresql-13-plv8 PIGSTY 3.2.3 |
u22 |
x86_64 |
postgresql-17-plv8 PIGSTY 3.2.3 |
postgresql-16-plv8 PIGSTY 3.2.3 |
postgresql-15-plv8 PIGSTY 3.2.3 |
postgresql-14-plv8 PIGSTY 3.2.3 |
postgresql-13-plv8 PIGSTY 3.2.3 |
u22 |
aarch64 |
postgresql-17-plv8 PIGSTY 3.2.3 |
postgresql-16-plv8 PIGSTY 3.2.3 |
postgresql-15-plv8 PIGSTY 3.2.3 |
postgresql-14-plv8 PIGSTY 3.2.3 |
postgresql-13-plv8 PIGSTY 3.2.3 |
u24 |
x86_64 |
postgresql-17-plv8 PIGSTY 3.2.3 |
postgresql-16-plv8 PIGSTY 3.2.3 |
postgresql-15-plv8 PIGSTY 3.2.3 |
postgresql-14-plv8 PIGSTY 3.2.3 |
postgresql-13-plv8 PIGSTY 3.2.3 |
u24 |
aarch64 |
postgresql-17-plv8 PIGSTY 3.2.3 |
postgresql-16-plv8 PIGSTY 3.2.3 |
postgresql-15-plv8 PIGSTY 3.2.3 |
postgresql-14-plv8 PIGSTY 3.2.3 |
postgresql-13-plv8 PIGSTY 3.2.3 |
扩展安装
使用 pig
命令行工具安装 plv8
扩展:
pig ext install plv8
使用 Pigsty剧本 安装 plv8 扩展:
./pgsql.yml -t pg_extension -e '{"pg_extensions": ["plv8"]}' # -l <集群名>
dnf install plv8_17*;
dnf install plv8_16*;
dnf install plv8_15*;
dnf install plv8_14*;
dnf install plv8_13*;
apt install postgresql-17-plv8;
apt install postgresql-16-plv8;
apt install postgresql-15-plv8;
apt install postgresql-14-plv8;
apt install postgresql-13-plv8;
使用以下 SQL 命令在已经安装此扩展插件的 PG 集群上 启用 plv8
扩展:
CREATE EXTENSION plv8;
使用方法
CREATE EXTENSION plv8;
SELECT plv8_version();
SELECT plv8_info();
DO $$ plv8.elog(NOTICE, plv8.version); $$ LANGUAGE plv8;
Example:
CREATE FUNCTION plv8_test(keys TEXT[], vals TEXT[]) RETURNS JSON AS $$
var o = {};
for(var i=0; i<keys.length; i++){
o[keys[i]] = vals[i];
}
return o;
$$ LANGUAGE plv8 IMMUTABLE STRICT;
SELECT plv8_test(ARRAY['name', 'age'], ARRAY['Tom', '29']);