From 62e9942492c981b7ec3110732a7d7058812ff4f8 Mon Sep 17 00:00:00 2001 From: yuan li Date: Thu, 4 Sep 2025 16:11:24 +0800 Subject: [PATCH 1/5] Add new documents for the extensions pgroonga ddlx pgrouting --- CN/modules/ROOT/nav.adoc | 3 + CN/modules/ROOT/pages/v4.5/34.adoc | 101 +++++++++++++++++++++++++++++ CN/modules/ROOT/pages/v4.5/35.adoc | 44 +++++++++++++ CN/modules/ROOT/pages/v4.5/36.adoc | 56 ++++++++++++++++ 4 files changed, 204 insertions(+) create mode 100644 CN/modules/ROOT/pages/v4.5/34.adoc create mode 100644 CN/modules/ROOT/pages/v4.5/35.adoc create mode 100644 CN/modules/ROOT/pages/v4.5/36.adoc diff --git a/CN/modules/ROOT/nav.adoc b/CN/modules/ROOT/nav.adoc index 55ea5b11..545800a0 100644 --- a/CN/modules/ROOT/nav.adoc +++ b/CN/modules/ROOT/nav.adoc @@ -14,6 +14,9 @@ * IvorySQL生态 ** xref:v4.5/11.adoc[PostGIS] ** xref:v4.5/12.adoc[pgvector] +** xref:v4.5/34.adoc[PGroonga] +** xref:v4.5/35.adoc[pgddl (DDL Extractor)] +** xref:v4.5/36.adoc[pgRouting] * IvorySQL架构设计 ** 查询处理 *** xref:v4.5/31.adoc[双parser] diff --git a/CN/modules/ROOT/pages/v4.5/34.adoc b/CN/modules/ROOT/pages/v4.5/34.adoc new file mode 100644 index 00000000..e7393379 --- /dev/null +++ b/CN/modules/ROOT/pages/v4.5/34.adoc @@ -0,0 +1,101 @@ + +:sectnums: +:sectnumlevels: 5 + += PGroonga + +== 概述 +PostgreSQL 内置了全文搜索功能,但在处理​​大规模数据​​、​​复杂查询​​以及​​非英语语言(特别是中日韩等 CJK 语言)​​ 时,其功能和性能可能无法满足高性能应用的需求。 + +PGroonga 应运而生,它是一个 PostgreSQL 的扩展插件,将 ​​Groonga​​ 这款高性能的全功能全文搜索引擎与 PostgreSQL 数据库深度融合。Groonga 本身是一个优秀的开源搜索引擎,以其极致的速度和丰富的功能著称,尤其擅长处理多语言文本。PGroonga 的使命就是将 Groonga 的强大能力无缝地带入 PostgreSQL 的世界,为用户提供远超原生全文搜索的体验。 + +== 安装 +根据开发环境,用户可从 https://pgroonga.github.io/install[PGroonga安装] 页面选择适合自己的方式进行PGroonga安装。 + +=== 源码安装 +除PGroonga社区提供的安装方式以外,IvorySQL社区也提供了源码安装方式,源码安装环境为 Ubuntu 24.04(x86_64)。 + +[TIP] +环境中已经安装了IvorySQL4.6及以上版本,安装路径为/usr/local/ivorysql/ivorysql-4 + +==== 安装 groonga + +** 安装依赖 kytea +``` +git clone https://github.com/neubig/kytea.git +autoreconf -i +./configure +make +sudo make install +``` + +** 安装依赖 libzmq +``` +从https://github.com/zeromq/libzmq/releases/tag/v4.3.5 下载zeromq-4.3.5.tar.gz +tar xvf zeromq-4.3.5.tar.gz +cd zeromq-4.3.5/ +./configure +make +sudo make install +``` + +** 下载 groonga包,安装指定依赖 +``` +wget https://packages.groonga.org/source/groonga/groonga-latest.tar.gz +tar xvf groonga-15.1.5.tar.gz +cd groonga-15.1.5 +#运行这个脚本安装依赖,支持apt和dnf包管理工具 +./ setup.sh +``` + +** 编译安装 +``` +# -S 指定groonga源码目录, -B 指定build目录,这个目录是个源码目录之外的一个只用于build的目录 +cmake -S /home/ivorysql/groonga-15.1.5 -B /home/ivorysql/groonga_build --preset=release-maximum +cmake --build /home/ivorysql/groonga_build +sudo cmake --install /home/ivorysql/groonga_build +# 更新动态链接库缓存 +sudo ldconfig +``` + +** 验证 groonga安装成功 +``` +$ groonga --version +Groonga 15.1.5 [Linux,x86_64,utf8,match-escalation-threshold=0,nfkc,mecab,message-pack,mruby,onigmo,zlib,lz4,zstandard,epoll,apache-arrow,xxhash,blosc,bfloat16,h3,simdjson,llama.cpp] +``` + +==== 安装 pgroonga +``` +wget https://packages.groonga.org/source/pgroonga/pgroonga-4.0.1.tar.gz +tar xvf pgroonga-4.0.1.tar.gz +cd pgroonga-4.0.1 +``` + +编译PGroonga,有个选项:HAVE_MSGPACK=1,它是用于支持WAL,使用这个选项需要安装msgpack-c 1.4.1或者更高版本。在基于Debian的平台使用libmsgpack-dev包,在CentOS 7上用msgpack-devel +``` +#安装依赖 +sudo apt install libmsgpack-dev +``` + +运行make前确保pg_config命令的路径在PATH环境变量里 +``` +make HAVE_MSGPACK=1 +make install +``` + +== 创建Extension并确认PGroonga版本 + +psql 连接到数据库,执行如下命令: +``` +ivorysql=# CREATE extension pgroonga; +CREATE EXTENSION + +ivorysql=# SELECT * FROM pg_available_extensions WHERE name = 'pgroonga'; + name | default_version | installed_version | comment +---------+-----------------+-------------------+------------------------------------------------------------------------------- + pgroonga| 4.0.1 | 4.0.1 | Super fast and all languages supported full text search index based on Groonga +(1 row) +``` + +== 使用 +关于PGroonga的使用,请参阅 https://pgroonga.github.io/tutorial[PGroonga官方文档] \ No newline at end of file diff --git a/CN/modules/ROOT/pages/v4.5/35.adoc b/CN/modules/ROOT/pages/v4.5/35.adoc new file mode 100644 index 00000000..f044f115 --- /dev/null +++ b/CN/modules/ROOT/pages/v4.5/35.adoc @@ -0,0 +1,44 @@ + +:sectnums: +:sectnumlevels: 5 + += pgddl (DDL Extractor) + +== 概述 +pgddl 是一个专为 PostgreSQL 数据库设计的 SQL 函数扩展,它能够直接从数据库系统目录中生成清晰、格式化的 SQL DDL (数据定义语言) 脚本,例如 CREATE TABLE 或 ALTER FUNCTION。它解决了 PostgreSQL 原生缺乏类似 SHOW CREATE TABLE 命令的问题,让用户无需借助外部工具(如 pg_dump)即可在纯 SQL 环境中轻松获取对象的创建语句。 + +该扩展通过一组简单的 SQL 函数提供了一套完整的解决方案,其优势包括:仅需使用 SQL 查询即可操作、支持通过 WHERE 子句灵活筛选对象、并能智能处理对象之间的依赖关系,生成包含 Drop 和 Create 步骤的完整脚本。这使得它特别适用于数据库变更管理、升级脚本编写和结构审计等场景。 + +需要注意的是,ddlx 仍在发展中,可能尚未覆盖所有 PostgreSQL 对象类型和高级选项。生成的脚本建议始终在非生产环境中先行检查和测试,以确保其正确性与安全性。 + +== 安装 + +[TIP] +环境中已经安装了IvorySQL4.6及以上版本,安装路径为/usr/local/ivorysql/ivorysql-4 + +=== 源码安装 +从https://github.com/lacanoid/pgddl/releases/tag/0.20 下载pgddl-0.20.tar.gz,解压缩。 + +``` +cd pgddl-0.20 +# 设置PG_CONFIG环境变量值为pg_config路径,eg:/usr/local/ivorysql/ivorysql-4/bin/pg_config +make PG_CONFIG=/path/to/pg_config +make PG_CONFIG=/path/to/pg_config install +``` + +== 创建Extension并确认ddlx版本 + +psql 连接到数据库,执行如下命令: +``` +ivorysql=# CREATE extension ddlx; +CREATE EXTENSION + +ivorysql=# SELECT * FROM pg_available_extensions WHERE name = 'ddlx'; + name | default_version | installed_version | comment +------+-----------------+-------------------+------------------------- + ddlx | 0.20 | 0.20 | DDL eXtractor functions +(1 row) +``` + +== 使用 +关于pgddl的使用,请参阅 https://github.com/lacanoid/pgddl[ddlx官方文档] \ No newline at end of file diff --git a/CN/modules/ROOT/pages/v4.5/36.adoc b/CN/modules/ROOT/pages/v4.5/36.adoc new file mode 100644 index 00000000..b9d793cb --- /dev/null +++ b/CN/modules/ROOT/pages/v4.5/36.adoc @@ -0,0 +1,56 @@ + +:sectnums: +:sectnumlevels: 5 + += pgRouting + +== 概述 +pgRouting 是一个基于 PostgreSQL/PostGIS 数据库构建的开源地理空间路由扩展库。它为数据库赋予了强大的网络分析功能,使其能够处理复杂的路径规划与图论计算问题,例如计算两点之间的最短路径、执行旅行推销员(TSP)分析或计算服务区范围等。它将路由算法直接嵌入到数据库中,从而避免了在应用层进行复杂的数据传输与计算。 + +该扩展的核心优势在于能够利用 PostgreSQL 强大的数据管理能力和 PostGIS 丰富的空间函数,直接在数据库内部对空间网络数据执行高效计算。这不仅简化了应用程序的开发流程,还通过减少数据移动大幅提升了大规模网络分析的性能。 + +pgRouting 广泛应用于物流配送、交通导航、网络分析、城市规划及供应链管理等多个领域。其开源特性吸引了全球开发者持续的贡献与完善,使其成为空间数据库领域进行路径分析和网络求解的首选工具之一。 + +== 安装 + +[TIP] +环境中已经安装了IvorySQL4.6及以上版本,安装路径为/usr/local/ivorysql/ivorysql-4 + +=== 源码安装 + +** 安装依赖 +对perl有依赖,perl一般在装IvorySQL时已经装上了,这里不用再装 +CMake版本要求 >= 3.12, Boost版本 >= 1.56 +``` +#安装依赖 +sudo apt install cmake libboost-all-dev +``` + +** 编译安装 +``` +wget https://github.com/pgRouting/pgrouting/releases/download/v3.5.1/pgrouting-3.5.1.tar.gz +tar xvf pgrouting-3.5.1.tar.gz +cd pgrouting-3.5.1 +mkdir build +cd build +cmake .. -DPOSTGRESQL_PG_CONFIG=/path/to/pg_config # eg: /usr/local/ivorysql/ivorysql-4/bin/pg_config +make +sudo make install +``` + +== 创建Extension并确认ddlx版本 + +psql 连接到数据库,执行如下命令: +``` +ivorysql=# CREATE extension pgrouting; +CREATE EXTENSION + +ivorysql=# SELECT * FROM pg_available_extensions WHERE name = 'pgrouting'; + name | default_version | installed_version | comment +-----------+-----------------+-------------------+--------------------- + pgrouting | 3.5.1 | | pgRouting Extension +(1 row) +``` + +== 使用 +关于pgRouting的使用,请参阅 https://docs.pgrouting.org/[pgRouting官方文档] \ No newline at end of file From 0daf5fe8269d2bbff53630b9310f2adf9d9cc43e Mon Sep 17 00:00:00 2001 From: yuan li Date: Fri, 5 Sep 2025 17:21:45 +0800 Subject: [PATCH 2/5] Add English version of the extension documents and new ref to v4.6 --- CN/modules/ROOT/nav.adoc | 68 ++++++------ CN/modules/ROOT/pages/{v4.5 => v4.6}/1.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/10.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/11.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/12.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/14.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/15.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/16.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/17.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/18.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/19.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/2.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/20.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/21.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/22.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/23.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/24.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/25.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/26.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/27.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/28.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/29.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/3.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/30.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/31.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/32.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/33.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/34.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/35.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/36.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/4.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/5.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/6.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/7.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/8.adoc | 0 CN/modules/ROOT/pages/{v4.5 => v4.6}/9.adoc | 0 .../ROOT/pages/{v4.5 => v4.6}/welcome.adoc | 0 EN/modules/ROOT/nav.adoc | 65 ++++++------ EN/modules/ROOT/pages/{v4.5 => v4.6}/1.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/10.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/11.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/12.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/14.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/15.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/16.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/17.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/18.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/19.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/2.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/20.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/21.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/22.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/23.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/24.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/25.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/26.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/27.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/28.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/29.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/3.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/30.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/31.adoc | 0 EN/modules/ROOT/pages/v4.6/34.adoc | 100 ++++++++++++++++++ EN/modules/ROOT/pages/v4.6/35.adoc | 43 ++++++++ EN/modules/ROOT/pages/v4.6/36.adoc | 55 ++++++++++ EN/modules/ROOT/pages/{v4.5 => v4.6}/4.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/5.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/6.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/7.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/8.adoc | 0 EN/modules/ROOT/pages/{v4.5 => v4.6}/9.adoc | 0 .../ROOT/pages/{v4.5 => v4.6}/welcome.adoc | 0 72 files changed, 266 insertions(+), 65 deletions(-) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/1.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/10.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/11.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/12.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/14.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/15.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/16.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/17.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/18.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/19.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/2.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/20.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/21.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/22.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/23.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/24.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/25.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/26.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/27.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/28.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/29.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/3.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/30.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/31.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/32.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/33.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/34.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/35.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/36.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/4.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/5.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/6.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/7.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/8.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/9.adoc (100%) rename CN/modules/ROOT/pages/{v4.5 => v4.6}/welcome.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/1.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/10.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/11.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/12.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/14.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/15.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/16.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/17.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/18.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/19.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/2.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/20.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/21.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/22.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/23.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/24.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/25.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/26.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/27.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/28.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/29.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/3.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/30.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/31.adoc (100%) create mode 100644 EN/modules/ROOT/pages/v4.6/34.adoc create mode 100644 EN/modules/ROOT/pages/v4.6/35.adoc create mode 100644 EN/modules/ROOT/pages/v4.6/36.adoc rename EN/modules/ROOT/pages/{v4.5 => v4.6}/4.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/5.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/6.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/7.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/8.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/9.adoc (100%) rename EN/modules/ROOT/pages/{v4.5 => v4.6}/welcome.adoc (100%) diff --git a/CN/modules/ROOT/nav.adoc b/CN/modules/ROOT/nav.adoc index 545800a0..2ae0655c 100644 --- a/CN/modules/ROOT/nav.adoc +++ b/CN/modules/ROOT/nav.adoc @@ -1,41 +1,41 @@ -* xref:v4.5/welcome.adoc[欢迎] -* xref:v4.5/1.adoc[发行说明] -* xref:v4.5/2.adoc[关于IvorySQL] +* xref:v4.6/welcome.adoc[欢迎] +* xref:v4.6/1.adoc[发行说明] +* xref:v4.6/2.adoc[关于IvorySQL] * IvorySQL入门 -** xref:v4.5/3.adoc[快速开始] -** xref:v4.5/4.adoc[日常监控] -** xref:v4.5/5.adoc[日常维护] +** xref:v4.6/3.adoc[快速开始] +** xref:v4.6/4.adoc[日常监控] +** xref:v4.6/5.adoc[日常维护] * IvorySQL高级 -** xref:v4.5/6.adoc[安装指南] -** xref:v4.5/7.adoc[集群搭建] -** xref:v4.5/8.adoc[开发者指南] -** xref:v4.5/9.adoc[运维管理指南] -** xref:v4.5/10.adoc[迁移指南] +** xref:v4.6/6.adoc[安装指南] +** xref:v4.6/7.adoc[集群搭建] +** xref:v4.6/8.adoc[开发者指南] +** xref:v4.6/9.adoc[运维管理指南] +** xref:v4.6/10.adoc[迁移指南] * IvorySQL生态 -** xref:v4.5/11.adoc[PostGIS] -** xref:v4.5/12.adoc[pgvector] -** xref:v4.5/34.adoc[PGroonga] -** xref:v4.5/35.adoc[pgddl (DDL Extractor)] -** xref:v4.5/36.adoc[pgRouting] +** xref:v4.6/11.adoc[PostGIS] +** xref:v4.6/12.adoc[pgvector] +** xref:v4.6/34.adoc[PGroonga] +** xref:v4.6/35.adoc[pgddl (DDL Extractor)] +** xref:v4.6/36.adoc[pgRouting] * IvorySQL架构设计 ** 查询处理 -*** xref:v4.5/31.adoc[双parser] +*** xref:v4.6/31.adoc[双parser] ** 兼容框架 -*** xref:v4.5/30.adoc[initdb过程] +*** xref:v4.6/30.adoc[initdb过程] * Oracle兼容功能列表 -** xref:v4.5/14.adoc[1、框架设计] -** xref:v4.5/15.adoc[2、GUC框架] -** xref:v4.5/16.adoc[3、大小写转换] -** xref:v4.5/17.adoc[4、双模式设计] -** xref:v4.5/18.adoc[5、兼容Oracle like] -** xref:v4.5/19.adoc[6、兼容Oracle匿名块] -** xref:v4.5/20.adoc[7、兼容Oracle函数与存储过程] -** xref:v4.5/21.adoc[8、内置数据类型与内置函数] -** xref:v4.5/22.adoc[9、新增Oracle兼容模式的端口与IP] -** xref:v4.5/26.adoc[10、XML函数] -** xref:v4.5/27.adoc[11、兼容Oracle sequence] -** xref:v4.5/28.adoc[12、包] -** xref:v4.5/29.adoc[13、不可见列] -* xref:v4.5/32.adoc[社区贡献指南] -* xref:v4.5/24.adoc[工具参考] -* xref:v4.5/25.adoc[FAQ] \ No newline at end of file +** xref:v4.6/14.adoc[1、框架设计] +** xref:v4.6/15.adoc[2、GUC框架] +** xref:v4.6/16.adoc[3、大小写转换] +** xref:v4.6/17.adoc[4、双模式设计] +** xref:v4.6/18.adoc[5、兼容Oracle like] +** xref:v4.6/19.adoc[6、兼容Oracle匿名块] +** xref:v4.6/20.adoc[7、兼容Oracle函数与存储过程] +** xref:v4.6/21.adoc[8、内置数据类型与内置函数] +** xref:v4.6/22.adoc[9、新增Oracle兼容模式的端口与IP] +** xref:v4.6/26.adoc[10、XML函数] +** xref:v4.6/27.adoc[11、兼容Oracle sequence] +** xref:v4.6/28.adoc[12、包] +** xref:v4.6/29.adoc[13、不可见列] +* xref:v4.6/32.adoc[社区贡献指南] +* xref:v4.6/24.adoc[工具参考] +* xref:v4.6/25.adoc[FAQ] \ No newline at end of file diff --git a/CN/modules/ROOT/pages/v4.5/1.adoc b/CN/modules/ROOT/pages/v4.6/1.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/1.adoc rename to CN/modules/ROOT/pages/v4.6/1.adoc diff --git a/CN/modules/ROOT/pages/v4.5/10.adoc b/CN/modules/ROOT/pages/v4.6/10.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/10.adoc rename to CN/modules/ROOT/pages/v4.6/10.adoc diff --git a/CN/modules/ROOT/pages/v4.5/11.adoc b/CN/modules/ROOT/pages/v4.6/11.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/11.adoc rename to CN/modules/ROOT/pages/v4.6/11.adoc diff --git a/CN/modules/ROOT/pages/v4.5/12.adoc b/CN/modules/ROOT/pages/v4.6/12.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/12.adoc rename to CN/modules/ROOT/pages/v4.6/12.adoc diff --git a/CN/modules/ROOT/pages/v4.5/14.adoc b/CN/modules/ROOT/pages/v4.6/14.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/14.adoc rename to CN/modules/ROOT/pages/v4.6/14.adoc diff --git a/CN/modules/ROOT/pages/v4.5/15.adoc b/CN/modules/ROOT/pages/v4.6/15.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/15.adoc rename to CN/modules/ROOT/pages/v4.6/15.adoc diff --git a/CN/modules/ROOT/pages/v4.5/16.adoc b/CN/modules/ROOT/pages/v4.6/16.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/16.adoc rename to CN/modules/ROOT/pages/v4.6/16.adoc diff --git a/CN/modules/ROOT/pages/v4.5/17.adoc b/CN/modules/ROOT/pages/v4.6/17.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/17.adoc rename to CN/modules/ROOT/pages/v4.6/17.adoc diff --git a/CN/modules/ROOT/pages/v4.5/18.adoc b/CN/modules/ROOT/pages/v4.6/18.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/18.adoc rename to CN/modules/ROOT/pages/v4.6/18.adoc diff --git a/CN/modules/ROOT/pages/v4.5/19.adoc b/CN/modules/ROOT/pages/v4.6/19.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/19.adoc rename to CN/modules/ROOT/pages/v4.6/19.adoc diff --git a/CN/modules/ROOT/pages/v4.5/2.adoc b/CN/modules/ROOT/pages/v4.6/2.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/2.adoc rename to CN/modules/ROOT/pages/v4.6/2.adoc diff --git a/CN/modules/ROOT/pages/v4.5/20.adoc b/CN/modules/ROOT/pages/v4.6/20.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/20.adoc rename to CN/modules/ROOT/pages/v4.6/20.adoc diff --git a/CN/modules/ROOT/pages/v4.5/21.adoc b/CN/modules/ROOT/pages/v4.6/21.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/21.adoc rename to CN/modules/ROOT/pages/v4.6/21.adoc diff --git a/CN/modules/ROOT/pages/v4.5/22.adoc b/CN/modules/ROOT/pages/v4.6/22.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/22.adoc rename to CN/modules/ROOT/pages/v4.6/22.adoc diff --git a/CN/modules/ROOT/pages/v4.5/23.adoc b/CN/modules/ROOT/pages/v4.6/23.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/23.adoc rename to CN/modules/ROOT/pages/v4.6/23.adoc diff --git a/CN/modules/ROOT/pages/v4.5/24.adoc b/CN/modules/ROOT/pages/v4.6/24.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/24.adoc rename to CN/modules/ROOT/pages/v4.6/24.adoc diff --git a/CN/modules/ROOT/pages/v4.5/25.adoc b/CN/modules/ROOT/pages/v4.6/25.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/25.adoc rename to CN/modules/ROOT/pages/v4.6/25.adoc diff --git a/CN/modules/ROOT/pages/v4.5/26.adoc b/CN/modules/ROOT/pages/v4.6/26.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/26.adoc rename to CN/modules/ROOT/pages/v4.6/26.adoc diff --git a/CN/modules/ROOT/pages/v4.5/27.adoc b/CN/modules/ROOT/pages/v4.6/27.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/27.adoc rename to CN/modules/ROOT/pages/v4.6/27.adoc diff --git a/CN/modules/ROOT/pages/v4.5/28.adoc b/CN/modules/ROOT/pages/v4.6/28.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/28.adoc rename to CN/modules/ROOT/pages/v4.6/28.adoc diff --git a/CN/modules/ROOT/pages/v4.5/29.adoc b/CN/modules/ROOT/pages/v4.6/29.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/29.adoc rename to CN/modules/ROOT/pages/v4.6/29.adoc diff --git a/CN/modules/ROOT/pages/v4.5/3.adoc b/CN/modules/ROOT/pages/v4.6/3.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/3.adoc rename to CN/modules/ROOT/pages/v4.6/3.adoc diff --git a/CN/modules/ROOT/pages/v4.5/30.adoc b/CN/modules/ROOT/pages/v4.6/30.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/30.adoc rename to CN/modules/ROOT/pages/v4.6/30.adoc diff --git a/CN/modules/ROOT/pages/v4.5/31.adoc b/CN/modules/ROOT/pages/v4.6/31.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/31.adoc rename to CN/modules/ROOT/pages/v4.6/31.adoc diff --git a/CN/modules/ROOT/pages/v4.5/32.adoc b/CN/modules/ROOT/pages/v4.6/32.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/32.adoc rename to CN/modules/ROOT/pages/v4.6/32.adoc diff --git a/CN/modules/ROOT/pages/v4.5/33.adoc b/CN/modules/ROOT/pages/v4.6/33.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/33.adoc rename to CN/modules/ROOT/pages/v4.6/33.adoc diff --git a/CN/modules/ROOT/pages/v4.5/34.adoc b/CN/modules/ROOT/pages/v4.6/34.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/34.adoc rename to CN/modules/ROOT/pages/v4.6/34.adoc diff --git a/CN/modules/ROOT/pages/v4.5/35.adoc b/CN/modules/ROOT/pages/v4.6/35.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/35.adoc rename to CN/modules/ROOT/pages/v4.6/35.adoc diff --git a/CN/modules/ROOT/pages/v4.5/36.adoc b/CN/modules/ROOT/pages/v4.6/36.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/36.adoc rename to CN/modules/ROOT/pages/v4.6/36.adoc diff --git a/CN/modules/ROOT/pages/v4.5/4.adoc b/CN/modules/ROOT/pages/v4.6/4.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/4.adoc rename to CN/modules/ROOT/pages/v4.6/4.adoc diff --git a/CN/modules/ROOT/pages/v4.5/5.adoc b/CN/modules/ROOT/pages/v4.6/5.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/5.adoc rename to CN/modules/ROOT/pages/v4.6/5.adoc diff --git a/CN/modules/ROOT/pages/v4.5/6.adoc b/CN/modules/ROOT/pages/v4.6/6.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/6.adoc rename to CN/modules/ROOT/pages/v4.6/6.adoc diff --git a/CN/modules/ROOT/pages/v4.5/7.adoc b/CN/modules/ROOT/pages/v4.6/7.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/7.adoc rename to CN/modules/ROOT/pages/v4.6/7.adoc diff --git a/CN/modules/ROOT/pages/v4.5/8.adoc b/CN/modules/ROOT/pages/v4.6/8.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/8.adoc rename to CN/modules/ROOT/pages/v4.6/8.adoc diff --git a/CN/modules/ROOT/pages/v4.5/9.adoc b/CN/modules/ROOT/pages/v4.6/9.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/9.adoc rename to CN/modules/ROOT/pages/v4.6/9.adoc diff --git a/CN/modules/ROOT/pages/v4.5/welcome.adoc b/CN/modules/ROOT/pages/v4.6/welcome.adoc similarity index 100% rename from CN/modules/ROOT/pages/v4.5/welcome.adoc rename to CN/modules/ROOT/pages/v4.6/welcome.adoc diff --git a/EN/modules/ROOT/nav.adoc b/EN/modules/ROOT/nav.adoc index 370e6783..515ed37e 100644 --- a/EN/modules/ROOT/nav.adoc +++ b/EN/modules/ROOT/nav.adoc @@ -1,38 +1,41 @@ -* xref:v4.5/welcome.adoc[Welcome] -* xref:v4.5/1.adoc[Release] -* xref:v4.5/2.adoc[About] +* xref:v4.6/welcome.adoc[Welcome] +* xref:v4.6/1.adoc[Release] +* xref:v4.6/2.adoc[About] * Getting Started with IvorySQL -** xref:v4.5/3.adoc[Quick Start] -** xref:v4.5/4.adoc[Monitoring] -** xref:v4.5/5.adoc[Maintenance] +** xref:v4.6/3.adoc[Quick Start] +** xref:v4.6/4.adoc[Monitoring] +** xref:v4.6/5.adoc[Maintenance] * IvorySQL Advanced Feature -** xref:v4.5/6.adoc[Installation] -** xref:v4.5/7.adoc[Building Cluster] -** xref:v4.5/8.adoc[Developer] -** xref:v4.5/9.adoc[Operation Management] -** xref:v4.5/10.adoc[Migration] +** xref:v4.6/6.adoc[Installation] +** xref:v4.6/7.adoc[Building Cluster] +** xref:v4.6/8.adoc[Developer] +** xref:v4.6/9.adoc[Operation Management] +** xref:v4.6/10.adoc[Migration] * IvorySQL Ecosystem -** xref:v4.5/11.adoc[PostGIS] -** xref:v4.5/12.adoc[pgvector] +** xref:v4.6/11.adoc[PostGIS] +** xref:v4.6/12.adoc[pgvector] +** xref:v4.6/34.adoc[PGroonga] +** xref:v4.6/35.adoc[pgddl (DDL Extractor)] +** xref:v4.6/36.adoc[pgRouting] * IvorySQL Architecture Design ** Query Processing -*** xref:v4.5/31.adoc[Dual Parser] +*** xref:v4.6/31.adoc[Dual Parser] ** Compatibility Framework -*** xref:v4.5/30.adoc[initdb Process] +*** xref:v4.6/30.adoc[initdb Process] * List of Oracle compatible features -** xref:v4.5/14.adoc[1、Ivorysql frame design] -** xref:v4.5/15.adoc[2、GUC Framework] -** xref:v4.5/16.adoc[3、Case conversion] -** xref:v4.5/17.adoc[4、Dual-mode design] -** xref:v4.5/18.adoc[5、Compatible with Oracle like] -** xref:v4.5/19.adoc[6、Compatible with Oracle anonymous block] -** xref:v4.5/20.adoc[7、Compatible with Oracle functions and stored procedures] -** xref:v4.5/21.adoc[8、Built-in data types and built-in functions] -** xref:v4.5/22.adoc[9、Added Oracle compatibility mode ports and IP] -** xref:v4.5/26.adoc[10、XML Function] -** xref:v4.5/27.adoc[11、Compatible with Oracle sequence] -** xref:v4.5/28.adoc[12、Package] -** xref:v4.5/29.adoc[13、Invisible Columns] -* xref:v4.5/23.adoc[Community contribution] -* xref:v4.5/24.adoc[Tool Reference] -* xref:v4.5/25.adoc[FAQ] \ No newline at end of file +** xref:v4.6/14.adoc[1、Ivorysql frame design] +** xref:v4.6/15.adoc[2、GUC Framework] +** xref:v4.6/16.adoc[3、Case conversion] +** xref:v4.6/17.adoc[4、Dual-mode design] +** xref:v4.6/18.adoc[5、Compatible with Oracle like] +** xref:v4.6/19.adoc[6、Compatible with Oracle anonymous block] +** xref:v4.6/20.adoc[7、Compatible with Oracle functions and stored procedures] +** xref:v4.6/21.adoc[8、Built-in data types and built-in functions] +** xref:v4.6/22.adoc[9、Added Oracle compatibility mode ports and IP] +** xref:v4.6/26.adoc[10、XML Function] +** xref:v4.6/27.adoc[11、Compatible with Oracle sequence] +** xref:v4.6/28.adoc[12、Package] +** xref:v4.6/29.adoc[13、Invisible Columns] +* xref:v4.6/23.adoc[Community contribution] +* xref:v4.6/24.adoc[Tool Reference] +* xref:v4.6/25.adoc[FAQ] \ No newline at end of file diff --git a/EN/modules/ROOT/pages/v4.5/1.adoc b/EN/modules/ROOT/pages/v4.6/1.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/1.adoc rename to EN/modules/ROOT/pages/v4.6/1.adoc diff --git a/EN/modules/ROOT/pages/v4.5/10.adoc b/EN/modules/ROOT/pages/v4.6/10.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/10.adoc rename to EN/modules/ROOT/pages/v4.6/10.adoc diff --git a/EN/modules/ROOT/pages/v4.5/11.adoc b/EN/modules/ROOT/pages/v4.6/11.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/11.adoc rename to EN/modules/ROOT/pages/v4.6/11.adoc diff --git a/EN/modules/ROOT/pages/v4.5/12.adoc b/EN/modules/ROOT/pages/v4.6/12.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/12.adoc rename to EN/modules/ROOT/pages/v4.6/12.adoc diff --git a/EN/modules/ROOT/pages/v4.5/14.adoc b/EN/modules/ROOT/pages/v4.6/14.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/14.adoc rename to EN/modules/ROOT/pages/v4.6/14.adoc diff --git a/EN/modules/ROOT/pages/v4.5/15.adoc b/EN/modules/ROOT/pages/v4.6/15.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/15.adoc rename to EN/modules/ROOT/pages/v4.6/15.adoc diff --git a/EN/modules/ROOT/pages/v4.5/16.adoc b/EN/modules/ROOT/pages/v4.6/16.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/16.adoc rename to EN/modules/ROOT/pages/v4.6/16.adoc diff --git a/EN/modules/ROOT/pages/v4.5/17.adoc b/EN/modules/ROOT/pages/v4.6/17.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/17.adoc rename to EN/modules/ROOT/pages/v4.6/17.adoc diff --git a/EN/modules/ROOT/pages/v4.5/18.adoc b/EN/modules/ROOT/pages/v4.6/18.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/18.adoc rename to EN/modules/ROOT/pages/v4.6/18.adoc diff --git a/EN/modules/ROOT/pages/v4.5/19.adoc b/EN/modules/ROOT/pages/v4.6/19.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/19.adoc rename to EN/modules/ROOT/pages/v4.6/19.adoc diff --git a/EN/modules/ROOT/pages/v4.5/2.adoc b/EN/modules/ROOT/pages/v4.6/2.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/2.adoc rename to EN/modules/ROOT/pages/v4.6/2.adoc diff --git a/EN/modules/ROOT/pages/v4.5/20.adoc b/EN/modules/ROOT/pages/v4.6/20.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/20.adoc rename to EN/modules/ROOT/pages/v4.6/20.adoc diff --git a/EN/modules/ROOT/pages/v4.5/21.adoc b/EN/modules/ROOT/pages/v4.6/21.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/21.adoc rename to EN/modules/ROOT/pages/v4.6/21.adoc diff --git a/EN/modules/ROOT/pages/v4.5/22.adoc b/EN/modules/ROOT/pages/v4.6/22.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/22.adoc rename to EN/modules/ROOT/pages/v4.6/22.adoc diff --git a/EN/modules/ROOT/pages/v4.5/23.adoc b/EN/modules/ROOT/pages/v4.6/23.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/23.adoc rename to EN/modules/ROOT/pages/v4.6/23.adoc diff --git a/EN/modules/ROOT/pages/v4.5/24.adoc b/EN/modules/ROOT/pages/v4.6/24.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/24.adoc rename to EN/modules/ROOT/pages/v4.6/24.adoc diff --git a/EN/modules/ROOT/pages/v4.5/25.adoc b/EN/modules/ROOT/pages/v4.6/25.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/25.adoc rename to EN/modules/ROOT/pages/v4.6/25.adoc diff --git a/EN/modules/ROOT/pages/v4.5/26.adoc b/EN/modules/ROOT/pages/v4.6/26.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/26.adoc rename to EN/modules/ROOT/pages/v4.6/26.adoc diff --git a/EN/modules/ROOT/pages/v4.5/27.adoc b/EN/modules/ROOT/pages/v4.6/27.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/27.adoc rename to EN/modules/ROOT/pages/v4.6/27.adoc diff --git a/EN/modules/ROOT/pages/v4.5/28.adoc b/EN/modules/ROOT/pages/v4.6/28.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/28.adoc rename to EN/modules/ROOT/pages/v4.6/28.adoc diff --git a/EN/modules/ROOT/pages/v4.5/29.adoc b/EN/modules/ROOT/pages/v4.6/29.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/29.adoc rename to EN/modules/ROOT/pages/v4.6/29.adoc diff --git a/EN/modules/ROOT/pages/v4.5/3.adoc b/EN/modules/ROOT/pages/v4.6/3.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/3.adoc rename to EN/modules/ROOT/pages/v4.6/3.adoc diff --git a/EN/modules/ROOT/pages/v4.5/30.adoc b/EN/modules/ROOT/pages/v4.6/30.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/30.adoc rename to EN/modules/ROOT/pages/v4.6/30.adoc diff --git a/EN/modules/ROOT/pages/v4.5/31.adoc b/EN/modules/ROOT/pages/v4.6/31.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/31.adoc rename to EN/modules/ROOT/pages/v4.6/31.adoc diff --git a/EN/modules/ROOT/pages/v4.6/34.adoc b/EN/modules/ROOT/pages/v4.6/34.adoc new file mode 100644 index 00000000..4acca95e --- /dev/null +++ b/EN/modules/ROOT/pages/v4.6/34.adoc @@ -0,0 +1,100 @@ +:sectnums: +:sectnumlevels: 5 + += PGroonga + +== Overview +PostgreSQL has built-in full-text search functionality, but when dealing with large-scale data, complex queries, and non-English languages (especially CJK languages like Chinese, Japanese, and Korean), its functionality and performance may not meet the requirements of high-performance applications. + +PGroonga was created to address this need. It is a PostgreSQL extension that deeply integrates Groonga, a high-performance full-featured full-text search engine, with the PostgreSQL database. Groonga itself is an excellent open-source search engine, renowned for its extreme speed and rich functionality, particularly excelling at handling multilingual text. PGroonga's mission is to seamlessly bring Groonga's powerful capabilities into the PostgreSQL world, providing users with an experience that far exceeds native full-text search. + +== Installation +Based on the development environment, users can choose the appropriate installation method for PGroonga from the https://pgroonga.github.io/install[PGroonga Installation] page. + +=== Source Installation +In addition to the installation methods provided by the PGroonga community, the IvorySQL community also provides source installation methods. The source installation environment is Ubuntu 24.04 (x86_64). + +[TIP] +IvorySQL 4.6 or higher version is already installed in the environment, with the installation path at /usr/local/ivorysql/ivorysql-4 + +==== Install groonga + +** Install dependency kytea +``` +git clone https://github.com/neubig/kytea.git +autoreconf -i +./configure +make +sudo make install +``` + +** Install dependency libzmq +``` +Download zeromq-4.3.5.tar.gz from https://github.com/zeromq/libzmq/releases/tag/v4.3.5 +tar xvf zeromq-4.3.5.tar.gz +cd zeromq-4.3.5/ +./configure +make +sudo make install +``` + +** Download groonga package and install specified dependencies +``` +wget https://packages.groonga.org/source/groonga/groonga-latest.tar.gz +tar xvf groonga-15.1.5.tar.gz +cd groonga-15.1.5 +# Run this script to install dependencies, supporting apt and dnf package managers +./ setup.sh +``` + +** Compile and install +``` +# -S specifies the groonga source directory, -B specifies the build directory, which is a directory outside the source directory used only for building +cmake -S /home/ivorysql/groonga-15.1.5 -B /home/ivorysql/groonga_build --preset=release-maximum +cmake --build /home/ivorysql/groonga_build +sudo cmake --install /home/ivorysql/groonga_build +# Update dynamic library cache +sudo ldconfig +``` + +** Verify groonga installation success +``` +$ groonga --version +Groonga 15.1.5 [Linux,x86_64,utf8,match-escalation-threshold=0,nfkc,mecab,message-pack,mruby,onigmo,zlib,lz4,zstandard,epoll,apache-arrow,xxhash,blosc,bfloat16,h3,simdjson,llama.cpp] +``` + +==== Install pgroonga +``` +wget https://packages.groonga.org/source/pgroonga/pgroonga-4.0.1.tar.gz +tar xvf pgroonga-4.0.1.tar.gz +cd pgroonga-4.0.1 +``` + +When compiling PGroonga, there is an option: HAVE_MSGPACK=1, which is used to support WAL. Using this option requires installing msgpack-c 1.4.1 or higher. On Debian-based platforms, use the libmsgpack-dev package, and on CentOS 7, use msgpack-devel. +``` +# Install dependencies +sudo apt install libmsgpack-dev +``` + +Before running make, ensure that the path of the pg_config command is in the PATH environment variable. +``` +make HAVE_MSGPACK=1 +make install +``` + +== Create Extension and Confirm PGroonga Version + +Connect to the database with psql and execute the following commands: +``` +ivorysql=# CREATE extension pgroonga; +CREATE EXTENSION + +ivorysql=# SELECT * FROM pg_available_extensions WHERE name = 'pgroonga'; + name | default_version | installed_version | comment +---------+-----------------+-------------------+------------------------------------------------------------------------------- + pgroonga| 4.0.1 | 4.0.1 | Super fast and all languages supported full text search index based on Groonga +(1 row) +``` + +== Usage +For PGroonga usage, please refer to the https://pgroonga.github.io/tutorial[PGroonga Official Documentation] diff --git a/EN/modules/ROOT/pages/v4.6/35.adoc b/EN/modules/ROOT/pages/v4.6/35.adoc new file mode 100644 index 00000000..12e69d15 --- /dev/null +++ b/EN/modules/ROOT/pages/v4.6/35.adoc @@ -0,0 +1,43 @@ +:sectnums: +:sectnumlevels: 5 + += pgddl (DDL Extractor) + +== Overview +pgddl is a SQL function extension specifically designed for PostgreSQL databases. It can generate clear, formatted SQL DDL (Data Definition Language) scripts directly from the database system catalog, such as CREATE TABLE or ALTER FUNCTION. It solves the problem that PostgreSQL natively lacks commands like SHOW CREATE TABLE, allowing users to easily obtain object creation statements in a pure SQL environment without relying on external tools (such as pg_dump). + +This extension provides a complete solution through a set of simple SQL functions, with advantages including: requiring only SQL queries to operate, supporting flexible object filtering through WHERE clauses, and intelligently handling dependencies between objects to generate complete scripts including Drop and Create steps. This makes it particularly suitable for scenarios such as database change management, upgrade script writing, and structural auditing. + +It should be noted that ddlx is still under development and may not yet cover all PostgreSQL object types and advanced options. Generated scripts should always be checked and tested in non-production environments first to ensure their correctness and safety. + +== Installation + +[TIP] +IvorySQL 4.6 or higher version is already installed in the environment, with the installation path at /usr/local/ivorysql/ivorysql-4 + +=== Source Installation +Download pgddl-0.20.tar.gz from https://github.com/lacanoid/pgddl/releases/tag/0.20 and extract it. + +``` +cd pgddl-0.20 +# Set the PG_CONFIG environment variable to the pg_config path, e.g.: /usr/local/ivorysql/ivorysql-4/bin/pg_config +make PG_CONFIG=/path/to/pg_config +make PG_CONFIG=/path/to/pg_config install +``` + +== Create Extension and Confirm ddlx Version + +Connect to the database with psql and execute the following commands: +``` +ivorysql=# CREATE extension ddlx; +CREATE EXTENSION + +ivorysql=# SELECT * FROM pg_available_extensions WHERE name = 'ddlx'; + name | default_version | installed_version | comment +------+-----------------+-------------------+------------------------- + ddlx | 0.20 | 0.20 | DDL eXtractor functions +(1 row) +``` + +== Usage +For pgddl usage, please refer to the https://github.com/lacanoid/pgddl[ddlx Official Documentation] diff --git a/EN/modules/ROOT/pages/v4.6/36.adoc b/EN/modules/ROOT/pages/v4.6/36.adoc new file mode 100644 index 00000000..d37180fb --- /dev/null +++ b/EN/modules/ROOT/pages/v4.6/36.adoc @@ -0,0 +1,55 @@ +:sectnums: +:sectnumlevels: 5 + += pgRouting + +== Overview +pgRouting is an open-source geospatial routing extension library built on PostgreSQL/PostGIS databases. It endows databases with powerful network analysis capabilities, enabling them to handle complex path planning and graph theory computation problems, such as calculating the shortest path between two points, performing Traveling Salesman Problem (TSP) analysis, or computing service area coverage. It embeds routing algorithms directly into the database, thereby avoiding complex data transfer and computation at the application layer. + +The core advantage of this extension lies in its ability to leverage PostgreSQL's powerful data management capabilities and PostGIS's rich spatial functions to perform efficient computation on spatial network data directly within the database. This not only simplifies application development processes but also significantly improves the performance of large-scale network analysis by reducing data movement. + +pgRouting is widely used in logistics and distribution, traffic navigation, network analysis, urban planning, and supply chain management, among other fields. Its open-source nature has attracted continuous contributions and improvements from developers worldwide, making it one of the preferred tools for path analysis and network solving in the spatial database domain. + +== Installation + +[TIP] +IvorySQL 4.6 or higher version is already installed in the environment, with the installation path at /usr/local/ivorysql/ivorysql-4 + +=== Source Installation + +** Install dependencies +It depends on perl, which is generally already installed when installing IvorySQL, so no need to install it here. +CMake version requirement >= 3.12, Boost version >= 1.56 +``` +# Install dependencies +sudo apt install cmake libboost-all-dev +``` + +** Compile and install +``` +wget https://github.com/pgRouting/pgrouting/releases/download/v3.5.1/pgrouting-3.5.1.tar.gz +tar xvf pgrouting-3.5.1.tar.gz +cd pgrouting-3.5.1 +mkdir build +cd build +cmake .. -DPOSTGRESQL_PG_CONFIG=/path/to/pg_config # eg: /usr/local/ivorysql/ivorysql-4/bin/pg_config +make +sudo make install +``` + +== Create Extension and Confirm pgRouting Version + +Connect to the database with psql and execute the following commands: +``` +ivorysql=# CREATE extension pgrouting; +CREATE EXTENSION + +ivorysql=# SELECT * FROM pg_available_extensions WHERE name = 'pgrouting'; + name | default_version | installed_version | comment +-----------+-----------------+-------------------+--------------------- + pgrouting | 3.5.1 | | pgRouting Extension +(1 row) +``` + +== Usage +For pgRouting usage, please refer to the https://docs.pgrouting.org/[pgRouting Official Documentation] diff --git a/EN/modules/ROOT/pages/v4.5/4.adoc b/EN/modules/ROOT/pages/v4.6/4.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/4.adoc rename to EN/modules/ROOT/pages/v4.6/4.adoc diff --git a/EN/modules/ROOT/pages/v4.5/5.adoc b/EN/modules/ROOT/pages/v4.6/5.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/5.adoc rename to EN/modules/ROOT/pages/v4.6/5.adoc diff --git a/EN/modules/ROOT/pages/v4.5/6.adoc b/EN/modules/ROOT/pages/v4.6/6.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/6.adoc rename to EN/modules/ROOT/pages/v4.6/6.adoc diff --git a/EN/modules/ROOT/pages/v4.5/7.adoc b/EN/modules/ROOT/pages/v4.6/7.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/7.adoc rename to EN/modules/ROOT/pages/v4.6/7.adoc diff --git a/EN/modules/ROOT/pages/v4.5/8.adoc b/EN/modules/ROOT/pages/v4.6/8.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/8.adoc rename to EN/modules/ROOT/pages/v4.6/8.adoc diff --git a/EN/modules/ROOT/pages/v4.5/9.adoc b/EN/modules/ROOT/pages/v4.6/9.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/9.adoc rename to EN/modules/ROOT/pages/v4.6/9.adoc diff --git a/EN/modules/ROOT/pages/v4.5/welcome.adoc b/EN/modules/ROOT/pages/v4.6/welcome.adoc similarity index 100% rename from EN/modules/ROOT/pages/v4.5/welcome.adoc rename to EN/modules/ROOT/pages/v4.6/welcome.adoc From f3172a53678bd9ac11040ef7656278cc0d6bdbaa Mon Sep 17 00:00:00 2001 From: yuan li Date: Fri, 5 Sep 2025 17:56:29 +0800 Subject: [PATCH 3/5] Adjust document format --- CN/modules/ROOT/pages/v4.6/36.adoc | 1 + EN/modules/ROOT/pages/v4.6/36.adoc | 1 + 2 files changed, 2 insertions(+) diff --git a/CN/modules/ROOT/pages/v4.6/36.adoc b/CN/modules/ROOT/pages/v4.6/36.adoc index b9d793cb..3c20aabd 100644 --- a/CN/modules/ROOT/pages/v4.6/36.adoc +++ b/CN/modules/ROOT/pages/v4.6/36.adoc @@ -19,6 +19,7 @@ pgRouting 广泛应用于物流配送、交通导航、网络分析、城市规 === 源码安装 ** 安装依赖 + 对perl有依赖,perl一般在装IvorySQL时已经装上了,这里不用再装 CMake版本要求 >= 3.12, Boost版本 >= 1.56 ``` diff --git a/EN/modules/ROOT/pages/v4.6/36.adoc b/EN/modules/ROOT/pages/v4.6/36.adoc index d37180fb..cc96b738 100644 --- a/EN/modules/ROOT/pages/v4.6/36.adoc +++ b/EN/modules/ROOT/pages/v4.6/36.adoc @@ -18,6 +18,7 @@ IvorySQL 4.6 or higher version is already installed in the environment, with the === Source Installation ** Install dependencies + It depends on perl, which is generally already installed when installing IvorySQL, so no need to install it here. CMake version requirement >= 3.12, Boost version >= 1.56 ``` From 8614c0424c6b3f7760679940ce65e9626ca830f5 Mon Sep 17 00:00:00 2001 From: yuan li Date: Tue, 9 Sep 2025 10:58:00 +0800 Subject: [PATCH 4/5] correct pgvector version information --- CN/modules/ROOT/pages/v4.6/12.adoc | 2 +- EN/modules/ROOT/pages/v4.6/12.adoc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CN/modules/ROOT/pages/v4.6/12.adoc b/CN/modules/ROOT/pages/v4.6/12.adoc index 409992b9..863cfafc 100644 --- a/CN/modules/ROOT/pages/v4.6/12.adoc +++ b/CN/modules/ROOT/pages/v4.6/12.adoc @@ -35,7 +35,7 @@ export PG_CONFIG=/usr/local/ivorysql/ivorysql-4/bin/pg_config ** 拉取pg_vector源码 ``` -git clone --branch v0.6.2 https://github.com/pgvector/pgvector.git +git clone --branch v0.8.0 https://github.com/pgvector/pgvector.git ``` ** 安装 pgvector diff --git a/EN/modules/ROOT/pages/v4.6/12.adoc b/EN/modules/ROOT/pages/v4.6/12.adoc index dd965a4d..a0f1ca5c 100644 --- a/EN/modules/ROOT/pages/v4.6/12.adoc +++ b/EN/modules/ROOT/pages/v4.6/12.adoc @@ -38,7 +38,7 @@ export PG_CONFIG=/usr/local/ivorysql/ivorysql-4/bin/pg_config ** Pull pg_vector source code ``` -git clone --branch v0.6.2 https://github.com/pgvector/pgvector.git +git clone --branch v0.8.0 https://github.com/pgvector/pgvector.git ``` ** Install pgvector From 037e07a2df0c63dd47e7c24bd1e63c881ebb9bfc Mon Sep 17 00:00:00 2001 From: yuan li Date: Tue, 9 Sep 2025 11:10:16 +0800 Subject: [PATCH 5/5] Adjust format --- CN/modules/ROOT/pages/v4.6/36.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CN/modules/ROOT/pages/v4.6/36.adoc b/CN/modules/ROOT/pages/v4.6/36.adoc index 3c20aabd..3911a37d 100644 --- a/CN/modules/ROOT/pages/v4.6/36.adoc +++ b/CN/modules/ROOT/pages/v4.6/36.adoc @@ -20,7 +20,7 @@ pgRouting 广泛应用于物流配送、交通导航、网络分析、城市规 ** 安装依赖 -对perl有依赖,perl一般在装IvorySQL时已经装上了,这里不用再装 +对perl有依赖,perl一般在装IvorySQL时已经装上了,这里不用再装。 CMake版本要求 >= 3.12, Boost版本 >= 1.56 ``` #安装依赖