diff --git a/CN/antora.yml b/CN/antora.yml index da24169..90220bc 100644 --- a/CN/antora.yml +++ b/CN/antora.yml @@ -6,5 +6,16 @@ asciidoc: attributes: source-language: asciidoc@ table-caption: false + ivorysql-version: 5.1 + pg-version: 18.1 + package-link: 'https://github.com/ivorysql/ivorysql' + package-link-x86_64-deb: 'IvorySQL-5.1-62069c2-20251211.amd64.deb' + package-link-x86_64-rpm: 'IvorySQL-5.1-62069c2-20251211.x86_64.rpm' + package-link-aarch64-deb: 'IvorySQL-5.1-62069c2-20251211.arm64.deb' + package-link-aarch64-rpm: 'IvorySQL-5.1-62069c2-20251211.aarch64.rpm' + package-link-mips64el-deb: 'IvorySQL-5.1-62069c2-20251211.mips64el.deb' + package-link-mips64el-rpm: 'IvorySQL-5.1-62069c2-20251211.mips64el.rpm' + package-link-loongarch64-deb: 'IvorySQL-5.1-62069c2-20251211.loongarch64.deb' + package-link-loongarch64-rpm: 'IvorySQL-5.1-62069c2-20251211.loongarch64.rpm' nav: - modules/ROOT/nav.adoc diff --git a/CN/modules/ROOT/nav.adoc b/CN/modules/ROOT/nav.adoc index 3c798c8..9868f15 100644 --- a/CN/modules/ROOT/nav.adoc +++ b/CN/modules/ROOT/nav.adoc @@ -1,90 +1,90 @@ * IvorySQL -** xref:v5.1/welcome.adoc[欢迎] -** xref:v5.1/1.adoc[发行说明] -** xref:v5.1/2.adoc[关于IvorySQL] +** xref:v{ivorysql-version}/welcome.adoc[欢迎] +** xref:v{ivorysql-version}/1.adoc[发行说明] +** xref:v{ivorysql-version}/2.adoc[关于IvorySQL] ** IvorySQL入门 -*** xref:v5.1/3.1.adoc[快速开始] -*** xref:v5.1/3.2.adoc[日常监控] -*** xref:v5.1/3.3.adoc[日常维护] +*** xref:v{ivorysql-version}/3.1.adoc[快速开始] +*** xref:v{ivorysql-version}/3.2.adoc[日常监控] +*** xref:v{ivorysql-version}/3.3.adoc[日常维护] ** IvorySQL高级 -*** xref:v5.1/4.1.adoc[安装指南] -*** xref:v5.1/4.2.adoc[集群搭建] -*** xref:v5.1/4.5.adoc[迁移指南] -*** xref:v5.1/4.3.adoc[开发者指南] +*** xref:v{ivorysql-version}/4.1.adoc[安装指南] +*** xref:v{ivorysql-version}/4.2.adoc[集群搭建] +*** xref:v{ivorysql-version}/4.5.adoc[迁移指南] +*** xref:v{ivorysql-version}/4.3.adoc[开发者指南] *** 容器化指南 -**** xref:v5.1/4.6.1.adoc[K8S部署] -**** xref:v5.1/4.6.2.adoc[Operator部署] -**** xref:v5.1/4.6.4.adoc[Docker & Podman部署] -**** xref:v5.1/4.6.3.adoc[Docker Swarm & Docker Compose部署] -*** xref:v5.1/4.4.adoc[运维管理指南] +**** xref:v{ivorysql-version}/4.6.1.adoc[K8S部署] +**** xref:v{ivorysql-version}/4.6.2.adoc[Operator部署] +**** xref:v{ivorysql-version}/4.6.4.adoc[Docker & Podman部署] +**** xref:v{ivorysql-version}/4.6.3.adoc[Docker Swarm & Docker Compose部署] +*** xref:v{ivorysql-version}/4.4.adoc[运维管理指南] *** 云服务平台指南 -**** xref:v5.1/4.7.1.adoc[IvorySQL Cloud安装] -**** xref:v5.1/4.7.2.adoc[IvorySQL Cloud使用] +**** xref:v{ivorysql-version}/4.7.1.adoc[IvorySQL Cloud安装] +**** xref:v{ivorysql-version}/4.7.2.adoc[IvorySQL Cloud使用] ** IvorySQL生态 -*** xref:v5.1/cpu_arch_adp.adoc[芯片架构适配] -*** xref:v5.1/os_arch_adp.adoc[操作系统适配] +*** xref:v{ivorysql-version}/cpu_arch_adp.adoc[芯片架构适配] +*** xref:v{ivorysql-version}/os_arch_adp.adoc[操作系统适配] *** 生态组件适配 -**** xref:v5.1/5.0.adoc[概述] -**** xref:v5.1/5.1.adoc[postgis] -**** xref:v5.1/5.2.adoc[pgvector] -**** xref:v5.1/5.3.adoc[pgddl(DDL Extractor)] -**** xref:v5.1/5.4.adoc[pg_cron] -**** xref:v5.1/5.5.adoc[pgsql-http] -**** xref:v5.1/5.6.adoc[plpgsql_check] -**** xref:v5.1/5.7.adoc[pgroonga] -**** xref:v5.1/5.8.adoc[pgaudit] -**** xref:v5.1/5.9.adoc[pgrouting] -**** xref:v5.1/5.10.adoc[system_stats] +**** xref:v{ivorysql-version}/5.0.adoc[概述] +**** xref:v{ivorysql-version}/5.1.adoc[postgis] +**** xref:v{ivorysql-version}/5.2.adoc[pgvector] +**** xref:v{ivorysql-version}/5.3.adoc[pgddl(DDL Extractor)] +**** xref:v{ivorysql-version}/5.4.adoc[pg_cron] +**** xref:v{ivorysql-version}/5.5.adoc[pgsql-http] +**** xref:v{ivorysql-version}/5.6.adoc[plpgsql_check] +**** xref:v{ivorysql-version}/5.7.adoc[pgroonga] +**** xref:v{ivorysql-version}/5.8.adoc[pgaudit] +**** xref:v{ivorysql-version}/5.9.adoc[pgrouting] +**** xref:v{ivorysql-version}/5.10.adoc[system_stats] ** IvorySQL架构设计 *** 查询处理 -**** xref:v5.1/6.1.1.adoc[双parser] +**** xref:v{ivorysql-version}/6.1.1.adoc[双parser] *** 兼容框架 -**** xref:v5.1/7.1.adoc[框架设计] -**** xref:v5.1/7.2.adoc[GUC框架] -**** xref:v5.1/7.4.adoc[双模式设计] -**** xref:v5.1/6.2.1.adoc[initdb过程] +**** xref:v{ivorysql-version}/7.1.adoc[框架设计] +**** xref:v{ivorysql-version}/7.2.adoc[GUC框架] +**** xref:v{ivorysql-version}/7.4.adoc[双模式设计] +**** xref:v{ivorysql-version}/6.2.1.adoc[initdb过程] *** 兼容特性 -**** xref:v5.1/6.3.1.adoc[like] -**** xref:v5.1/6.3.3.adoc[RowID] -**** xref:v5.1/6.3.2.adoc[OUT 参数] -**** xref:v5.1/6.3.4.adoc[%TYPE、%ROWTYPE] -**** xref:v5.1/6.3.5.adoc[NLS 参数] -**** xref:v5.1/6.3.6.adoc[函数与存储过程] -**** xref:v5.1/6.3.7.adoc[嵌套子函数] -**** xref:v5.1/6.3.8.adoc[Force View] -**** xref:v5.1/6.3.9.adoc[大小写转换] -**** xref:v5.1/6.3.10.adoc[sys_guid 函数] -**** xref:v5.1/6.3.11.adoc[空字符串转null] -**** xref:v5.1/6.3.12.adoc[CALL INTO] +**** xref:v{ivorysql-version}/6.3.1.adoc[like] +**** xref:v{ivorysql-version}/6.3.3.adoc[RowID] +**** xref:v{ivorysql-version}/6.3.2.adoc[OUT 参数] +**** xref:v{ivorysql-version}/6.3.4.adoc[%TYPE、%ROWTYPE] +**** xref:v{ivorysql-version}/6.3.5.adoc[NLS 参数] +**** xref:v{ivorysql-version}/6.3.6.adoc[函数与存储过程] +**** xref:v{ivorysql-version}/6.3.7.adoc[嵌套子函数] +**** xref:v{ivorysql-version}/6.3.8.adoc[Force View] +**** xref:v{ivorysql-version}/6.3.9.adoc[大小写转换] +**** xref:v{ivorysql-version}/6.3.10.adoc[sys_guid 函数] +**** xref:v{ivorysql-version}/6.3.11.adoc[空字符串转null] +**** xref:v{ivorysql-version}/6.3.12.adoc[CALL INTO] *** 内置函数 -**** xref:v5.1/6.4.1.adoc[sys_context] -**** xref:v5.1/6.4.2.adoc[userenv] -*** xref:v5.1/6.5.adoc[国标GB18030] +**** xref:v{ivorysql-version}/6.4.1.adoc[sys_context] +**** xref:v{ivorysql-version}/6.4.2.adoc[userenv] +*** xref:v{ivorysql-version}/6.5.adoc[国标GB18030] ** Oracle兼容功能列表 -*** xref:v5.1/7.3.adoc[1、大小写转换] -*** xref:v5.1/7.5.adoc[2、LIKE操作符] -*** xref:v5.1/7.6.adoc[3、匿名块] -*** xref:v5.1/7.7.adoc[4、函数与存储过程] -*** xref:v5.1/7.8.adoc[5、内置数据类型与内置函数] -*** xref:v5.1/7.9.adoc[6、端口与IP] -*** xref:v5.1/7.10.adoc[7、XML函数] -*** xref:v5.1/7.11.adoc[8、sequence] -*** xref:v5.1/7.12.adoc[9、包] -*** xref:v5.1/7.13.adoc[10、不可见列] -*** xref:v5.1/7.14.adoc[11、RowID] -*** xref:v5.1/7.15.adoc[12、OUT 参数] -*** xref:v5.1/7.16.adoc[13、%TYPE、%ROWTYPE] -*** xref:v5.1/7.17.adoc[14、NLS 参数] -*** xref:v5.1/7.18.adoc[15、Force View] -*** xref:v5.1/7.19.adoc[16、嵌套子函数] -*** xref:v5.1/7.20.adoc[17、sys_guid 函数] -*** xref:v5.1/7.21.adoc[18、空字符串转null] -*** xref:v5.1/7.22.adoc[19、CALL INTO] +*** xref:v{ivorysql-version}/7.3.adoc[1、大小写转换] +*** xref:v{ivorysql-version}/7.5.adoc[2、LIKE操作符] +*** xref:v{ivorysql-version}/7.6.adoc[3、匿名块] +*** xref:v{ivorysql-version}/7.7.adoc[4、函数与存储过程] +*** xref:v{ivorysql-version}/7.8.adoc[5、内置数据类型与内置函数] +*** xref:v{ivorysql-version}/7.9.adoc[6、端口与IP] +*** xref:v{ivorysql-version}/7.10.adoc[7、XML函数] +*** xref:v{ivorysql-version}/7.11.adoc[8、sequence] +*** xref:v{ivorysql-version}/7.12.adoc[9、包] +*** xref:v{ivorysql-version}/7.13.adoc[10、不可见列] +*** xref:v{ivorysql-version}/7.14.adoc[11、RowID] +*** xref:v{ivorysql-version}/7.15.adoc[12、OUT 参数] +*** xref:v{ivorysql-version}/7.16.adoc[13、%TYPE、%ROWTYPE] +*** xref:v{ivorysql-version}/7.17.adoc[14、NLS 参数] +*** xref:v{ivorysql-version}/7.18.adoc[15、Force View] +*** xref:v{ivorysql-version}/7.19.adoc[16、嵌套子函数] +*** xref:v{ivorysql-version}/7.20.adoc[17、sys_guid 函数] +*** xref:v{ivorysql-version}/7.21.adoc[18、空字符串转null] +*** xref:v{ivorysql-version}/7.22.adoc[19、CALL INTO] ** IvorySQL贡献指南 -*** xref:v5.1/8.1.adoc[社区贡献指南] -*** xref:v5.1/8.2.adoc[asciidoc语法快速参考] -** xref:v5.1/9.adoc[工具参考] -** xref:v5.1/10.adoc[FAQ] +*** xref:v{ivorysql-version}/8.1.adoc[社区贡献指南] +*** xref:v{ivorysql-version}/8.2.adoc[asciidoc语法快速参考] +** xref:v{ivorysql-version}/9.adoc[工具参考] +** xref:v{ivorysql-version}/10.adoc[FAQ] * PostgreSQL -** xref:v5.1/100.adoc[PG参数参考手册] -** xref:v5.1/110.adoc[PG函数参考手册] +** xref:v{ivorysql-version}/100.adoc[PG参数参考手册] +** xref:v{ivorysql-version}/110.adoc[PG函数参考手册] diff --git a/CN/modules/ROOT/pages/v5.1/23.adoc b/CN/modules/ROOT/pages/v5.1/23.adoc index 052a81f..27173ae 100644 --- a/CN/modules/ROOT/pages/v5.1/23.adoc +++ b/CN/modules/ROOT/pages/v5.1/23.adoc @@ -29,7 +29,7 @@ IvorySQL由一个核心开发团队维护,该团队拥有对GitHub上的IvoryS == **贡献者指南** -在贡献之前,我们需要了解下IvorySQL目前的版本以及文档的版本。目前,我们维护着5.1等版本,我们的版本紧跟PG的更新步伐,贡献之前请更新至最新版本。之后我们需要细心浏览一下贡献的样式风格,熟悉代码贡献风格、提Issue样式、拉取PR标题样式、代码注释样式、文档贡献样式、文章贡献样式,这可以帮助您尽快成为IvorySQL的贡献者奥~。 +在贡献之前,我们需要了解下IvorySQL目前的版本以及文档的版本。目前,我们维护着{ivorysql-version}等版本,我们的版本紧跟PG的更新步伐,贡献之前请更新至最新版本。之后我们需要细心浏览一下贡献的样式风格,熟悉代码贡献风格、提Issue样式、拉取PR标题样式、代码注释样式、文档贡献样式、文章贡献样式,这可以帮助您尽快成为IvorySQL的贡献者奥~。 === 贡献前的准备 diff --git a/CN/modules/ROOT/pages/v5.1/3.1.adoc b/CN/modules/ROOT/pages/v5.1/3.1.adoc index 0ae3623..f6d4f77 100644 --- a/CN/modules/ROOT/pages/v5.1/3.1.adoc +++ b/CN/modules/ROOT/pages/v5.1/3.1.adoc @@ -42,6 +42,7 @@ https://www.ionos.com/help/server-cloud-infrastructure/server-administration/cre + 创建或编辑IvorySQL yum源配置文件/etc/yum.repos.d/ivorysql.repo +[source,bash,subs="attributes"] ``` vim /etc/yum.repos.d/ivorysql.repo [ivorysql5] @@ -51,12 +52,13 @@ enabled=1 gpgcheck=0 ``` 保存退出后,安装IvorySQL5 +[source,bash,subs="attributes"] ``` -$ sudo dnf install -y ivorysql5-5.1 +$ sudo dnf install -y ivorysql5-{ivorysql-version} ``` .... - 正确安装后,数据库将被安装在/usr/ivory-5/路径下的IvorySQL-version(如:IvorySQL-5.1)文件夹内 + 正确安装后,数据库将被安装在/usr/ivory-5/路径下的IvorySQL-version(如:IvorySQL-{ivorysql-version})文件夹内 .... 执行以下命令为ivorysql用户赋权: @@ -112,28 +114,35 @@ ivorysql 3238 1551 0 20:35 pts/0 00:00:00 grep --color=auto postgres === docker方式运行 ** 从Docker Hub上获取IvorySQL镜像 + +[source,bash,subs="attributes"] ``` -$ docker pull ivorysql/ivorysql:5.1-ubi8 +$ docker pull ivorysql/ivorysql:{ivorysql-version}-ubi8 ``` ** 运行IvorySQL + +[source,bash,subs="attributes"] ``` -$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/ivorysql:5.1-ubi8 +$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/ivorysql:{ivorysql-version}-ubi8 ``` ** 查看IvorySQL容器运行是否成功 + +[source,bash,subs="attributes"] ``` $ docker ps | grep ivorysql CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -6faa2d0ed705 ivorysql:5.1-ubi8 "docker-entrypoint.s…" 50 seconds ago Up 49 seconds 5866/tcp, 0.0.0.0:5434->5432/tcp ivorysql +6faa2d0ed705 ivorysql:{ivorysql-version}-ubi8 "docker-entrypoint.s…" 50 seconds ago Up 49 seconds 5866/tcp, 0.0.0.0:5434->5432/tcp ivorysql ``` == 数据库连接 psql连接数据库: +[source,bash,subs="attributes"] ``` $ psql -d -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# @@ -148,4 +157,4 @@ TIP: Docker运行IvorySQL时,需要添加额外参数,如 psql -d ivorysql - 现在可以开始使用IvorySQL啦!就是这么简单! -想要获得更多安装方式,请参考xref:v5.1/4.1.adoc[安装指南] +想要获得更多安装方式,请参考xref:v{ivorysql-version}/4.1.adoc[安装指南] diff --git a/CN/modules/ROOT/pages/v5.1/4.1.adoc b/CN/modules/ROOT/pages/v5.1/4.1.adoc index ec60aa0..83390f2 100644 --- a/CN/modules/ROOT/pages/v5.1/4.1.adoc +++ b/CN/modules/ROOT/pages/v5.1/4.1.adoc @@ -14,7 +14,7 @@ IvorySQL安装方式包括以下5种: - <<源码安装>> - <> -本章将详细介绍每种方式的安装、运行及卸载过程。想要更快获得IvorySQL,请参阅xref:v5.1/3.1.adoc#快速开始[快速开始]。 +本章将详细介绍每种方式的安装、运行及卸载过程。想要更快获得IvorySQL,请参阅xref:v{ivorysql-version}/3.1.adoc#快速开始[快速开始]。 同样,安装前请先创建一个用户,并赋予其root权限,安装、使用和卸载均以该用户执行。这里以ivorysql用户为例。 @@ -31,21 +31,26 @@ enabled=1 gpgcheck=0 ``` 保存退出后,安装IvorySQL5 +[source,bash,subs="attributes"] ``` -$ sudo dnf install -y ivorysql5-5.1 +$ sudo dnf install -y ivorysql5-{ivorysql-version} ``` [[docker安装]] == docker安装 ** 从Docker Hub上获取IvorySQL镜像 + +[source,bash,subs="attributes"] ``` -$ docker pull ivorysql/ivorysql:5.1-ubi8 +$ docker pull ivorysql/ivorysql:{ivorysql-version}-ubi8 ``` ** 运行IvorySQL + +[source,bash,subs="attributes"] ``` -$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/ivorysql:5.1-ubi8 +$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/ivorysql:{ivorysql-version}-ubi8 ``` -e参数说明 |==== @@ -72,8 +77,10 @@ $ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d $ sudo dnf install -y lz4 libicu libxslt python3 ``` ** 获取rpm包 + +[source,bash,subs="attributes"] ``` -$ sudo wget https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.x86_64.rpm +$ sudo wget https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/IvorySQL-{ivorysql-version}-9d890e9-20251120.x86_64.rpm ``` ** 安装rpm包 @@ -102,7 +109,7 @@ $ sudo apt install -y pkg-config uuid-dev ``` $ git clone https://github.com/IvorySQL/IvorySQL.git $ cd IvorySQL -$ git checkout tags/IvorySQL_5.1 +$ git checkout -b IVORY_REL_5_STABLE origin/IVORY_REL_5_STABLE ``` ** 配置 @@ -143,13 +150,17 @@ $ sudo apt -y install pkg-config libreadline-dev libicu-dev libldap2-dev uuid-de ``` ** 获取deb包 + +[source,bash,subs="attributes"] ``` -$ sudo wget https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.amd64.deb +$ sudo wget https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/IvorySQL-{ivorysql-version}-a50789d-20250304.amd64.deb ``` ** 安装deb包 + +[source,bash,subs="attributes"] ``` -$ sudo dpkg -i IvorySQL-5.1-62069c2-20251211.amd64.deb +$ sudo dpkg -i IvorySQL-{ivorysql-version}-a50789d-20250304.amd64.deb ``` 数据库将被安装在/usr/ivory-5/路径下。 @@ -213,9 +224,10 @@ ivorysql 130445 130274 0 02:45 pts/1 00:00:00 grep --color=auto postgres == 数据库连接 psql连接数据库: +[source,bash,subs="attributes"] ``` $ psql -d -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# @@ -245,10 +257,12 @@ $ sudo dnf remove -y ivorysql5-5.0 === docker安装的卸载 执行以下命令,使IvorySQL容器停止运行,并删除IvorySQL容器和镜像: + +[source,bash,subs="attributes"] ``` $ docker stop ivorysql $ docker rm ivorysql -$ docker rmi ivorysql/ivorysql:5.1-ubi8 +$ docker rmi ivorysql/ivorysql:{ivorysql-version}-ubi8 ``` === rpm安装的卸载 @@ -271,7 +285,9 @@ $ sudo rm -rf /usr/ivory-5 === deb安装的卸载 执行以下命令卸载数据库并清理文件夹: + +[source,bash,subs="attributes"] ``` -$ sudo dpkg -P IvorySQL-5.1 +$ sudo dpkg -P IvorySQL-{ivorysql-version} $ sudo rm -rf /usr/ivory-5 ``` diff --git a/CN/modules/ROOT/pages/v5.1/4.2.adoc b/CN/modules/ROOT/pages/v5.1/4.2.adoc index da20af2..e414369 100644 --- a/CN/modules/ROOT/pages/v5.1/4.2.adoc +++ b/CN/modules/ROOT/pages/v5.1/4.2.adoc @@ -8,9 +8,9 @@ == 主节点 === 安装并启动数据库 -yum源快速安装数据库,请参考xref:v5.1/3.1.adoc#从yum源安装ivorysql数据库[从yum源安装ivorysql数据库]。 +yum源快速安装数据库,请参考xref:v{ivorysql-version}/3.1.adoc#从yum源安装ivorysql数据库[从yum源安装ivorysql数据库]。 -想要获取更多安装方式,请参考xref:v5.1/4.1.adoc[安装指南]。 +想要获取更多安装方式,请参考xref:v{ivorysql-version}/4.1.adoc[安装指南]。 [NOTE] 主节点数据库需要安装并**启动** @@ -56,9 +56,9 @@ $ pg_ctl restart == 备节点 === 安装数据库 -Yum源快速安装数据库,请参考xref:v5.1/3.1.adoc#从yum源安装ivorysql数据库[从yum源安装ivorysql数据库]。 +Yum源快速安装数据库,请参考xref:v{ivorysql-version}/3.1.adoc#从yum源安装ivorysql数据库[从yum源安装ivorysql数据库]。 -想要获取更多安装方式,请参考xref:v5.1/4.1.adoc[安装指南]。 +想要获取更多安装方式,请参考xref:v{ivorysql-version}/4.1.adoc[安装指南]。 [NOTE] 备节点数据库只需要安装,**不需要启动** @@ -116,9 +116,10 @@ ivorysql 6567 6139 0 21:54 ? 00:00:00 postgres: walreceiver streaming ... ``` 在主节点上psql连接数据库,并查看集群状态: +[source,bash,subs="attributes"] ``` $ psql -d ivorysql -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# select * from pg_stat_replication; @@ -137,9 +138,10 @@ xmin | state | sent_lsn | write_lsn | flush_lsn | replay_lsn | write_lag | === 使用集群 集群中所有的写操作均在主节点执行,读操作则主备节点都可以执行。主节点的数据通过流复制同步到备节点。主节点写操作的结果在任何一个备节点都能够查询到。 例如,在主节点创建一个新的数据库test,并在主节点进行查询: +[source,bash,subs="attributes"] ``` $ psql -d ivorysql -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# create database test; @@ -157,9 +159,10 @@ ivorysql=# \l (4 rows) ``` 在备节点查询: +[source,bash,subs="attributes"] ``` $ psql -d ivorysql -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# \l diff --git a/CN/modules/ROOT/pages/v5.1/4.4.adoc b/CN/modules/ROOT/pages/v5.1/4.4.adoc index a149d47..c154503 100644 --- a/CN/modules/ROOT/pages/v5.1/4.4.adoc +++ b/CN/modules/ROOT/pages/v5.1/4.4.adoc @@ -88,7 +88,7 @@ pg_dumpall -p 5432 | psql -d postgres -p 5433 === 利用pg_upgrade 工具进行升级 -pg_upgrade 工具是PostgreSQL 内置的跨版本升级工具,能够对数据库就地升级,不需要执行导出和导入操作。IvorySQL源自于PG,因此也能够使用pg_upgrade 工具进行大版本升级。 下面简要介绍一下CentOS8平台上如何使用 pg_upgrade 将IvorySQL升级到最新的5.1版本。 +pg_upgrade 工具是PostgreSQL 内置的跨版本升级工具,能够对数据库就地升级,不需要执行导出和导入操作。IvorySQL源自于PG,因此也能够使用pg_upgrade 工具进行大版本升级。 下面简要介绍一下CentOS8平台上如何使用 pg_upgrade 将IvorySQL升级到最新的{ivorysql-version}版本。 pg_upgrade 提供了升级前的兼容性检查(-c 或者 --check 选项)功能,可以发现插件、数据类型不兼容等问题。如果指定了--link 选项,新版本服务可以直接使用原有的数据库文件而不需要执行复制,通常可以在几分钟内完成升级操作。 @@ -107,23 +107,26 @@ pg_upgrade 提供了升级前的兼容性检查(-c 或者 --check 选项)功 ``` /usr/ivory-4/bin/pg_ctl -D ./data stop ``` -然后安装新版本的IvorySQL5.1数据库: +然后安装新版本的IvorySQL{ivorysql-version}数据库: +[source,bash,subs="attributes"] ``` -dnf install -y ivorysql5-5.1 +dnf install -y ivorysql5-{ivorysql-version} ``` -初始化新版IvorySQL5.1数据目录: +初始化新版IvorySQL{ivorysql-version}数据目录: ``` /usr/ivory-5/bin/initdb -D ./data ``` 检查版本兼容性: +[source,bash,subs="attributes"] ``` -/usr/ivory-5/bin/pg_upgrade --old-datadir=/home/ivorysql/test/4.6/data --new-datadir=/home/ivorysql/test/5.1/data --old-bindir=/usr/ivory-4/bin/ --new-bindir=/usr/ivory-5/bin/ --check +/usr/ivory-5/bin/pg_upgrade --old-datadir=/home/ivorysql/test/4.6/data --new-datadir=/home/ivorysql/test/{ivorysql-version}/data --old-bindir=/usr/ivory-4/bin/ --new-bindir=/usr/ivory-5/bin/ --check ``` 最后出现 “Clusters are compatible” 表明两个版本之间的数据不存在兼容性问题,可以进行升级。 正式升级: +[source,bash,subs="attributes"] ``` -/usr/ivory-5/bin/pg_upgrade --old-datadir=/home/ivorysql/test/4.6/data --new-datadir=/home/ivorysql/test/5.1/data --old-bindir=/usr/ivory-4/bin/ --new-bindir=/usr/ivory-5/bin/ +/usr/ivory-5/bin/pg_upgrade --old-datadir=/home/ivorysql/test/4.6/data --new-datadir=/home/ivorysql/test/{ivorysql-version}/data --old-bindir=/usr/ivory-4/bin/ --new-bindir=/usr/ivory-5/bin/ ``` 看到 Upgrade Complete 说明升级已经顺利完成。 @@ -153,7 +156,7 @@ pg_upgrade https://www.postgresql.org/docs/current/pgupgrade.html[文档]概述 == 管理IvorySQL版本 -IvorySQL基于PostgreSQL开发,版本更新频率与PostgreSQL版本更新频率保持一致,每年更新一个大版本,每季度更新一个小版本。IvorySQL目前发布的版本有1.0到5.1,分别基于PostgreSQL 14.0到18.1进行开发,最新版本为IvorySQL 5.1,基于PostgreSQL 18.1进行开发。IvorySQL 的所有版本全部都做到了向下兼容。相关版本特性可以查看 https://www.ivorysql.org/zh-CN/releases-page[官网]。 +IvorySQL基于PostgreSQL开发,版本更新频率与PostgreSQL版本更新频率保持一致,每年更新一个大版本,每季度更新一个小版本。IvorySQL目前发布的版本有1.0到{ivorysql-version},分别基于PostgreSQL 14.0到{pg-version}进行开发,最新版本为IvorySQL {ivorysql-version},基于PostgreSQL {pg-version}进行开发。IvorySQL 的所有版本全部都做到了向下兼容。相关版本特性可以查看 https://www.ivorysql.org/zh-CN/releases-page[官网]。 == 管理IvorySQL数据库访问 diff --git a/CN/modules/ROOT/pages/v5.1/4.5.adoc b/CN/modules/ROOT/pages/v5.1/4.5.adoc index 424f2cf..9c7c0ee 100644 --- a/CN/modules/ROOT/pages/v5.1/4.5.adoc +++ b/CN/modules/ROOT/pages/v5.1/4.5.adoc @@ -440,6 +440,7 @@ Fixing function calls in output files... 创建ORCL 数据库 +[source,bash,subs="attributes"] ``` # su - ivorysql @@ -449,7 +450,7 @@ $ createdb orcl $ psql -psql (18.1) +psql ({pg-version}) Type "help" for help. @@ -475,10 +476,11 @@ ivorysql=# 创建SH,HR,SCOTT 用户: +[source,bash,subs="attributes"] ``` $ psql orcl -psql (18.1) +psql ({pg-version}) Type "help" for help. diff --git a/CN/modules/ROOT/pages/v5.1/4.6.1.adoc b/CN/modules/ROOT/pages/v5.1/4.6.1.adoc index 0b5464a..8509b11 100644 --- a/CN/modules/ROOT/pages/v5.1/4.6.1.adoc +++ b/CN/modules/ROOT/pages/v5.1/4.6.1.adoc @@ -51,6 +51,7 @@ statefulset.apps/ivorysql 1/1 2m39s ``` psql连接IvorySQL的PG端口 +[source,bash,subs="attributes"] ``` [root@k8s-master single]# psql -U ivorysql -p 32106 -h 127.0.0.1 -d ivorysql Password for user ivorysql: @@ -58,7 +59,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (IvorySQL 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL {pg-version} (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; @@ -71,6 +72,7 @@ ivorysql=# exit ``` psql连接IvorySQL的Oracle端口 +[source,bash,subs="attributes"] ``` [root@k8s-master single]# psql -U ivorysql -p 31887 -h 127.0.0.1 -d ivorysql Password for user ivorysql: @@ -78,7 +80,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (IvorySQL 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL {pg-version} (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; diff --git a/CN/modules/ROOT/pages/v5.1/4.6.3.adoc b/CN/modules/ROOT/pages/v5.1/4.6.3.adoc index 7c77b9b..1779017 100644 --- a/CN/modules/ROOT/pages/v5.1/4.6.3.adoc +++ b/CN/modules/ROOT/pages/v5.1/4.6.3.adoc @@ -65,6 +65,7 @@ fr0m9chu3ce8 ivorysql-hac_ivypatroni2 replicated 1/1 ivorysql/docke ``` psql连接数据库的Oracle端口及PG端口 +[source,bash,subs="attributes"] ``` [root@manager-node1 docker-swarm]# psql -h127.0.0.1 -p1521 -U ivorysql -d ivorysql Password for user ivorysql: @@ -72,7 +73,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (ivorysql 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL {pg-version} (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; @@ -83,6 +84,7 @@ ivorysql=# show ivorysql.compatible_mode; ivorysql=# exit ``` +[source,bash,subs="attributes"] ``` [root@manager-node1 docker-swarm]# psql -h127.0.0.1 -p5432 -U ivorysql -d ivorysql Password for user ivorysql: @@ -90,7 +92,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (ivorysql 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL {pg-version} (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; @@ -150,6 +152,7 @@ CONTAINER ID IMAGE COMMAND 此时,一主两备集群搭建完成 psql连接数据库的Oracle端口及PG端口 +[source,bash,subs="attributes"] ``` [root@manager-node1 docker-swarm]# psql -h127.0.0.1 -p1521 -U ivorysql -d ivorysql Password for user ivorysql: @@ -157,7 +160,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (ivorysql 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL {pg-version} (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; @@ -168,6 +171,7 @@ ivorysql=# show ivorysql.compatible_mode; ivorysql=# exit ``` +[source,bash,subs="attributes"] ``` [root@manager-node1 docker-swarm]# psql -h127.0.0.1 -p5432 -U ivorysql -d ivorysql Password for user ivorysql: @@ -175,7 +179,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (ivorysql 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL {pg-version} (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; diff --git a/CN/modules/ROOT/pages/v5.1/4.6.4.adoc b/CN/modules/ROOT/pages/v5.1/4.6.4.adoc index 06e7046..5ff12d0 100644 --- a/CN/modules/ROOT/pages/v5.1/4.6.4.adoc +++ b/CN/modules/ROOT/pages/v5.1/4.6.4.adoc @@ -7,29 +7,37 @@ == docker方式运行 ** 从Docker Hub上获取IvorySQL镜像 + +[source,bash,subs="attributes"] ``` -$ docker pull ivorysql/ivorysql:5.1-ubi8 +$ docker pull ivorysql/ivorysql:{ivorysql-version}-ubi8 ``` ** 运行IvorySQL + +[source,bash,subs="attributes"] ``` -$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/ivorysql:5.1-ubi8 +$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/ivorysql:{ivorysql-version}-ubi8 ``` ** 查看IvorySQL容器运行是否成功 + +[source,bash,subs="attributes"] ``` $ docker ps | grep ivorysql CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -6faa2d0ed705 ivorysql:5.1-ubi8 "docker-entrypoint.s…" 50 seconds ago Up 49 seconds 5866/tcp, 0.0.0.0:5434->5432/tcp ivorysql +6faa2d0ed705 ivorysql:{ivorysql-version}-ubi8 "docker-entrypoint.s…" 50 seconds ago Up 49 seconds 5866/tcp, 0.0.0.0:5434->5432/tcp ivorysql ``` == podman方式运行 ** 从Docker Hub上获取IvorySQL镜像 + +[source,bash,subs="attributes"] ``` -[highgo@manager-node1 ~]$ podman pull ivorysql/ivorysql:5.1-ubi8 -✔ docker.io/ivorysql/ivorysql:5.1-ubi8 -Trying to pull docker.io/ivorysql/ivorysql:5.1-ubi8... +[highgo@manager-node1 ~]$ podman pull ivorysql/ivorysql:{ivorysql-version}-ubi8 +✔ docker.io/ivorysql/ivorysql:{ivorysql-version}-ubi8 +Trying to pull docker.io/ivorysql/ivorysql:{ivorysql-version}-ubi8... Getting image source signatures Copying blob 5885448c5c88 done | Copying blob 6c502b378234 done | @@ -49,22 +57,26 @@ Writing manifest to image destination ``` ** 运行IvorySQL + +[source,bash,subs="attributes"] ``` -$ podman run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=123456 -d ivorysql/ivorysql:5.1-ubi8 +$ podman run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=123456 -d ivorysql/ivorysql:{ivorysql-version}-ubi8 ``` ** 查看IvorySQL容器运行是否成功 + +[source,bash,subs="attributes"] ``` [highgo@manager-node1 ~]$ podman ps | grep ivorysql CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -368dee58d5ef docker.io/ivorysql/ivorysql:5.1-ubi8 postgres 20 seconds ago Up 20 seconds 0.0.0.0:5434->5432/tcp, 1521/tcp, 5866/tcp ivorysql +368dee58d5ef docker.io/ivorysql/ivorysql:{ivorysql-version}-ubi8 postgres 20 seconds ago Up 20 seconds 0.0.0.0:5434->5432/tcp, 1521/tcp, 5866/tcp ivorysql [highgo@manager-node1 ~]$ podman exec -it ivorysql /bin/bash [root@8cc631eb413d /]# ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (ivorysql 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL {pg-version} (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# diff --git a/CN/modules/ROOT/pages/v5.1/4.7.1.adoc b/CN/modules/ROOT/pages/v5.1/4.7.1.adoc index 8841056..55120b8 100644 --- a/CN/modules/ROOT/pages/v5.1/4.7.1.adoc +++ b/CN/modules/ROOT/pages/v5.1/4.7.1.adoc @@ -27,11 +27,11 @@ IvorySQL Cloud平台,目前支持Linux系统下的安装,以下为各部分 |后端|cloudnative-1.0-SNAPSHOT.jar |K8S集群 a| [arabic] -. docker.io/ivorysql/ivory-operator:v5.1 -. docker.io/ivorysql/pgadmin:ubi9-9.9-5.1-1 -. docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1 -. docker.io/ivorysql/postgres-exporter:ubi9-0.17.0-5.1-1 -. docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1 +. docker.io/ivorysql/ivory-operator:v{ivorysql-version} +. docker.io/ivorysql/pgadmin:ubi8-9.9-5.0-1 +. docker.io/ivorysql/pgbackrest:ubi8-2.56.0-5.0-1 +. docker.io/ivorysql/postgres-exporter:ubi8-0.17.0-5.0-1 +. docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1 |=== 另外,云服务平台还需要用户安装以下组件: @@ -200,7 +200,7 @@ npm run build:prod 修改文件 -[literal] +[literal,subs="attributes"] ---- [root@cloud dist]# pwd @@ -228,7 +228,7 @@ disableNative = false dbtype = "IvorySQL" -dbversion = "5.1" +dbversion = "{ivorysql-version}" ---- === 安装部署nginx @@ -366,15 +366,15 @@ https://github.com/IvorySQL/ivory-operator/tree/IVYO_REL_5_STABLE[https://github [literal] ---- -docker.io/ivorysql/pgadmin:ubi9-9.9-5.1-1 +docker.io/ivorysql/pgadmin:ubi8-9.9-5.0-1 -docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1 +docker.io/ivorysql/pgbackrest:ubi8-2.56.0-5.0-1 -docker.io/ivorysql/pgbouncer:ubi9-1.23.0-5.1-1 +docker.io/ivorysql/pgbouncer:ubi8-1.23.0-5.0-1 -docker.io/ivorysql/postgres-exporter:ubi9-0.17.0-5.1-1 +docker.io/ivorysql/postgres-exporter:ubi8-0.17.0-5.0-1 -docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1 +docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1 docker.io/prom/prometheus:v2.33.5 diff --git a/CN/modules/ROOT/pages/v5.1/5.0.adoc b/CN/modules/ROOT/pages/v5.1/5.0.adoc index bf828ea..662545b 100644 --- a/CN/modules/ROOT/pages/v5.1/5.0.adoc +++ b/CN/modules/ROOT/pages/v5.1/5.0.adoc @@ -11,16 +11,16 @@ IvorySQL 作为一款兼容 Oracle 且基于 PostgreSQL 的高级开源数据库 [cols="1,2,1,3,3"] |==== |*序号*|*插件名称*|*版本*|*功能描述*|*适用场景* -| 1 | xref:v5.1/5.1.adoc[postgis] | 3.5.4 | 为 IvorySQL 提供地理空间数据支持,包括空间索引、空间函数和地理对象存储 | 地理信息系统(GIS)、地图服务、位置数据分析 -| 2 | xref:v5.1/5.2.adoc[pgvector] | 0.8.1 | 支持向量相似性搜索,可用于存储和检索高维向量数据| AI 应用、图像检索、推荐系统、语义搜索 -| 3 | xref:v5.1/5.3.adoc[pgddl (DDL Extractor)] | 0.31 | 提取数据库中的 DDL(数据定义语言)语句,便于版本管理和迁移 | 数据库版本控制、CI/CD 集成、结构比对与同步 -| 4 | xref:v5.1/5.4.adoc[pg_cron]​ | 1.6.0 | 提供数据库内部的定时任务调度功能,支持定期执行SQL语句 | 数据清理、定期统计、自动化维护任务 -| 5 | xref:v5.1/5.5.adoc[pgsql-http]​ | 1.7.0 | 允许在SQL中发起HTTP请求,与外部Web服务进行交互 | 数据采集、API集成、微服务调用 -| 6 | xref:v5.1/5.6.adoc[plpgsql_check] | 2.8 | 提供PL/pgSQL代码的静态分析功能,可在开发阶段发现潜在错误 | 存储过程开发、代码质量检查、调试优化 -| 7 | xref:v5.1/5.7.adoc[pgroonga] | 4.0.4 | 提供​非英语语言全文搜索功能,满足高性能应用的需求 | 中日韩等语言的全文搜索功能 -| 8 | xref:v5.1/5.8.adoc[pgaudit] | 18.0 | 提供细粒度的审计功能,记录数据库操作日志,便于安全审计和合规性检查 | 数据库安全审计、合规性检查、审计报告生成 -| 9 | xref:v5.1/5.9.adoc[pgrouting] | 3.8.0 | 提供地理空间数据的路由计算功能,支持多种算法和数据格式 | 地理空间分析、路径规划、物流优化 -| 10 | xref:v5.1/5.10.adoc[system_stats] | 3.2 | 提供用于访问系统级统计信息的函数 | 系统监控 +| 1 | xref:v{ivorysql-version}/5.1.adoc[postgis] | 3.5.4 | 为 IvorySQL 提供地理空间数据支持,包括空间索引、空间函数和地理对象存储 | 地理信息系统(GIS)、地图服务、位置数据分析 +| 2 | xref:v{ivorysql-version}/5.2.adoc[pgvector] | 0.8.1 | 支持向量相似性搜索,可用于存储和检索高维向量数据| AI 应用、图像检索、推荐系统、语义搜索 +| 3 | xref:v{ivorysql-version}/5.3.adoc[pgddl (DDL Extractor)] | 0.31 | 提取数据库中的 DDL(数据定义语言)语句,便于版本管理和迁移 | 数据库版本控制、CI/CD 集成、结构比对与同步 +| 4 | xref:v{ivorysql-version}/5.4.adoc[pg_cron]​ | 1.6.0 | 提供数据库内部的定时任务调度功能,支持定期执行SQL语句 | 数据清理、定期统计、自动化维护任务 +| 5 | xref:v{ivorysql-version}/5.5.adoc[pgsql-http]​ | 1.7.0 | 允许在SQL中发起HTTP请求,与外部Web服务进行交互 | 数据采集、API集成、微服务调用 +| 6 | xref:v{ivorysql-version}/5.6.adoc[plpgsql_check] | 2.8 | 提供PL/pgSQL代码的静态分析功能,可在开发阶段发现潜在错误 | 存储过程开发、代码质量检查、调试优化 +| 7 | xref:v{ivorysql-version}/5.7.adoc[pgroonga] | 4.0.4 | 提供​非英语语言全文搜索功能,满足高性能应用的需求 | 中日韩等语言的全文搜索功能 +| 8 | xref:v{ivorysql-version}/5.8.adoc[pgaudit] | 18.0 | 提供细粒度的审计功能,记录数据库操作日志,便于安全审计和合规性检查 | 数据库安全审计、合规性检查、审计报告生成 +| 9 | xref:v{ivorysql-version}/5.9.adoc[pgrouting] | 3.8.0 | 提供地理空间数据的路由计算功能,支持多种算法和数据格式 | 地理空间分析、路径规划、物流优化 +| 10 | xref:v{ivorysql-version}/5.10.adoc[system_stats] | 3.2 | 提供用于访问系统级统计信息的函数 | 系统监控 |==== 这些插件均经过 IvorySQL 团队的测试和适配,确保在 IvorySQL 环境下稳定运行。用户可以根据业务需求选择合适的插件,进一步提升数据库系统的能力和灵活性。 diff --git a/CN/modules/ROOT/pages/v5.1/5.1.adoc b/CN/modules/ROOT/pages/v5.1/5.1.adoc index 855cc7e..84f8ab0 100644 --- a/CN/modules/ROOT/pages/v5.1/5.1.adoc +++ b/CN/modules/ROOT/pages/v5.1/5.1.adoc @@ -14,7 +14,7 @@ IvorySQL原生100%兼容PostgreSQL,因此,PostGIS可以完美适配IvorySQL。 除PostGIS社区提供的安装方式以外,IvorySQL社区也提供了源码安装方式,源码安装环境为 Ubuntu 24.04(x86_64)。 [NOTE] -请确保环境中已安装了**IvorySQL5.1及以上版本** +请确保环境中已安装了**IvorySQL{ivorysql-version}及以上版本** ** 安装依赖 [literal] diff --git a/CN/modules/ROOT/pages/v5.1/5.2.adoc b/CN/modules/ROOT/pages/v5.1/5.2.adoc index 727aaef..b0c1a25 100644 --- a/CN/modules/ROOT/pages/v5.1/5.2.adoc +++ b/CN/modules/ROOT/pages/v5.1/5.2.adoc @@ -54,10 +54,10 @@ sudo --preserve-env=PG_CONFIG make install ** 创建pgvector扩展 + -[literal] +[literal,subs="attributes"] ---- [ivorysql@localhost ivorysql-5]$ psql -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# create extension vector; diff --git a/CN/modules/ROOT/pages/v5.1/5.7.adoc b/CN/modules/ROOT/pages/v5.1/5.7.adoc index 22c57d4..ffa8d05 100644 --- a/CN/modules/ROOT/pages/v5.1/5.7.adoc +++ b/CN/modules/ROOT/pages/v5.1/5.7.adoc @@ -20,10 +20,11 @@ IvorySQL社区提供了源码安装步骤,下面以PGroonga v4.0.4为例进行 === 安装依赖 环境 +[literal,subs="attributes"] ``` 操作系统:Ubuntu 24.04 CPU架构:x86_64 - IvorySQL: v5.1 + IvorySQL: v{ivorysql-version} ``` ==== 安装 msgpack-c @@ -74,6 +75,7 @@ highgo@ubuntu:~/work/IvorySQL/inst$ groonga --version psql 连接到数据库的pg模式下,执行命令: +[source,subs="attributes"] ```sql postgres=# CREATE extension pgroonga; CREATE EXTENSION @@ -86,7 +88,7 @@ postgres=# SELECT * FROM pg_available_extensions WHERE name = 'pgroonga'; postgres=# select version(); version -------------------------------------------------------------------------------- - PostgreSQL (ivorysql 5.1) 18.1 on x86_64-linux, compiled by gcc-13.3.0, 64-bit + PostgreSQL (IvorySQL {ivorysql-version}) {pg-version} on x86_64-linux, compiled by gcc-13.3.0, 64-bit (1 row) ``` diff --git a/CN/modules/ROOT/pages/v5.1/5.9.adoc b/CN/modules/ROOT/pages/v5.1/5.9.adoc index 84f1b6e..a65878b 100644 --- a/CN/modules/ROOT/pages/v5.1/5.9.adoc +++ b/CN/modules/ROOT/pages/v5.1/5.9.adoc @@ -14,7 +14,7 @@ pgRouting 广泛应用于物流配送、交通导航、网络分析、城市规 == 安装 [TIP] -环境中已经安装了IvorySQL5.1及以上版本,安装路径为/usr/local/ivorysql/ivorysql-5 +环境中已经安装了IvorySQL{ivorysql-version}及以上版本,安装路径为/usr/local/ivorysql/ivorysql-5 === 源码安装 diff --git a/CN/modules/ROOT/pages/v5.1/cpu_arch_adp.adoc b/CN/modules/ROOT/pages/v5.1/cpu_arch_adp.adoc index 14eadcd..85f5a83 100644 --- a/CN/modules/ROOT/pages/v5.1/cpu_arch_adp.adoc +++ b/CN/modules/ROOT/pages/v5.1/cpu_arch_adp.adoc @@ -8,8 +8,8 @@ IvorySQL适配认证如下CPU架构: [cols="8h,~,~,~"] |==== | 序号 | 架构名称 | 适配品牌 | 全平台介质包下载 -| 1 | x86_64 | Intel、AMD、兆芯、海光 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.amd64.deb[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.x86_64.rpm[rpm] -| 2 | aarch64 | 飞腾、鲲鹏 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.arm64.deb[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.aarch64.rpm[rpm] -| 3 | mips64el| 龙芯3000、龙芯4000 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.mips64el.deb[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.mips64el.rpm[rpm] -| 4 | loongarch64 | 龙芯5000 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.loongarch64.deb[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.loongarch64.rpm[rpm] +| 1 | x86_64 | Intel、AMD、兆芯、海光 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-x86_64-deb}[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-x86_64-rpm}[rpm] +| 2 | aarch64 | 飞腾、鲲鹏 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-aarch64-deb}[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-aarch64-rpm}[rpm] +| 3 | mips64el| 龙芯3000、龙芯4000 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-mips64el-deb}[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-mips64el-rpm}[rpm] +| 4 | loongarch64 | 龙芯5000 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-loongarch64-deb}[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-loongarch64-rpm}[rpm] |==== \ No newline at end of file diff --git a/CN/modules/ROOT/pages/v5.1/welcome.adoc b/CN/modules/ROOT/pages/v5.1/welcome.adoc index 4896550..a211116 100644 --- a/CN/modules/ROOT/pages/v5.1/welcome.adoc +++ b/CN/modules/ROOT/pages/v5.1/welcome.adoc @@ -15,4 +15,4 @@ IvorySQL 项目是瀚高软件提出的一个开源项目,旨在将 Oracle 兼 IvorySQL 开源并且可以免费使用,如果您有任何建议请联系 support@ivorysql.org == 文档下载 -https://docs.ivorysql.org/cn/ivorysql-doc/v5.1/ivorysql.pdf[IvorySQL v5.1 pdf 文档] \ No newline at end of file +https://docs.ivorysql.org/cn/ivorysql-doc/v{ivorysql-version}/ivorysql.pdf[IvorySQL v{ivorysql-version} pdf 文档] \ No newline at end of file diff --git a/EN/antora.yml b/EN/antora.yml index 016f8de..06620fc 100644 --- a/EN/antora.yml +++ b/EN/antora.yml @@ -6,5 +6,16 @@ asciidoc: attributes: source-language: asciidoc@ table-caption: false + ivorysql-version: 5.1 + pg-version: 18.1 + package-link: 'https://github.com/ivorysql/ivorysql' + package-link-x86_64-deb: 'IvorySQL-5.1-62069c2-20251211.amd64.deb' + package-link-x86_64-rpm: 'IvorySQL-5.1-62069c2-20251211.x86_64.rpm' + package-link-aarch64-deb: 'IvorySQL-5.1-62069c2-20251211.arm64.deb' + package-link-aarch64-rpm: 'IvorySQL-5.1-62069c2-20251211.aarch64.rpm' + package-link-mips64el-deb: 'IvorySQL-5.1-62069c2-20251211.mips64el.deb' + package-link-mips64el-rpm: 'IvorySQL-5.1-62069c2-20251211.mips64el.rpm' + package-link-loongarch64-deb: 'IvorySQL-5.1-62069c2-20251211.loongarch64.deb' + package-link-loongarch64-rpm: 'IvorySQL-5.1-62069c2-20251211.loongarch64.rpm' nav: - modules/ROOT/nav.adoc diff --git a/EN/modules/ROOT/nav.adoc b/EN/modules/ROOT/nav.adoc index d66866c..8823ea3 100644 --- a/EN/modules/ROOT/nav.adoc +++ b/EN/modules/ROOT/nav.adoc @@ -1,84 +1,84 @@ -* xref:v5.1/welcome.adoc[Welcome] -* xref:v5.1/1.adoc[Release] -* xref:v5.1/2.adoc[About] +* xref:v{ivorysql-version}/welcome.adoc[Welcome] +* xref:v{ivorysql-version}/1.adoc[Release] +* xref:v{ivorysql-version}/2.adoc[About] * Getting Started with IvorySQL -** xref:v5.1/3.1.adoc[Quick Start] -** xref:v5.1/3.2.adoc[Monitoring] -** xref:v5.1/3.3.adoc[Maintenance] +** xref:v{ivorysql-version}/3.1.adoc[Quick Start] +** xref:v{ivorysql-version}/3.2.adoc[Monitoring] +** xref:v{ivorysql-version}/3.3.adoc[Maintenance] * IvorySQL Advanced Feature -** xref:v5.1/4.1.adoc[Installation] -** xref:v5.1/4.2.adoc[Cluster] -** xref:v5.1/4.5.adoc[Migration] -** xref:v5.1/4.3.adoc[Developer] +** xref:v{ivorysql-version}/4.1.adoc[Installation] +** xref:v{ivorysql-version}/4.2.adoc[Cluster] +** xref:v{ivorysql-version}/4.5.adoc[Migration] +** xref:v{ivorysql-version}/4.3.adoc[Developer] ** Containerization -*** xref:v5.1/4.6.1.adoc[K8S deployment] -*** xref:v5.1/4.6.2.adoc[Operator deployment] -*** xref:v5.1/4.6.4.adoc[Docker & Podman deployment] -*** xref:v5.1/4.6.3.adoc[Docker Swarm & Docker Compose deployment] -** xref:v5.1/4.4.adoc[Operation Management] +*** xref:v{ivorysql-version}/4.6.1.adoc[K8S deployment] +*** xref:v{ivorysql-version}/4.6.2.adoc[Operator deployment] +*** xref:v{ivorysql-version}/4.6.4.adoc[Docker & Podman deployment] +*** xref:v{ivorysql-version}/4.6.3.adoc[Docker Swarm & Docker Compose deployment] +** xref:v{ivorysql-version}/4.4.adoc[Operation Management] ** Cloud Service Platform -*** xref:v5.1/4.7.1.adoc[IvorySQL Cloud Installation] -*** xref:v5.1/4.7.2.adoc[IvorySQL Cloud Usage] +*** xref:v{ivorysql-version}/4.7.1.adoc[IvorySQL Cloud Installation] +*** xref:v{ivorysql-version}/4.7.2.adoc[IvorySQL Cloud Usage] * IvorySQL Ecosystem -** xref:v5.1/cpu_arch_adp.adoc[CPU Architecture Adaption] -** xref:v5.1/os_arch_adp.adoc[Operating System Adaption] +** xref:v{ivorysql-version}/cpu_arch_adp.adoc[CPU Architecture Adaption] +** xref:v{ivorysql-version}/os_arch_adp.adoc[Operating System Adaption] ** Eco Component Adaption -*** xref:v5.1/5.0.adoc[Overview] -*** xref:v5.1/5.1.adoc[postgis] -*** xref:v5.1/5.2.adoc[pgvector] -*** xref:v5.1/5.3.adoc[pgddl(DDL Extractor)] -*** xref:v5.1/5.4.adoc[pg_cron] -*** xref:v5.1/5.5.adoc[pgsql-http] -*** xref:v5.1/5.6.adoc[plpgsql_check] -*** xref:v5.1/5.7.adoc[pgroonga] -*** xref:v5.1/5.8.adoc[pgaudit] -*** xref:v5.1/5.9.adoc[pgrouting] -*** xref:v5.1/5.10.adoc[system_stats] +*** xref:v{ivorysql-version}/5.0.adoc[Overview] +*** xref:v{ivorysql-version}/5.1.adoc[postgis] +*** xref:v{ivorysql-version}/5.2.adoc[pgvector] +*** xref:v{ivorysql-version}/5.3.adoc[pgddl(DDL Extractor)] +*** xref:v{ivorysql-version}/5.4.adoc[pg_cron] +*** xref:v{ivorysql-version}/5.5.adoc[pgsql-http] +*** xref:v{ivorysql-version}/5.6.adoc[plpgsql_check] +*** xref:v{ivorysql-version}/5.7.adoc[pgroonga] +*** xref:v{ivorysql-version}/5.8.adoc[pgaudit] +*** xref:v{ivorysql-version}/5.9.adoc[pgrouting] +*** xref:v{ivorysql-version}/5.10.adoc[system_stats] * IvorySQL Architecture Design ** Query Processing -*** xref:v5.1/6.1.1.adoc[Dual Parser] +*** xref:v{ivorysql-version}/6.1.1.adoc[Dual Parser] ** Compatibility Framework -*** xref:v5.1/7.1.adoc[Ivorysql frame design] -*** xref:v5.1/7.2.adoc[GUC Framework] -*** xref:v5.1/7.4.adoc[Dual-mode design] -*** xref:v5.1/6.2.1.adoc[initdb Process] +*** xref:v{ivorysql-version}/7.1.adoc[Ivorysql frame design] +*** xref:v{ivorysql-version}/7.2.adoc[GUC Framework] +*** xref:v{ivorysql-version}/7.4.adoc[Dual-mode design] +*** xref:v{ivorysql-version}/6.2.1.adoc[initdb Process] ** Compatibility Features -*** xref:v5.1/6.3.1.adoc[like] -*** xref:v5.1/6.3.3.adoc[RowID] -*** xref:v5.1/6.3.2.adoc[OUT Parameter] -*** xref:v5.1/6.3.4.adoc[%Type & %Rowtype] -*** xref:v5.1/6.3.5.adoc[NLS Parameters] -*** xref:v5.1/6.3.6.adoc[Function and stored procedure] -*** xref:v5.1/6.3.7.adoc[Nested Subfunctions] -*** xref:v5.1/6.3.8.adoc[Force View] -*** xref:v5.1/6.3.9.adoc[Case Conversion] -*** xref:v5.1/6.3.10.adoc[sys_guid Function] -*** xref:v5.1/6.3.11.adoc[Empty String to NULL] -*** xref:v5.1/6.3.12.adoc[CALL INTO] +*** xref:v{ivorysql-version}/6.3.1.adoc[like] +*** xref:v{ivorysql-version}/6.3.3.adoc[RowID] +*** xref:v{ivorysql-version}/6.3.2.adoc[OUT Parameter] +*** xref:v{ivorysql-version}/6.3.4.adoc[%Type & %Rowtype] +*** xref:v{ivorysql-version}/6.3.5.adoc[NLS Parameters] +*** xref:v{ivorysql-version}/6.3.6.adoc[Function and stored procedure] +*** xref:v{ivorysql-version}/6.3.7.adoc[Nested Subfunctions] +*** xref:v{ivorysql-version}/6.3.8.adoc[Force View] +*** xref:v{ivorysql-version}/6.3.9.adoc[Case Conversion] +*** xref:v{ivorysql-version}/6.3.10.adoc[sys_guid Function] +*** xref:v{ivorysql-version}/6.3.11.adoc[Empty String to NULL] +*** xref:v{ivorysql-version}/6.3.12.adoc[CALL INTO] ** Built-in Functions -*** xref:v5.1/6.4.1.adoc[sys_context] -*** xref:v5.1/6.4.2.adoc[userenv] -** xref:v5.1/6.5.adoc[GB18030 Character Set] +*** xref:v{ivorysql-version}/6.4.1.adoc[sys_context] +*** xref:v{ivorysql-version}/6.4.2.adoc[userenv] +** xref:v{ivorysql-version}/6.5.adoc[GB18030 Character Set] * List of Oracle compatible features -** xref:v5.1/7.3.adoc[1、Case conversion] -** xref:v5.1/7.5.adoc[2、LIKE operator] -** xref:v5.1/7.6.adoc[3、anonymous block] -** xref:v5.1/7.7.adoc[4、functions and stored procedures] -** xref:v5.1/7.8.adoc[5、Built-in data types and built-in functions] -** xref:v5.1/7.9.adoc[6、ports and IP] -** xref:v5.1/7.10.adoc[7、XML Function] -** xref:v5.1/7.11.adoc[8、sequence] -** xref:v5.1/7.12.adoc[9、Package] -** xref:v5.1/7.13.adoc[10、Invisible Columns] -** xref:v5.1/7.14.adoc[11、RowID Column] -** xref:v5.1/7.15.adoc[12、OUT Parameter] -** xref:v5.1/7.16.adoc[13、%Type & %Rowtype] -** xref:v5.1/7.17.adoc[14、NLS Parameters] -** xref:v5.1/7.18.adoc[15、Force View] -** xref:v5.1/7.19.adoc[16、Nested Subfunctions] -** xref:v5.1/7.20.adoc[17、sys_guid Function] -** xref:v5.1/7.21.adoc[18、Empty String to NULL] -** xref:v5.1/7.22.adoc[19、CALL INTO] -* xref:v5.1/8.adoc[Community contribution] -* xref:v5.1/9.adoc[Tool Reference] -* xref:v5.1/10.adoc[FAQ] +** xref:v{ivorysql-version}/7.3.adoc[1、Case conversion] +** xref:v{ivorysql-version}/7.5.adoc[2、LIKE operator] +** xref:v{ivorysql-version}/7.6.adoc[3、anonymous block] +** xref:v{ivorysql-version}/7.7.adoc[4、functions and stored procedures] +** xref:v{ivorysql-version}/7.8.adoc[5、Built-in data types and built-in functions] +** xref:v{ivorysql-version}/7.9.adoc[6、ports and IP] +** xref:v{ivorysql-version}/7.10.adoc[7、XML Function] +** xref:v{ivorysql-version}/7.11.adoc[8、sequence] +** xref:v{ivorysql-version}/7.12.adoc[9、Package] +** xref:v{ivorysql-version}/7.13.adoc[10、Invisible Columns] +** xref:v{ivorysql-version}/7.14.adoc[11、RowID Column] +** xref:v{ivorysql-version}/7.15.adoc[12、OUT Parameter] +** xref:v{ivorysql-version}/7.16.adoc[13、%Type & %Rowtype] +** xref:v{ivorysql-version}/7.17.adoc[14、NLS Parameters] +** xref:v{ivorysql-version}/7.18.adoc[15、Force View] +** xref:v{ivorysql-version}/7.19.adoc[16、Nested Subfunctions] +** xref:v{ivorysql-version}/7.20.adoc[17、sys_guid Function] +** xref:v{ivorysql-version}/7.21.adoc[18、Empty String to NULL] +** xref:v{ivorysql-version}/7.22.adoc[19、CALL INTO] +* xref:v{ivorysql-version}/8.adoc[Community contribution] +* xref:v{ivorysql-version}/9.adoc[Tool Reference] +* xref:v{ivorysql-version}/10.adoc[FAQ] diff --git a/EN/modules/ROOT/pages/v5.1/3.1.adoc b/EN/modules/ROOT/pages/v5.1/3.1.adoc index 906a011..ba31f38 100644 --- a/EN/modules/ROOT/pages/v5.1/3.1.adoc +++ b/EN/modules/ROOT/pages/v5.1/3.1.adoc @@ -50,8 +50,9 @@ enabled=1 gpgcheck=0 ``` After saving and exiting, you can install IvorySQL 4 with the following steps +[source,bash,subs="attributes"] ``` -$ sudo dnf install -y ivorysql5-5.1 +$ sudo dnf install -y ivorysql5-{ivorysql-version} ``` [[setting-environment-variables]] @@ -107,28 +108,35 @@ ivorysql 3238 1551 0 20:35 pts/0 00:00:00 grep --color=auto postgres === Running IvorySQL in docker ** Get IvorySQL image from Docker Hub + +[source,bash,subs="attributes"] ``` -$ docker pull ivorysql/IvorySQL 5.1-ubi8 +$ docker pull ivorysql/IvorySQL {ivorysql-version}-ubi8 ``` ** Running IvorySQL + +[source,bash,subs="attributes"] ``` -$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/IvorySQL 5.1-ubi8 +$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/IvorySQL {ivorysql-version}-ubi8 ``` ** Check if the IvorySQL container is running successfully + +[source,bash,subs="attributes"] ``` $ docker ps | grep ivorysql CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -6faa2d0ed705 IvorySQL 5.1-ubi8 "docker-entrypoint.s…" 50 seconds ago Up 49 seconds 5866/tcp, 0.0.0.0:5434->5432/tcp ivorysql +6faa2d0ed705 IvorySQL {ivorysql-version}-ubi8 "docker-entrypoint.s…" 50 seconds ago Up 49 seconds 5866/tcp, 0.0.0.0:5434->5432/tcp ivorysql ``` == Connecting to IvorySQL Connect to IovrySQL via psql: +[source,subs="attributes"] ``` $ psql -d -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# @@ -143,4 +151,4 @@ TIP: When running IvorySQL in Docker, additional parameters need to be added, li Now you can start your journey of IvorySQL! Enjoy! -To explore additional installation methods, please refer to the xref:v5.1/4.1.adoc[Installation]. \ No newline at end of file +To explore additional installation methods, please refer to the xref:v{ivorysql-version}/4.1.adoc[Installation]. \ No newline at end of file diff --git a/EN/modules/ROOT/pages/v5.1/4.1.adoc b/EN/modules/ROOT/pages/v5.1/4.1.adoc index 19e63f4..18d6283 100644 --- a/EN/modules/ROOT/pages/v5.1/4.1.adoc +++ b/EN/modules/ROOT/pages/v5.1/4.1.adoc @@ -15,7 +15,7 @@ The installation methods for IvorySQL include the following five: - <> -This chapter will provide detailed instructions on the installation, execution, and uninstallation processes for each method. For a quicker access to IvorySQL, please refer to xref:v5.1/3.1.adoc#quick-installation[Quick installation]. +This chapter will provide detailed instructions on the installation, execution, and uninstallation processes for each method. For a quicker access to IvorySQL, please refer to xref:v{ivorysql-version}/3.1.adoc#quick-installation[Quick installation]. Before getting started, please create an user and grant it root privileges. All the installation steps will be performed by this user. Here we just name it 'ivorysql'. @@ -32,21 +32,26 @@ enabled=1 gpgcheck=0 ``` After saving and exiting, you can install IvorySQL 4 with the following steps +[source,bash,subs="attributes"] ``` -$ sudo dnf install -y ivorysql5-5.1 +$ sudo dnf install -y ivorysql5-{ivorysql-version} ``` [[Docker-installation]] == Docker installation ** Get IvorySQL image from Docker Hub + +[source,bash,subs="attributes"] ``` -$ docker pull ivorysql/IvorySQL 5.1-ubi8 +$ docker pull ivorysql/IvorySQL {ivorysql-version}-ubi8 ``` ** Run IvorySQL + +[source,bash,subs="attributes"] ``` -$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/IvorySQL 5.1-ubi8 +$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/IvorySQL {ivorysql-version}-ubi8 ``` -e Parameter Explanation |==== @@ -73,8 +78,10 @@ $ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d $ sudo dnf install -y lz4 libicu libxslt python3 ``` ** Getting rpms + +[source,bash,subs="attributes"] ``` -$ sudo wget https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.x86_64.rpm +$ sudo wget https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/IvorySQL-{ivorysql-version}-9d890e9-20251120.x86_64.rpm ``` ** Installing rpms @@ -103,7 +110,7 @@ $ sudo apt install -y pkg-config uuid-dev ``` $ git clone https://github.com/IvorySQL/IvorySQL.git $ cd IvorySQL -$ git checkout tags/IvorySQL_5.1 +$ git checkout -b IVORY_REL_5_STABLE origin/IVORY_REL_5_STABLE ``` ** Configuring @@ -144,13 +151,17 @@ $ sudo apt -y install pkg-config libreadline-dev libicu-dev libldap2-dev uuid-de ``` ** Getting deb + +[source,bash,subs="attributes"] ``` -$ sudo wget https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.amd64.deb +$ sudo wget https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/IvorySQL-{ivorysql-version}-a50789d-20250304.amd64.deb ``` ** Installing deb + +[source,bash,subs="attributes"] ``` -$ sudo dpkg -i IvorySQL-5.1-62069c2-20251211.amd64.deb +$ sudo dpkg -i IvorySQL-{ivorysql-version}-a50789d-20250304.amd64.deb ``` IvorySQL will then be installed in the /usr/ivory-5/ directory. @@ -217,9 +228,10 @@ ivorysql 130445 130274 0 02:45 pts/1 00:00:00 grep --color=auto postgres == Connecting to IvorySQL Connect to IovrySQL via psql: +[source,subs="attributes"] ``` $ psql -d -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# @@ -242,40 +254,45 @@ No matter which method is used for the uninstallation, make sure the service has === Uninstallation for yum installation Run the following commands in turn and clean the residual folders: +[source,bash,subs="attributes"] ``` -$ sudo dnf remove -y ivorysql5-5.1 +$ sudo dnf remove -y ivorysql5-{ivorysql-version} ``` === Uninstallation for docker installation Stop IvorySQL container and remove IvorySQL image: +[source,bash,subs="attributes"] ``` $ docker stop ivorysql $ docker rm ivorysql -$ docker rmi ivorysql/IvorySQL 5.1-ubi8 +$ docker rmi ivorysql/IvorySQL {ivorysql-version}-ubi8 ``` === Uninstallation for rpm installation Uninstall the rpms and clear the residual folders: +[source,bash,subs="attributes"] ``` $ sudo yum remove --disablerepo=* ivorysql5\* -$ sudo rm -rf IvorySQL-5.1 +$ sudo rm -rf IvorySQL-{ivorysql-version} ``` === Uninstallation for source code installation Uninstall the database system, then clear the residual folders: +[source,bash,subs="attributes"] ``` $ sudo make uninstall $ make clean -$ sudo rm -rf IvorySQL-5.1 +$ sudo rm -rf IvorySQL-{ivorysql-version} ``` === Uninstallation for deb installation Uninstall the database system, then clear the residual folders: +[source,bash,subs="attributes"] ``` -$ sudo dpkg -P IvorySQL-5.1 -$ sudo rm -rf IvorySQL-5.1 +$ sudo dpkg -P IvorySQL-{ivorysql-version} +$ sudo rm -rf IvorySQL-{ivorysql-version} ``` \ No newline at end of file diff --git a/EN/modules/ROOT/pages/v5.1/4.2.adoc b/EN/modules/ROOT/pages/v5.1/4.2.adoc index 78805c8..3ee5e49 100644 --- a/EN/modules/ROOT/pages/v5.1/4.2.adoc +++ b/EN/modules/ROOT/pages/v5.1/4.2.adoc @@ -8,9 +8,9 @@ This chapter is a demo to show you how to build an IvorySQL cluster. Just take a == Primary node === Installing and start database -For quick database installation by yum, please refer to xref:v5.1/3.1.adoc#quick-installation[Quick installation]。 +For quick database installation by yum, please refer to xref:v{ivorysql-version}/3.1.adoc#quick-installation[Quick installation]。 -For more installation options, please refer to xref:v5.1/4.1.adoc#Installation[Installation]。 +For more installation options, please refer to xref:v{ivorysql-version}/4.1.adoc#Installation[Installation]。 [NOTE] The master node database needs to be installed and **started**. @@ -55,9 +55,9 @@ $ pg_ctl restart == Standby node === Installing database -For quick database installation by yum, please refer to xref:v5.1/3.1.adoc#quick-installation[Quick installation]。 +For quick database installation by yum, please refer to xref:v{ivorysql-version}/3.1.adoc#quick-installation[Quick installation]。 -For more installation options, please refer to xref:v5.1/4.1.adoc#Installation[Installation]。 +For more installation options, please refer to xref:v{ivorysql-version}/4.1.adoc#Installation[Installation]。 [NOTE] The standby node database only needs to be installed and **not started**. @@ -115,9 +115,10 @@ ivorysql 6567 6139 0 21:54 ? 00:00:00 postgres: walreceiver streaming ... ``` On the primary node, connect to IvorySQL and show the status: +[source,subs="attributes"] ``` $ psql -d ivorysql -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# select * from pg_stat_replication; @@ -139,9 +140,10 @@ Here 192.168.31.102 is the ip address of the standby node, and async means the d All writing operations are performed on the primary node, while reading can be on both primary and standby. The data on primary is synchronized to standby through streaming replication. The writing result can be queried on all the nodes in the cluster. Below is an example. Create a new database test on primary and query: +[source,subs="attributes"] ``` $ psql -d ivorysql -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# create database test; @@ -159,9 +161,10 @@ ivorysql=# \l (4 rows) ``` Query on the standby node: +[source,subs="attributes"] ``` $ psql -d ivorysql -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# \l diff --git a/EN/modules/ROOT/pages/v5.1/4.4.adoc b/EN/modules/ROOT/pages/v5.1/4.4.adoc index 1823d80..b080eb3 100644 --- a/EN/modules/ROOT/pages/v5.1/4.4.adoc +++ b/EN/modules/ROOT/pages/v5.1/4.4.adoc @@ -77,7 +77,7 @@ When the above operation is executed, the old and new versions of the backend se === Upgrade with the pg_upgrade utility -The pg_upgrade tool is a built-in cross-version upgrade utility in PostgreSQL that enables in-place database upgrades without requiring export and import operations. Since IvorySQL is derived from PostgreSQL, it can also use the pg_upgrade tool for major version upgrades. Below is a brief introduction on how to use pg_upgrade to upgrade IvorySQL to the latest 5.1 version on the CentOS8 platform. +The pg_upgrade tool is a built-in cross-version upgrade utility in PostgreSQL that enables in-place database upgrades without requiring export and import operations. Since IvorySQL is derived from PostgreSQL, it can also use the pg_upgrade tool for major version upgrades. Below is a brief introduction on how to use pg_upgrade to upgrade IvorySQL to the latest {ivorysql-version} version on the CentOS8 platform. pg_upgrade provides a pre-upgrade compatibility check (using the -c or --check option), which can identify issues such as plugin or data type incompatibilities. If the --link option is specified, the new version service can directly use the existing database files without copying, typically completing the upgrade in just a few minutes. @@ -96,23 +96,26 @@ First, stop the old version of the IvorySQL 4.6 database: ``` /usr/ivory-4/bin/pg_ctl -D ./data stop ``` -Then install the new version of the IvorySQL 5.1 database: +Then install the new version of the IvorySQL {ivorysql-version} database: +[source,bash,subs="attributes"] ``` -dnf install -y ivorysql5-5.1 +dnf install -y ivorysql5-{ivorysql-version} ``` -Initialize the new IvorySQL 5.1 data directory: +Initialize the new IvorySQL {ivorysql-version} data directory: ``` /usr/ivory-5/bin/initdb -D ./data ``` Check version compatibility: +[source,bash,subs="attributes"] ``` -/usr/ivory-5/bin/pg_upgrade --old-datadir=/home/ivorysql/test/4.6/data --new-datadir=/home/ivorysql/test/5.1/data --old-bindir=/usr/ivory-4/bin/ --new-bindir=/usr/ivory-5/bin/ --check +/usr/ivory-5/bin/pg_upgrade --old-datadir=/home/ivorysql/test/4.6/data --new-datadir=/home/ivorysql/test/{ivorysql-version}/data --old-bindir=/usr/ivory-4/bin/ --new-bindir=/usr/ivory-5/bin/ --check ``` The appearance of "Clusters are compatible" at the end indicates that there are no compatibility issues between the two versions of data, and the upgrade can proceed. Official upgrade: +[source,bash,subs="attributes"] ``` -/usr/ivory-5/bin/pg_upgrade --old-datadir=/home/ivorysql/test/4.6/data --new-datadir=/home/ivorysql/test/5.1/data --old-bindir=/usr/ivory-4/bin/ --new-bindir=/usr/ivory-5/bin/ +/usr/ivory-5/bin/pg_upgrade --old-datadir=/home/ivorysql/test/4.6/data --new-datadir=/home/ivorysql/test/{ivorysql-version}/data --old-bindir=/usr/ivory-4/bin/ --new-bindir=/usr/ivory-5/bin/ ``` Seeing "Upgrade Complete" indicates that the upgrade has been successfully completed. @@ -142,7 +145,7 @@ This upgrade method can be used with built-in logical replication tools and exte == Managing IvorySQL Versions -IvorySQL is based on PostgreSQL and is updated at the same frequency as PostgreSQL, with one major release per year and one minor release per quarter. IvorySQL 5.1 is based on PostgreSQL 18.1, and all versions of IvorySQL are backward compatible.The relevant version features can be viewed by looking at https://www.ivorysql.org/en/releases-page/[Official Website]。 +IvorySQL is based on PostgreSQL and is updated at the same frequency as PostgreSQL, with one major release per year and one minor release per quarter. IvorySQL {ivorysql-version} is based on PostgreSQL {pg-version}, and all versions of IvorySQL are backward compatible.The relevant version features can be viewed by looking at https://www.ivorysql.org/en/releases-page/[Official Website]。 == Managing IvorySQL database access diff --git a/EN/modules/ROOT/pages/v5.1/4.5.adoc b/EN/modules/ROOT/pages/v5.1/4.5.adoc index f573f70..4591ac1 100644 --- a/EN/modules/ROOT/pages/v5.1/4.5.adoc +++ b/EN/modules/ROOT/pages/v5.1/4.5.adoc @@ -451,6 +451,7 @@ Export HR and SCOTT user data in the same way. Create ORCL database +[source,subs="attributes"] ``` # su - ivorysql @@ -460,7 +461,7 @@ $ createdb orcl $ psql -psql (18.1) +psql ({pg-version}) Type "help" for help. @@ -486,10 +487,11 @@ ivorysql=# Create SH, HR, SCOTT users: +[source,subs="attributes"] ``` $ psql orcl -psql (18.1) +psql ({pg-version}) Type "help" for help. diff --git a/EN/modules/ROOT/pages/v5.1/4.6.1.adoc b/EN/modules/ROOT/pages/v5.1/4.6.1.adoc index 25bac38..4a78231 100644 --- a/EN/modules/ROOT/pages/v5.1/4.6.1.adoc +++ b/EN/modules/ROOT/pages/v5.1/4.6.1.adoc @@ -51,6 +51,7 @@ statefulset.apps/ivorysql 1/1 2m39s ``` Connect to IvorySQL via its PostgreSQL port using the psql +[source,bash,subs="attributes"] ``` [root@k8s-master single]# psql -U ivorysql -p 32106 -h 127.0.0.1 -d ivorysql Password for user ivorysql: @@ -58,7 +59,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (IvorySQL 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL 18.0 (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; @@ -71,6 +72,7 @@ ivorysql=# exit ``` Connect to IvorySQL's Oracle-compatible port using psql. +[source,bash,subs="attributes"] ``` [root@k8s-master single]# psql -U ivorysql -p 31887 -h 127.0.0.1 -d ivorysql Password for user ivorysql: @@ -78,7 +80,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (IvorySQL 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL 18.0 (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; diff --git a/EN/modules/ROOT/pages/v5.1/4.6.3.adoc b/EN/modules/ROOT/pages/v5.1/4.6.3.adoc index 8a16836..5cb6e3e 100644 --- a/EN/modules/ROOT/pages/v5.1/4.6.3.adoc +++ b/EN/modules/ROOT/pages/v5.1/4.6.3.adoc @@ -65,6 +65,7 @@ fr0m9chu3ce8 ivorysql-hac_ivypatroni2 replicated 1/1 ivorysql/docke ``` Connect to the database using psql via Oracle port and PostgreSQL port +[source,bash,subs="attributes"] ``` [root@manager-node1 docker-swarm]# psql -h127.0.0.1 -p1521 -U ivorysql -d ivorysql Password for user ivorysql: @@ -72,7 +73,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (IvorySQL 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL 18.0 (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; @@ -83,6 +84,7 @@ ivorysql=# show ivorysql.compatible_mode; ivorysql=# exit ``` +[source,bash,subs="attributes"] ``` [root@manager-node1 docker-swarm]# psql -h127.0.0.1 -p5432 -U ivorysql -d ivorysql Password for user ivorysql: @@ -90,7 +92,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (IvorySQL 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL 18.0 (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; @@ -149,6 +151,7 @@ CONTAINER ID IMAGE COMMAND At this point, the one-primary-two-standby cluster setup is complete. Connect to the database using psql via Oracle-compatible ports and PostgreSQL ports. +[source,bash,subs="attributes"] ``` [root@manager-node1 docker-swarm]# psql -h127.0.0.1 -p1521 -U ivorysql -d ivorysql Password for user ivorysql: @@ -156,7 +159,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (IvorySQL 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL 18.0 (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; @@ -167,6 +170,7 @@ ivorysql=# show ivorysql.compatible_mode; ivorysql=# exit ``` +[source,bash,subs="attributes"] ``` [root@manager-node1 docker-swarm]# psql -h127.0.0.1 -p5432 -U ivorysql -d ivorysql Password for user ivorysql: @@ -174,7 +178,7 @@ Password for user ivorysql: ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (IvorySQL 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL 18.0 (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# show ivorysql.compatible_mode; diff --git a/EN/modules/ROOT/pages/v5.1/4.6.4.adoc b/EN/modules/ROOT/pages/v5.1/4.6.4.adoc index 3503872..4c15bc2 100644 --- a/EN/modules/ROOT/pages/v5.1/4.6.4.adoc +++ b/EN/modules/ROOT/pages/v5.1/4.6.4.adoc @@ -7,29 +7,37 @@ == Running IvorySQL in docker ** Get IvorySQL image from Docker Hub + +[source,bash,subs="attributes"] ``` -$ docker pull ivorysql/IvorySQL 5.1-ubi8 +$ docker pull ivorysql/IvorySQL {ivorysql-version}-ubi8 ``` ** Running IvorySQL + +[source,bash,subs="attributes"] ``` -$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/IvorySQL 5.1-ubi8 +$ docker run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=your_password -d ivorysql/IvorySQL {ivorysql-version}-ubi8 ``` ** Check if the IvorySQL container is running successfully + +[source,bash,subs="attributes"] ``` $ docker ps | grep ivorysql CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -6faa2d0ed705 IvorySQL 5.1-ubi8 "docker-entrypoint.s…" 50 seconds ago Up 49 seconds 5866/tcp, 0.0.0.0:5434->5432/tcp ivorysql +6faa2d0ed705 IvorySQL {ivorysql-version}-ubi8 "docker-entrypoint.s…" 50 seconds ago Up 49 seconds 5866/tcp, 0.0.0.0:5434->5432/tcp ivorysql ``` == Running with Podman ** Pull IvorySQL Image from Docker Hub + +[source,bash,subs="attributes"] ``` -[highgo@manager-node1 ~]$ podman pull ivorysql/IvorySQL 5.1-ubi8 -✔ docker.io/ivorysql/IvorySQL 5.1-ubi8 -Trying to pull docker.io/ivorysql/IvorySQL 5.1-ubi8... +[highgo@manager-node1 ~]$ podman pull ivorysql/IvorySQL {ivorysql-version}-ubi8 +✔ docker.io/ivorysql/IvorySQL {ivorysql-version}-ubi8 +Trying to pull docker.io/ivorysql/IvorySQL {ivorysql-version}-ubi8... Getting image source signatures Copying blob 5885448c5c88 done | Copying blob 6c502b378234 done | @@ -49,22 +57,26 @@ Writing manifest to image destination ``` ** Run IvorySQL Container + +[source,bash,subs="attributes"] ``` -$ podman run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=123456 -d ivorysql/IvorySQL 5.1-ubi8 +$ podman run --name ivorysql -p 5434:5432 -e IVORYSQL_PASSWORD=123456 -d ivorysql/IvorySQL {ivorysql-version}-ubi8 ``` ** Check if IvorySQL Container is Running Successfully + +[source,bash,subs="attributes"] ``` [highgo@manager-node1 ~]$ podman ps | grep ivorysql CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -368dee58d5ef docker.io/ivorysql/IvorySQL 5.1-ubi8 postgres 20 seconds ago Up 20 seconds 0.0.0.0:5434->5432/tcp, 1521/tcp, 5866/tcp ivorysql +368dee58d5ef docker.io/ivorysql/IvorySQL {ivorysql-version}-ubi8 postgres 20 seconds ago Up 20 seconds 0.0.0.0:5434->5432/tcp, 1521/tcp, 5866/tcp ivorysql [highgo@manager-node1 ~]$ podman exec -it ivorysql /bin/bash [root@8cc631eb413d /]# ivorysql=# select version(); version ------------------------------------------------------------------------------------------------------------------------ - PostgreSQL 18.1 (IvorySQL 5.1) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit + PostgreSQL 18.0 (IvorySQL {ivorysql-version}) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28), 64-bit (1 row) ivorysql=# diff --git a/EN/modules/ROOT/pages/v5.1/4.7.1.adoc b/EN/modules/ROOT/pages/v5.1/4.7.1.adoc index 1b87961..251a409 100644 --- a/EN/modules/ROOT/pages/v5.1/4.7.1.adoc +++ b/EN/modules/ROOT/pages/v5.1/4.7.1.adoc @@ -25,11 +25,11 @@ The IvorySQL Cloud platform currently supports installation on Linux systems. Th |Backend |cloudnative-1.0-SNAPSHOT.jar |K8S cluster a| [arabic] -. docker.io/ivorysql/ivory-operator:v5.1 -. docker.io/ivorysql/pgadmin:ubi9-9.9-5.1-1 -. docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1 -. docker.io/ivorysql/postgres-exporter:ubi9-0.17.0-5.1-1 -. docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1 +. docker.io/ivorysql/ivory-operator:v{ivorysql-version} +. docker.io/ivorysql/pgadmin:ubi8-9.9-5.0-1 +. docker.io/ivorysql/pgbackrest:ubi8-2.56.0-5.0-1 +. docker.io/ivorysql/postgres-exporter:ubi8-0.17.0-5.0-1 +. docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1 |=== In addition, install the following supporting components: @@ -201,7 +201,7 @@ npm run build:prod Edit the configuration file: -[literal] +[literal,subs="attributes"] ---- [root@cloud dist]# pwd @@ -229,7 +229,7 @@ disableNative = false dbtype = "IvorySQL" -dbversion = "5.1" +dbversion = "{ivorysql-version}" ---- === Install and configure NGINX @@ -365,15 +365,15 @@ If your servers have direct access to Docker Hub, you can skip this step. Otherw [literal] ---- -docker.io/ivorysql/pgadmin:ubi9-9.9-5.1-1 +docker.io/ivorysql/pgadmin:ubi8-9.9-5.0-1 -docker.io/ivorysql/pgbackrest:ubi9-2.56.0-5.1-1 +docker.io/ivorysql/pgbackrest:ubi8-2.56.0-5.0-1 -docker.io/ivorysql/pgbouncer:ubi9-1.23.0-5.1-1 +docker.io/ivorysql/pgbouncer:ubi8-1.23.0-5.0-1 -docker.io/ivorysql/postgres-exporter:ubi9-0.17.0-5.1-1 +docker.io/ivorysql/postgres-exporter:ubi8-0.17.0-5.0-1 -docker.io/ivorysql/ivorysql:ubi9-5.1-5.1-1 +docker.io/ivorysql/ivorysql:ubi8-5.0-5.0-1 docker.io/prom/prometheus:v2.33.5 diff --git a/EN/modules/ROOT/pages/v5.1/5.0.adoc b/EN/modules/ROOT/pages/v5.1/5.0.adoc index 843ea87..840f3c0 100644 --- a/EN/modules/ROOT/pages/v5.1/5.0.adoc +++ b/EN/modules/ROOT/pages/v5.1/5.0.adoc @@ -12,16 +12,16 @@ IvorySQL, as an advanced open-source database compatible with Oracle and based o [cols="1,2,1,3,3"] |==== |*Index*|*Plugin Name*|*Version*|*Function Description*|*Use Cases* -|*1*| xref:v5.1/5.1.adoc[postgis] | 3.5.4 | Provides geospatial data support for IvorySQL, including spatial indexes, spatial functions, and geographic object storage | Geographic Information Systems (GIS), map services, location data analysis -|*2*| xref:v5.1/5.2.adoc[pgvector] | 0.8.1 | Supports vector similarity search, can be used to store and retrieve high-dimensional vector data| AI applications, image retrieval, recommendation systems, semantic search -|*3*| xref:v5.1/5.3.adoc[pgddl (DDL Extractor)] | 0.31 | Extracts DDL (Data Definition Language) statements from databases, facilitating version management and migration | Database version control, CI/CD integration, structure comparison and synchronization -|*4*| xref:v5.1/5.4.adoc[pg_cron]​ | 1.6.0 | Provides database-internal scheduled task scheduling functionality, supports regular SQL statement execution | Data cleanup, regular statistics, automated maintenance tasks -|*5*| xref:v5.1/5.5.adoc[pgsql-http]​ | 1.7.0 | Allows HTTP requests to be initiated in SQL, interacting with external web services | Data collection, API integration, microservice calls -|*6*| xref:v5.1/5.6.adoc[plpgsql_check] | 2.8 | Provides static analysis functionality for PL/pgSQL code, can detect potential errors during development | Stored procedure development, code quality checking, debugging and optimization -|*7*| xref:v5.1/5.7.adoc[pgroonga] | 4.0.4 | Provides full-text search functionality for non-English languages, meeting the needs of high-performance applications | Full-text search capabilities for languages like Chinese, Japanese, and Korean -|*8*| xref:v5.1/5.8.adoc[pgaudit] | 18.0 | Provides fine-grained auditing, recording database operation logs to support security auditing and compliance checks | Database security auditing, compliance checks, audit report generation -|*9*| xref:v5.1/5.9.adoc[pgrouting] | 3.8.0 | Provides routing computation for geospatial data, supporting multiple algorithms and data formats | Geospatial analysis, route planning, logistics optimization -|*10*| xref:v5.1/5.10.adoc[system_stats] | 3.2 | Provide functions for accessing system-level statistics. | system monitor +|*1*| xref:v{ivorysql-version}/5.1.adoc[postgis] | 3.5.4 | Provides geospatial data support for IvorySQL, including spatial indexes, spatial functions, and geographic object storage | Geographic Information Systems (GIS), map services, location data analysis +|*2*| xref:v{ivorysql-version}/5.2.adoc[pgvector] | 0.8.1 | Supports vector similarity search, can be used to store and retrieve high-dimensional vector data| AI applications, image retrieval, recommendation systems, semantic search +|*3*| xref:v{ivorysql-version}/5.3.adoc[pgddl (DDL Extractor)] | 0.31 | Extracts DDL (Data Definition Language) statements from databases, facilitating version management and migration | Database version control, CI/CD integration, structure comparison and synchronization +|*4*| xref:v{ivorysql-version}/5.4.adoc[pg_cron]​ | 1.6.0 | Provides database-internal scheduled task scheduling functionality, supports regular SQL statement execution | Data cleanup, regular statistics, automated maintenance tasks +|*5*| xref:v{ivorysql-version}/5.5.adoc[pgsql-http]​ | 1.7.0 | Allows HTTP requests to be initiated in SQL, interacting with external web services | Data collection, API integration, microservice calls +|*6*| xref:v{ivorysql-version}/5.6.adoc[plpgsql_check] | 2.8 | Provides static analysis functionality for PL/pgSQL code, can detect potential errors during development | Stored procedure development, code quality checking, debugging and optimization +|*7*| xref:v{ivorysql-version}/5.7.adoc[pgroonga] | 4.0.4 | Provides full-text search functionality for non-English languages, meeting the needs of high-performance applications | Full-text search capabilities for languages like Chinese, Japanese, and Korean +|*8*| xref:v{ivorysql-version}/5.8.adoc[pgaudit] | 18.0 | Provides fine-grained auditing, recording database operation logs to support security auditing and compliance checks | Database security auditing, compliance checks, audit report generation +|*9*| xref:v{ivorysql-version}/5.9.adoc[pgrouting] | 3.8.0 | Provides routing computation for geospatial data, supporting multiple algorithms and data formats | Geospatial analysis, route planning, logistics optimization +|*10*| xref:v{ivorysql-version}/5.10.adoc[system_stats] | 3.2 | Provide functions for accessing system-level statistics. | system monitor |==== These plugins have all been tested and adapted by the IvorySQL team to ensure stable operation in the IvorySQL environment. Users can select appropriate plugins based on business needs to further enhance the capabilities and flexibility of the database system. diff --git a/EN/modules/ROOT/pages/v5.1/5.1.adoc b/EN/modules/ROOT/pages/v5.1/5.1.adoc index 7a762d1..ee7c9b3 100644 --- a/EN/modules/ROOT/pages/v5.1/5.1.adoc +++ b/EN/modules/ROOT/pages/v5.1/5.1.adoc @@ -14,7 +14,7 @@ Users can select the installation method for PostGIS that best suits their devel In addition to the installation methods provided by the PostGIS community, the IvorySQL community also offers a source code installation method, with Ubuntu 24.04 (x86_64) as the installation environment. [NOTE] -Please ensure that **IvorySQL 5.1 or above** is installed in the environment. +Please ensure that **IvorySQL {ivorysql-version} or above** is installed in the environment. ** Install dependencies [literal] diff --git a/EN/modules/ROOT/pages/v5.1/5.2.adoc b/EN/modules/ROOT/pages/v5.1/5.2.adoc index d44316b..1869c68 100644 --- a/EN/modules/ROOT/pages/v5.1/5.2.adoc +++ b/EN/modules/ROOT/pages/v5.1/5.2.adoc @@ -57,10 +57,10 @@ sudo --preserve-env=PG_CONFIG make install ** Create pgvector extension + -[literal] +[literal,subs="attributes"] ---- [ivorysql@localhost ivorysql-5]$ psql -psql (18.1) +psql ({pg-version}) Type "help" for help. ivorysql=# create extension vector; diff --git a/EN/modules/ROOT/pages/v5.1/5.7.adoc b/EN/modules/ROOT/pages/v5.1/5.7.adoc index 15ede03..cfc5a6e 100644 --- a/EN/modules/ROOT/pages/v5.1/5.7.adoc +++ b/EN/modules/ROOT/pages/v5.1/5.7.adoc @@ -19,10 +19,11 @@ The IvorySQL community provides source code installation steps, demonstrated bel === Dependencies Setup Environment +[literal,subs="attributes"] ``` Operating System: Ubuntu 24.04 CPU Architecture: x86_64 - IvorySQL: v5.1 + IvorySQL: v{ivorysql-version} ``` ==== Install msgpack-c @@ -71,6 +72,7 @@ Then execute the following commands to compile and install: == Create Extension PGroonga and Confirm the version Connect to the database with `psql` in `pg` mode and execute the following commands: +[source,subs="attributes"] ```sql postgres=# CREATE extension pgroonga; CREATE EXTENSION @@ -83,7 +85,7 @@ postgres=# SELECT * FROM pg_available_extensions WHERE name = 'pgroonga'; postgres=# select version(); version -------------------------------------------------------------------------------- - PostgreSQL (IvorySQL 5.1) 18.1 on x86_64-linux, compiled by gcc-13.3.0, 64-bit + PostgreSQL (IvorySQL {ivorysql-version}) 18.0 on x86_64-linux, compiled by gcc-13.3.0, 64-bit (1 row) ``` diff --git a/EN/modules/ROOT/pages/v5.1/5.9.adoc b/EN/modules/ROOT/pages/v5.1/5.9.adoc index 7dc175b..8da744f 100644 --- a/EN/modules/ROOT/pages/v5.1/5.9.adoc +++ b/EN/modules/ROOT/pages/v5.1/5.9.adoc @@ -13,7 +13,7 @@ pgRouting is widely used in logistics and distribution, traffic navigation, netw == Installation [TIP] -IvorySQL 5.1 or higher version is already installed in the environment, with the installation path at /usr/local/ivorysql/ivorysql-5 +IvorySQL {ivorysql-version} or higher version is already installed in the environment, with the installation path at /usr/local/ivorysql/ivorysql-5 === Source Installation diff --git a/EN/modules/ROOT/pages/v5.1/8.adoc b/EN/modules/ROOT/pages/v5.1/8.adoc index 9f6fa20..41ef301 100644 --- a/EN/modules/ROOT/pages/v5.1/8.adoc +++ b/EN/modules/ROOT/pages/v5.1/8.adoc @@ -29,7 +29,7 @@ Our team is a continuously open team, focusing on parts of IvorySQL. In our team == **Contributor's Guide** -Before contributing, we need to know the current version of IvorySQL and the version of the document.At present, we maintain versions after version *5.1*. Our version follows the update pace of PG. Please update to the latest version before contributing. After that, we need to read the format requirements carefully and be familiar with code format, code comment format, issue format, pull PR title format, document contribution format, and article contribution format. These can help you become a contributor of IvorySQL as soon as possible. +Before contributing, we need to know the current version of IvorySQL and the version of the document.At present, we maintain versions after version *{ivorysql-version}*. Our version follows the update pace of PG. Please update to the latest version before contributing. After that, we need to read the format requirements carefully and be familiar with code format, code comment format, issue format, pull PR title format, document contribution format, and article contribution format. These can help you become a contributor of IvorySQL as soon as possible. === Preparation before Contribution diff --git a/EN/modules/ROOT/pages/v5.1/cpu_arch_adp.adoc b/EN/modules/ROOT/pages/v5.1/cpu_arch_adp.adoc index 55f0e39..a4313ee 100644 --- a/EN/modules/ROOT/pages/v5.1/cpu_arch_adp.adoc +++ b/EN/modules/ROOT/pages/v5.1/cpu_arch_adp.adoc @@ -8,8 +8,8 @@ IvorySQL adapts the following CPU architectures: [cols="8h,~,~,~"] |==== | Index | Architecture Name | Adapt to brands | Multi-platform Media Packages -| 1 | x86_64 | Intel, AMD, ZHAOXIN, HYGON | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.amd64.deb[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.x86_64.rpm[rpm] -| 2 | aarch64 | Phytium, Kunpeng | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.arm64.deb[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.aarch64.rpm[rpm] -| 3 | mips64el| Loongson3000, Loongson4000 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.mips64el.deb[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.mips64el.rpm[rpm] -| 4 | loongarch64 | Loongson5000 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.loongarch64.deb[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_5.1/IvorySQL-5.1-62069c2-20251211.loongarch64.rpm[rpm] +| 1 | x86_64 | Intel, AMD, ZHAOXIN, HYGON | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-x86_64-deb}[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-x86_64-rpm}[rpm] +| 2 | aarch64 | Phytium, Kunpeng | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-aarch64-deb}[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-aarch64-rpm}[rpm] +| 3 | mips64el| Loongson3000, Loongson4000 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-mips64el-deb}[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-mips64el-rpm}[rpm] +| 4 | loongarch64 | Loongson5000 | https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-loongarch64-deb}[deb], https://github.com/IvorySQL/IvorySQL/releases/download/IvorySQL_{ivorysql-version}/{package-link-loongarch64-rpm}[rpm] |==== \ No newline at end of file diff --git a/EN/modules/ROOT/pages/v5.1/welcome.adoc b/EN/modules/ROOT/pages/v5.1/welcome.adoc index 3eb8fa1..84b7bed 100644 --- a/EN/modules/ROOT/pages/v5.1/welcome.adoc +++ b/EN/modules/ROOT/pages/v5.1/welcome.adoc @@ -15,4 +15,4 @@ IvorySQL project is an open source project proposed by Highgo Software to add th It is Apache licensed Open Source and always free to use. Any comments please contact support@ivorysql.org == Docs Download -https://docs.ivorysql.org/en/ivorysql-doc/v5.1/ivorysql.pdf[IvorySQL v5.1 pdf documentation] +https://docs.ivorysql.org/en/ivorysql-doc/v{ivorysql-version}/ivorysql.pdf[IvorySQL v{ivorysql-version} pdf documentation]