diff --git a/docs/cn/ivorysql-doc/master/about_ivorysql.html b/docs/cn/ivorysql-doc/master/about_ivorysql.html index bee1afb8..7bd6cdb4 100644 --- a/docs/cn/ivorysql-doc/master/about_ivorysql.html +++ b/docs/cn/ivorysql-doc/master/about_ivorysql.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/architecture/dual_mode_design.html b/docs/cn/ivorysql-doc/master/architecture/dual_mode_design.html index 651ad3ca..030d72ce 100644 --- a/docs/cn/ivorysql-doc/master/architecture/dual_mode_design.html +++ b/docs/cn/ivorysql-doc/master/architecture/dual_mode_design.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/architecture/dual_parser.html b/docs/cn/ivorysql-doc/master/architecture/dual_parser.html index cae70c4b..40774426 100644 --- a/docs/cn/ivorysql-doc/master/architecture/dual_parser.html +++ b/docs/cn/ivorysql-doc/master/architecture/dual_parser.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/architecture/framework_design.html b/docs/cn/ivorysql-doc/master/architecture/framework_design.html index 5fc70f1d..ae14f5a3 100644 --- a/docs/cn/ivorysql-doc/master/architecture/framework_design.html +++ b/docs/cn/ivorysql-doc/master/architecture/framework_design.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/architecture/guc_framework.html b/docs/cn/ivorysql-doc/master/architecture/guc_framework.html index de67ddc0..e67593c6 100644 --- a/docs/cn/ivorysql-doc/master/architecture/guc_framework.html +++ b/docs/cn/ivorysql-doc/master/architecture/guc_framework.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/architecture/initdb_process.html b/docs/cn/ivorysql-doc/master/architecture/initdb_process.html index 0ee599d0..adf5ad1d 100644 --- a/docs/cn/ivorysql-doc/master/architecture/initdb_process.html +++ b/docs/cn/ivorysql-doc/master/architecture/initdb_process.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/cloud_platform/ivorysql_cloud_installation.html b/docs/cn/ivorysql-doc/master/cloud_platform/ivorysql_cloud_installation.html index fd55222b..1d5a2dc8 100644 --- a/docs/cn/ivorysql-doc/master/cloud_platform/ivorysql_cloud_installation.html +++ b/docs/cn/ivorysql-doc/master/cloud_platform/ivorysql_cloud_installation.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/cloud_platform/ivorysql_cloud_usage.html b/docs/cn/ivorysql-doc/master/cloud_platform/ivorysql_cloud_usage.html index 868224fc..1332ab76 100644 --- a/docs/cn/ivorysql-doc/master/cloud_platform/ivorysql_cloud_usage.html +++ b/docs/cn/ivorysql-doc/master/cloud_platform/ivorysql_cloud_usage.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/cluster_setup.html b/docs/cn/ivorysql-doc/master/cluster_setup.html index 1a02b07a..2b4c82cc 100644 --- a/docs/cn/ivorysql-doc/master/cluster_setup.html +++ b/docs/cn/ivorysql-doc/master/cluster_setup.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/call_into.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/call_into.html index d8c2f98f..8d26a240 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/call_into.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/call_into.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/case_conversion.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/case_conversion.html index 01605b01..cd9c047c 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/case_conversion.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/case_conversion.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/empty_string_to_null.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/empty_string_to_null.html index 1073efb8..b19c61ce 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/empty_string_to_null.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/empty_string_to_null.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/force_view.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/force_view.html index 3689b2a3..627b72db 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/force_view.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/force_view.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/function_procedure.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/function_procedure.html index 7208d5ef..629baad8 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/function_procedure.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/function_procedure.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/like_operator.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/like_operator.html index 7b0ad005..857ab0ab 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/like_operator.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/like_operator.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/nested_function.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/nested_function.html index a2336ae6..e05f3521 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/nested_function.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/nested_function.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/nls_parameter.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/nls_parameter.html index 0f48df42..ce6124f4 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/nls_parameter.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/nls_parameter.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/out_parameter.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/out_parameter.html index ea05456d..279916d6 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/out_parameter.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/out_parameter.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/rowid.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/rowid.html index 8cd7e468..28fdbe96 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/rowid.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/rowid.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/sys_guid_function.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/sys_guid_function.html index ad4565e0..92efa20f 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/sys_guid_function.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/sys_guid_function.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/compatibility_features_design/type_rowtype.html b/docs/cn/ivorysql-doc/master/compatibility_features_design/type_rowtype.html index 2517916b..bc51b1ae 100644 --- a/docs/cn/ivorysql-doc/master/compatibility_features_design/type_rowtype.html +++ b/docs/cn/ivorysql-doc/master/compatibility_features_design/type_rowtype.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/containerization/docker_podman_deployment.html b/docs/cn/ivorysql-doc/master/containerization/docker_podman_deployment.html index efc7125b..a667af2f 100644 --- a/docs/cn/ivorysql-doc/master/containerization/docker_podman_deployment.html +++ b/docs/cn/ivorysql-doc/master/containerization/docker_podman_deployment.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/containerization/docker_swarm_compose_deployment.html b/docs/cn/ivorysql-doc/master/containerization/docker_swarm_compose_deployment.html index 174e56e1..68c8d7d0 100644 --- a/docs/cn/ivorysql-doc/master/containerization/docker_swarm_compose_deployment.html +++ b/docs/cn/ivorysql-doc/master/containerization/docker_swarm_compose_deployment.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/containerization/k8s_deployment.html b/docs/cn/ivorysql-doc/master/containerization/k8s_deployment.html index 17caec06..d1f9a978 100644 --- a/docs/cn/ivorysql-doc/master/containerization/k8s_deployment.html +++ b/docs/cn/ivorysql-doc/master/containerization/k8s_deployment.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/containerization/operator_deployment.html b/docs/cn/ivorysql-doc/master/containerization/operator_deployment.html index c45150f9..117e35e6 100644 --- a/docs/cn/ivorysql-doc/master/containerization/operator_deployment.html +++ b/docs/cn/ivorysql-doc/master/containerization/operator_deployment.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/contribution/asciidoc_syntax_reference.html b/docs/cn/ivorysql-doc/master/contribution/asciidoc_syntax_reference.html index c32ad9a3..c9b5b20b 100644 --- a/docs/cn/ivorysql-doc/master/contribution/asciidoc_syntax_reference.html +++ b/docs/cn/ivorysql-doc/master/contribution/asciidoc_syntax_reference.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/contribution/community_contribution_guide.html b/docs/cn/ivorysql-doc/master/contribution/community_contribution_guide.html index c9d6612c..86e8ce48 100644 --- a/docs/cn/ivorysql-doc/master/contribution/community_contribution_guide.html +++ b/docs/cn/ivorysql-doc/master/contribution/community_contribution_guide.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/contribution/faq.html b/docs/cn/ivorysql-doc/master/contribution/faq.html index e7c493f4..dc0f68a9 100644 --- a/docs/cn/ivorysql-doc/master/contribution/faq.html +++ b/docs/cn/ivorysql-doc/master/contribution/faq.html @@ -231,6 +231,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/contribution/issue_submission_guide.html b/docs/cn/ivorysql-doc/master/contribution/issue_submission_guide.html index a3f27888..96c295f7 100644 --- a/docs/cn/ivorysql-doc/master/contribution/issue_submission_guide.html +++ b/docs/cn/ivorysql-doc/master/contribution/issue_submission_guide.html @@ -230,6 +230,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/cpu_os_adaptation/cpu_architecture_adaptation.html b/docs/cn/ivorysql-doc/master/cpu_os_adaptation/cpu_architecture_adaptation.html index dfbcbcbc..b074f26f 100644 --- a/docs/cn/ivorysql-doc/master/cpu_os_adaptation/cpu_architecture_adaptation.html +++ b/docs/cn/ivorysql-doc/master/cpu_os_adaptation/cpu_architecture_adaptation.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/cpu_os_adaptation/os_architecture_adaptation.html b/docs/cn/ivorysql-doc/master/cpu_os_adaptation/os_architecture_adaptation.html index 00653ef9..ebbe6a9d 100644 --- a/docs/cn/ivorysql-doc/master/cpu_os_adaptation/os_architecture_adaptation.html +++ b/docs/cn/ivorysql-doc/master/cpu_os_adaptation/os_architecture_adaptation.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/developer_guide.html b/docs/cn/ivorysql-doc/master/developer_guide.html index 7d8ba18b..b36bb372 100644 --- a/docs/cn/ivorysql-doc/master/developer_guide.html +++ b/docs/cn/ivorysql-doc/master/developer_guide.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/ecosystem_overview.html b/docs/cn/ivorysql-doc/master/ecosystem_components/ecosystem_overview.html index c54fa998..5363b6a6 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/ecosystem_overview.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/ecosystem_overview.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/pg_ai_query.html b/docs/cn/ivorysql-doc/master/ecosystem_components/pg_ai_query.html index 441fe2b2..63f77b75 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/pg_ai_query.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/pg_ai_query.html @@ -6,7 +6,7 @@ pg_ai_query :: IvorySQL文档中心 - + @@ -232,6 +232,9 @@

文档中心

+ @@ -861,7 +864,7 @@

4.2 diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/pg_cron.html b/docs/cn/ivorysql-doc/master/ecosystem_components/pg_cron.html index a82c4760..103e21db 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/pg_cron.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/pg_cron.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/pg_curl.html b/docs/cn/ivorysql-doc/master/ecosystem_components/pg_curl.html index ac9314f2..c112dbcc 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/pg_curl.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/pg_curl.html @@ -5,7 +5,7 @@ pg_curl :: IvorySQL文档中心 - + @@ -232,6 +232,9 @@

文档中心

+ @@ -753,7 +756,7 @@

diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/pg_stat_monitor.html b/docs/cn/ivorysql-doc/master/ecosystem_components/pg_stat_monitor.html index 78d3a653..75607e2c 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/pg_stat_monitor.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/pg_stat_monitor.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/pgaudit.html b/docs/cn/ivorysql-doc/master/ecosystem_components/pgaudit.html index a4d847fb..8b1d15ba 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/pgaudit.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/pgaudit.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/pgbouncer.html b/docs/cn/ivorysql-doc/master/ecosystem_components/pgbouncer.html new file mode 100644 index 00000000..e9f3f923 --- /dev/null +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/pgbouncer.html @@ -0,0 +1,748 @@ + + + + + + PgBouncer :: IvorySQL文档中心 + + + + + + + + +
+ +
+
+ +
+ +
+ +
+

PgBouncer

+
+

1. 概述

+
+
+

PgBouncer 是轻量级连接池中间件,部署在应用层与数据库之间,通过复用后端连接来降低连接开销、保护数据库资源、提高应用并发性能。

+
+
+

PgBouncer 使用标准 PostgreSQL 通信协议,IvorySQL 完全兼容该协议。

+
+
+

三种连接池模式:

+
+ +++++ + + + + + + + + + + + + + + + + + + + + + + + + +
模式说明适用场景

session

客户端连接期间独占一个后端连接

需要过程内 COMMIT、完整会话特性

transaction

每个事务结束后归还连接

最常用,连接复用率最高

statement

每条语句后归还连接

限制最多,不支持显式事务

+
+
+
+

2. 安装

+
+
+ + + + + +
+ + +源码测试安装环境为 Ubuntu 24.04。 +
+
+
+

2.1. 依赖

+
+
+
# Ubuntu / Debian
+sudo apt install libevent-dev libssl-dev pkg-config
+
+# RHEL / Rocky Linux
+sudo dnf install libevent-devel openssl-devel pkgconfig
+
+
+
+
+

2.2. 源码安装

+
+
+
git clone https://github.com/pgbouncer/pgbouncer.git
+cd pgbouncer
+
+./autogen.sh
+
+./configure \
+    --prefix=/usr/ivory-5 \
+    --with-openssl \
+    --with-pam
+
+make -j4
+make install
+cp pgbouncer /usr/ivory-5/bin/
+
+
+
+
+

2.3. 验证安装

+
+
+
pgbouncer --version
+# PgBouncer 1.25.1
+# libevent 2.1.12-stable
+# tls: OpenSSL 3.0.2 15 Mar 2022
+
+
+
+
+
+
+

3. 配置

+
+
+

3.1. 连接 IvorySQL PG 模式(端口 5432)

+
+

创建 /etc/pgbouncer/pgbouncer.ini

+
+
+
+
[databases]
+postgres = host=127.0.0.1 port=5432 dbname=postgres
+
+[pgbouncer]
+listen_addr = 127.0.0.1
+listen_port = 6432
+auth_type = trust
+auth_file = /etc/pgbouncer/userlist.txt
+pool_mode = transaction
+max_client_conn = 200
+default_pool_size = 20
+logfile = /var/log/pgbouncer/pgbouncer.log
+pidfile = /var/run/pgbouncer/pgbouncer.pid
+
+
+
+
+

3.2. 连接 IvorySQL Oracle 兼容模式(端口 1521)

+
+
+
[databases]
+postgres = host=127.0.0.1 port=1521 dbname=postgres
+
+[pgbouncer]
+listen_addr = 127.0.0.1
+listen_port = 2521
+auth_type = trust
+auth_file = /etc/pgbouncer/userlist.txt
+
+# Oracle 兼容模式建议使用 session 模式
+pool_mode = session
+
+max_client_conn = 200
+default_pool_size = 20
+logfile = /var/log/pgbouncer/pgbouncer_oracle.log
+pidfile = /var/run/pgbouncer/pgbouncer_oracle.pid
+
+
+
+
+

3.3. 用户认证文件

+
+
+
# /etc/pgbouncer/userlist.txt
+# 格式:"用户名" "密码"(trust 模式密码留空)
+"postgres" ""
+"app_user" "app_password"
+
+
+
+
+

3.4. 启动与停止

+
+
+
# 前台启动(调试)
+pgbouncer /etc/pgbouncer/pgbouncer.ini
+
+# 后台启动
+pgbouncer -d /etc/pgbouncer/pgbouncer.ini
+
+# 重载配置(不中断连接)
+kill -HUP $(cat /var/run/pgbouncer/pgbouncer.pid)
+
+# 停止
+kill -INT $(cat /var/run/pgbouncer/pgbouncer.pid)
+
+
+
+
+
+
+

4. 使用

+
+
+

4.1. 客户端连接

+
+

通过 PgBouncer 连接与直连 IvorySQL 语法完全一致,只需修改端口:

+
+
+
+
# PG 模式(经由 PgBouncer)
+psql -U postgres -p 6432 -d postgres
+
+# Oracle 兼容模式(经由 PgBouncer)
+psql -U postgres -p 2521 -d postgres
+
+
+
+
+

4.2. 管理控制台

+
+

PgBouncer 提供内置管理数据库:

+
+
+
+
psql -U postgres -p 6432 -d pgbouncer
+
+
+
+
+
-- 查看连接池状态
+SHOW POOLS;
+
+-- 查看统计信息
+SHOW STATS;
+
+-- 查看客户端连接
+SHOW CLIENTS;
+
+-- 查看后端连接
+SHOW SERVERS;
+
+-- 重载配置
+RELOAD;
+
+
+
+
+

4.3. Oracle 兼容模式

+
+
+
-- 确认 Oracle 模式已激活
+SHOW ivorysql.compatible_mode;
+--  ivorysql.compatible_mode
+-- --------------------------
+--  oracle
+
+-- Oracle 数据类型与函数
+CREATE TABLE bouncer_test (
+    id     NUMBER(10) PRIMARY KEY,
+    name   VARCHAR2(100),
+    hired  DATE DEFAULT SYSDATE
+);
+
+INSERT INTO bouncer_test VALUES (1, 'Alice', SYSDATE);
+
+SELECT id,
+       NVL(name, 'N/A')                   AS name,
+       DECODE(id, 1, 'CEO', 'Staff')       AS title,
+       TO_CHAR(hired, 'YYYY-MM-DD')        AS hire_date
+FROM bouncer_test;
+
+-- Oracle 序列
+CREATE SEQUENCE ora_seq START WITH 100 INCREMENT BY 10;
+SELECT ora_seq.NEXTVAL FROM DUAL;   -- 100
+SELECT ora_seq.NEXTVAL FROM DUAL;   -- 110
+SELECT ora_seq.CURRVAL FROM DUAL;   -- 110
+
+
+
+
+
+ +
+
+
+
+ + + + + + + + + diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/pgddl.html b/docs/cn/ivorysql-doc/master/ecosystem_components/pgddl.html index b0c7a168..c7fff22d 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/pgddl.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/pgddl.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/pgroonga.html b/docs/cn/ivorysql-doc/master/ecosystem_components/pgroonga.html index c4567013..ac561d8e 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/pgroonga.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/pgroonga.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/pgrouting.html b/docs/cn/ivorysql-doc/master/ecosystem_components/pgrouting.html index 6ad50e28..e7873794 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/pgrouting.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/pgrouting.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/pgsql_http.html b/docs/cn/ivorysql-doc/master/ecosystem_components/pgsql_http.html index 53a6c3bf..9a5d8d77 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/pgsql_http.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/pgsql_http.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/pgvector.html b/docs/cn/ivorysql-doc/master/ecosystem_components/pgvector.html index 3d1bc0db..bf931859 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/pgvector.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/pgvector.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/plpgsql_check.html b/docs/cn/ivorysql-doc/master/ecosystem_components/plpgsql_check.html index 2250e8b0..f6194488 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/plpgsql_check.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/plpgsql_check.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/postgis.html b/docs/cn/ivorysql-doc/master/ecosystem_components/postgis.html index 30db29ce..c631872f 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/postgis.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/postgis.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/system_stats.html b/docs/cn/ivorysql-doc/master/ecosystem_components/system_stats.html index caf718d1..63dabca4 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/system_stats.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/system_stats.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/ecosystem_components/wal2json.html b/docs/cn/ivorysql-doc/master/ecosystem_components/wal2json.html index 2f970684..6f6bf5b0 100644 --- a/docs/cn/ivorysql-doc/master/ecosystem_components/wal2json.html +++ b/docs/cn/ivorysql-doc/master/ecosystem_components/wal2json.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/gb18030.html b/docs/cn/ivorysql-doc/master/gb18030.html index 412f512a..59c7d294 100644 --- a/docs/cn/ivorysql-doc/master/gb18030.html +++ b/docs/cn/ivorysql-doc/master/gb18030.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/getting-started/daily_maintenance.html b/docs/cn/ivorysql-doc/master/getting-started/daily_maintenance.html index 587e284e..ce1a3d60 100644 --- a/docs/cn/ivorysql-doc/master/getting-started/daily_maintenance.html +++ b/docs/cn/ivorysql-doc/master/getting-started/daily_maintenance.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/getting-started/daily_monitoring.html b/docs/cn/ivorysql-doc/master/getting-started/daily_monitoring.html index 42aec65f..84fc8059 100644 --- a/docs/cn/ivorysql-doc/master/getting-started/daily_monitoring.html +++ b/docs/cn/ivorysql-doc/master/getting-started/daily_monitoring.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/getting-started/quick_start.html b/docs/cn/ivorysql-doc/master/getting-started/quick_start.html index 2279619e..700e0894 100644 --- a/docs/cn/ivorysql-doc/master/getting-started/quick_start.html +++ b/docs/cn/ivorysql-doc/master/getting-started/quick_start.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/installation_guide.html b/docs/cn/ivorysql-doc/master/installation_guide.html index ea2e7726..06b62384 100644 --- a/docs/cn/ivorysql-doc/master/installation_guide.html +++ b/docs/cn/ivorysql-doc/master/installation_guide.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/migration_guide.html b/docs/cn/ivorysql-doc/master/migration_guide.html index 591a0a47..73109985 100644 --- a/docs/cn/ivorysql-doc/master/migration_guide.html +++ b/docs/cn/ivorysql-doc/master/migration_guide.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/operation_guide.html b/docs/cn/ivorysql-doc/master/operation_guide.html index 09be5a7f..80c728a3 100644 --- a/docs/cn/ivorysql-doc/master/operation_guide.html +++ b/docs/cn/ivorysql-doc/master/operation_guide.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_builtin_functions/sys_context.html b/docs/cn/ivorysql-doc/master/oracle_builtin_functions/sys_context.html index 6089c549..c4e49239 100644 --- a/docs/cn/ivorysql-doc/master/oracle_builtin_functions/sys_context.html +++ b/docs/cn/ivorysql-doc/master/oracle_builtin_functions/sys_context.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_builtin_functions/userenv.html b/docs/cn/ivorysql-doc/master/oracle_builtin_functions/userenv.html index 281a0dc0..7a554431 100644 --- a/docs/cn/ivorysql-doc/master/oracle_builtin_functions/userenv.html +++ b/docs/cn/ivorysql-doc/master/oracle_builtin_functions/userenv.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/anonymous_block.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/anonymous_block.html index 5c901d73..1f17d7ae 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/anonymous_block.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/anonymous_block.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/builtin_types_functions.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/builtin_types_functions.html index 654f9fb3..4bc170c3 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/builtin_types_functions.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/builtin_types_functions.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_call_into.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_call_into.html index 07377c21..6480e7e7 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_call_into.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_call_into.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_case_conversion.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_case_conversion.html index ce76cb94..c6708b39 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_case_conversion.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_case_conversion.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_empty_string_to_null.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_empty_string_to_null.html index 3bba6f76..6e6d6805 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_empty_string_to_null.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_empty_string_to_null.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_force_view.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_force_view.html index 34f0cf97..e1bb7bc1 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_force_view.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_force_view.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_function_procedure.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_function_procedure.html index 2b2bdddd..63ef1648 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_function_procedure.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_function_procedure.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_like_operator.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_like_operator.html index 772dbe93..e783b14a 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_like_operator.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_like_operator.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_nested_function.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_nested_function.html index baca8008..41401075 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_nested_function.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_nested_function.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_nls_parameter.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_nls_parameter.html index 8506a672..6d24757a 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_nls_parameter.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_nls_parameter.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_out_parameter.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_out_parameter.html index 8a19928f..948a2958 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_out_parameter.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_out_parameter.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_rowid.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_rowid.html index 3dc87af5..f3b3464e 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_rowid.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_rowid.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_sys_guid.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_sys_guid.html index 0c2e3f5a..dbe5e13a 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_sys_guid.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_sys_guid.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_type_rowtype.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_type_rowtype.html index ea162a0a..13de30bd 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_type_rowtype.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/compat_type_rowtype.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/invisible_column.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/invisible_column.html index 1ccde164..ad037ca8 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/invisible_column.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/invisible_column.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/package.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/package.html index e0064662..98e5854d 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/package.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/package.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/port_ip.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/port_ip.html index c9add0fa..56a09244 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/port_ip.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/port_ip.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/sequence.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/sequence.html index 1754dbe0..35a02c8d 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/sequence.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/sequence.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/oracle_compatibility/xml_functions.html b/docs/cn/ivorysql-doc/master/oracle_compatibility/xml_functions.html index cf726e05..34da2984 100644 --- a/docs/cn/ivorysql-doc/master/oracle_compatibility/xml_functions.html +++ b/docs/cn/ivorysql-doc/master/oracle_compatibility/xml_functions.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/pg_reference/pg_functions_reference.html b/docs/cn/ivorysql-doc/master/pg_reference/pg_functions_reference.html index a01bf384..c5a89f68 100644 --- a/docs/cn/ivorysql-doc/master/pg_reference/pg_functions_reference.html +++ b/docs/cn/ivorysql-doc/master/pg_reference/pg_functions_reference.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/pg_reference/pg_parameters_reference.html b/docs/cn/ivorysql-doc/master/pg_reference/pg_parameters_reference.html index 8abf4801..c307569b 100644 --- a/docs/cn/ivorysql-doc/master/pg_reference/pg_parameters_reference.html +++ b/docs/cn/ivorysql-doc/master/pg_reference/pg_parameters_reference.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/problem_report_guide.html b/docs/cn/ivorysql-doc/master/problem_report_guide.html index b4d1d344..c9cb8010 100644 --- a/docs/cn/ivorysql-doc/master/problem_report_guide.html +++ b/docs/cn/ivorysql-doc/master/problem_report_guide.html @@ -230,6 +230,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/release_notes.html b/docs/cn/ivorysql-doc/master/release_notes.html index aa46a12b..8826105f 100644 --- a/docs/cn/ivorysql-doc/master/release_notes.html +++ b/docs/cn/ivorysql-doc/master/release_notes.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/tools_reference.html b/docs/cn/ivorysql-doc/master/tools_reference.html index 2150e5b2..8d71fa08 100644 --- a/docs/cn/ivorysql-doc/master/tools_reference.html +++ b/docs/cn/ivorysql-doc/master/tools_reference.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/master/welcome.html b/docs/cn/ivorysql-doc/master/welcome.html index 5c8eb403..881c36ef 100644 --- a/docs/cn/ivorysql-doc/master/welcome.html +++ b/docs/cn/ivorysql-doc/master/welcome.html @@ -232,6 +232,9 @@

文档中心

+ diff --git a/docs/cn/ivorysql-doc/v1.17/_exports/index.pdf b/docs/cn/ivorysql-doc/v1.17/_exports/index.pdf new file mode 100644 index 00000000..5c1081f5 Binary files /dev/null and b/docs/cn/ivorysql-doc/v1.17/_exports/index.pdf differ diff --git a/docs/cn/ivorysql-doc/v1.17/ivorysql.pdf b/docs/cn/ivorysql-doc/v1.17/ivorysql.pdf new file mode 100644 index 00000000..5c1081f5 Binary files /dev/null and b/docs/cn/ivorysql-doc/v1.17/ivorysql.pdf differ diff --git a/docs/cn/ivorysql-doc/v1.17/v1.17/1.html b/docs/cn/ivorysql-doc/v1.17/v1.17/1.html index cb14aa5c..a74543cd 100644 --- a/docs/cn/ivorysql-doc/v1.17/v1.17/1.html +++ b/docs/cn/ivorysql-doc/v1.17/v1.17/1.html @@ -147,6 +147,9 @@

IvorySQL

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/en/ivorysql-doc/master/architecture/dual_mode_design.html b/docs/en/ivorysql-doc/master/architecture/dual_mode_design.html index 6fdf5532..7234c5e0 100644 --- a/docs/en/ivorysql-doc/master/architecture/dual_mode_design.html +++ b/docs/en/ivorysql-doc/master/architecture/dual_mode_design.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/architecture/dual_parser.html b/docs/en/ivorysql-doc/master/architecture/dual_parser.html index cce49a3f..bdfe4fe0 100644 --- a/docs/en/ivorysql-doc/master/architecture/dual_parser.html +++ b/docs/en/ivorysql-doc/master/architecture/dual_parser.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/architecture/framework_design.html b/docs/en/ivorysql-doc/master/architecture/framework_design.html index ee8b358d..108383fe 100644 --- a/docs/en/ivorysql-doc/master/architecture/framework_design.html +++ b/docs/en/ivorysql-doc/master/architecture/framework_design.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/architecture/guc_framework.html b/docs/en/ivorysql-doc/master/architecture/guc_framework.html index e8db8911..70799d44 100644 --- a/docs/en/ivorysql-doc/master/architecture/guc_framework.html +++ b/docs/en/ivorysql-doc/master/architecture/guc_framework.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/architecture/initdb_process.html b/docs/en/ivorysql-doc/master/architecture/initdb_process.html index f5a59da9..a977a64f 100644 --- a/docs/en/ivorysql-doc/master/architecture/initdb_process.html +++ b/docs/en/ivorysql-doc/master/architecture/initdb_process.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/cloud_platform/ivorysql_cloud_installation.html b/docs/en/ivorysql-doc/master/cloud_platform/ivorysql_cloud_installation.html index d67ff67e..13a35046 100644 --- a/docs/en/ivorysql-doc/master/cloud_platform/ivorysql_cloud_installation.html +++ b/docs/en/ivorysql-doc/master/cloud_platform/ivorysql_cloud_installation.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/cloud_platform/ivorysql_cloud_usage.html b/docs/en/ivorysql-doc/master/cloud_platform/ivorysql_cloud_usage.html index a3037eea..ac4063d0 100644 --- a/docs/en/ivorysql-doc/master/cloud_platform/ivorysql_cloud_usage.html +++ b/docs/en/ivorysql-doc/master/cloud_platform/ivorysql_cloud_usage.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/cluster_setup.html b/docs/en/ivorysql-doc/master/cluster_setup.html index 468c2119..b9f31900 100644 --- a/docs/en/ivorysql-doc/master/cluster_setup.html +++ b/docs/en/ivorysql-doc/master/cluster_setup.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/call_into.html b/docs/en/ivorysql-doc/master/compatibility_features_design/call_into.html index abfea5c3..1a8c994f 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/call_into.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/call_into.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/case_conversion.html b/docs/en/ivorysql-doc/master/compatibility_features_design/case_conversion.html index ccc644e8..28b62202 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/case_conversion.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/case_conversion.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/empty_string_to_null.html b/docs/en/ivorysql-doc/master/compatibility_features_design/empty_string_to_null.html index df8a8bd8..2972d697 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/empty_string_to_null.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/empty_string_to_null.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/force_view.html b/docs/en/ivorysql-doc/master/compatibility_features_design/force_view.html index 0e5ee54d..fcee59c8 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/force_view.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/force_view.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/function_procedure.html b/docs/en/ivorysql-doc/master/compatibility_features_design/function_procedure.html index ba0b39a8..3e3d46e2 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/function_procedure.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/function_procedure.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/like_operator.html b/docs/en/ivorysql-doc/master/compatibility_features_design/like_operator.html index eac52da0..fa08f193 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/like_operator.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/like_operator.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/nested_function.html b/docs/en/ivorysql-doc/master/compatibility_features_design/nested_function.html index fb249a30..37af58f4 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/nested_function.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/nested_function.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/nls_parameter.html b/docs/en/ivorysql-doc/master/compatibility_features_design/nls_parameter.html index a8b290e2..3025733e 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/nls_parameter.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/nls_parameter.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/out_parameter.html b/docs/en/ivorysql-doc/master/compatibility_features_design/out_parameter.html index 229593aa..befe6d43 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/out_parameter.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/out_parameter.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/rowid.html b/docs/en/ivorysql-doc/master/compatibility_features_design/rowid.html index e3a09cc0..36ccbc71 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/rowid.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/rowid.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/sys_guid_function.html b/docs/en/ivorysql-doc/master/compatibility_features_design/sys_guid_function.html index 3a8ac421..65e7642d 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/sys_guid_function.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/sys_guid_function.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/compatibility_features_design/type_rowtype.html b/docs/en/ivorysql-doc/master/compatibility_features_design/type_rowtype.html index 82f53871..abe14287 100644 --- a/docs/en/ivorysql-doc/master/compatibility_features_design/type_rowtype.html +++ b/docs/en/ivorysql-doc/master/compatibility_features_design/type_rowtype.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/containerization/docker_podman_deployment.html b/docs/en/ivorysql-doc/master/containerization/docker_podman_deployment.html index f5e309ee..2e4183c6 100644 --- a/docs/en/ivorysql-doc/master/containerization/docker_podman_deployment.html +++ b/docs/en/ivorysql-doc/master/containerization/docker_podman_deployment.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/containerization/docker_swarm_compose_deployment.html b/docs/en/ivorysql-doc/master/containerization/docker_swarm_compose_deployment.html index 6aad1222..1ec01663 100644 --- a/docs/en/ivorysql-doc/master/containerization/docker_swarm_compose_deployment.html +++ b/docs/en/ivorysql-doc/master/containerization/docker_swarm_compose_deployment.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/containerization/k8s_deployment.html b/docs/en/ivorysql-doc/master/containerization/k8s_deployment.html index 858760d5..afaef28e 100644 --- a/docs/en/ivorysql-doc/master/containerization/k8s_deployment.html +++ b/docs/en/ivorysql-doc/master/containerization/k8s_deployment.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/containerization/operator_deployment.html b/docs/en/ivorysql-doc/master/containerization/operator_deployment.html index 2c2eaf91..4c1b5a16 100644 --- a/docs/en/ivorysql-doc/master/containerization/operator_deployment.html +++ b/docs/en/ivorysql-doc/master/containerization/operator_deployment.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/contribution/community_contribution_guide.html b/docs/en/ivorysql-doc/master/contribution/community_contribution_guide.html index 7561c1a6..c48dfe88 100644 --- a/docs/en/ivorysql-doc/master/contribution/community_contribution_guide.html +++ b/docs/en/ivorysql-doc/master/contribution/community_contribution_guide.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/contribution/faq.html b/docs/en/ivorysql-doc/master/contribution/faq.html index 2978c335..0bc4a9e3 100644 --- a/docs/en/ivorysql-doc/master/contribution/faq.html +++ b/docs/en/ivorysql-doc/master/contribution/faq.html @@ -231,6 +231,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/cpu_os_adaptation/cpu_architecture_adaptation.html b/docs/en/ivorysql-doc/master/cpu_os_adaptation/cpu_architecture_adaptation.html index c0fb0c60..f0fb4d00 100644 --- a/docs/en/ivorysql-doc/master/cpu_os_adaptation/cpu_architecture_adaptation.html +++ b/docs/en/ivorysql-doc/master/cpu_os_adaptation/cpu_architecture_adaptation.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/cpu_os_adaptation/os_architecture_adaptation.html b/docs/en/ivorysql-doc/master/cpu_os_adaptation/os_architecture_adaptation.html index 6cc6ff52..862d6a33 100644 --- a/docs/en/ivorysql-doc/master/cpu_os_adaptation/os_architecture_adaptation.html +++ b/docs/en/ivorysql-doc/master/cpu_os_adaptation/os_architecture_adaptation.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/developer_guide.html b/docs/en/ivorysql-doc/master/developer_guide.html index 3c87867b..d2b7bafc 100644 --- a/docs/en/ivorysql-doc/master/developer_guide.html +++ b/docs/en/ivorysql-doc/master/developer_guide.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/ecosystem_overview.html b/docs/en/ivorysql-doc/master/ecosystem_components/ecosystem_overview.html index 4e1ec905..98feae82 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/ecosystem_overview.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/ecosystem_overview.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/pg_ai_query.html b/docs/en/ivorysql-doc/master/ecosystem_components/pg_ai_query.html index 542c9398..f1b16490 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/pg_ai_query.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/pg_ai_query.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/pg_cron.html b/docs/en/ivorysql-doc/master/ecosystem_components/pg_cron.html index b5ab8dee..f3526e6e 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/pg_cron.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/pg_cron.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/pg_curl.html b/docs/en/ivorysql-doc/master/ecosystem_components/pg_curl.html index 4ec603fd..32e4dcd2 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/pg_curl.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/pg_curl.html @@ -5,7 +5,7 @@ pg_curl :: IvorySQL Document Site - + @@ -232,6 +232,9 @@

IvorySQL

+ @@ -738,7 +741,7 @@

- pg_stat_monitor + pgbouncer Monitoring diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/pg_stat_monitor.html b/docs/en/ivorysql-doc/master/ecosystem_components/pg_stat_monitor.html index 4c923eff..9c47795e 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/pg_stat_monitor.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/pg_stat_monitor.html @@ -6,7 +6,7 @@ pg_stat_monitor :: IvorySQL Document Site - + @@ -232,6 +232,9 @@

IvorySQL

+ @@ -588,7 +591,7 @@

5. Usage

diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/pgaudit.html b/docs/en/ivorysql-doc/master/ecosystem_components/pgaudit.html index 3af4f053..b84c5848 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/pgaudit.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/pgaudit.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/pgbouncer.html b/docs/en/ivorysql-doc/master/ecosystem_components/pgbouncer.html new file mode 100644 index 00000000..cd6cb436 --- /dev/null +++ b/docs/en/ivorysql-doc/master/ecosystem_components/pgbouncer.html @@ -0,0 +1,732 @@ + + + + + + PgBouncer :: IvorySQL Document Site + + + + + + + + +
+ +
+
+ +
+ +
+ +
+

PgBouncer

+
+

1. Overview

+
+
+

PgBouncer is a lightweight connection pooling middleware that sits between the application layer and the database. It reduces connection overhead, protects database resources, and improves application concurrency performance by reusing backend connections.

+
+
+

PgBouncer uses the standard PostgreSQL communication protocol, which IvorySQL fully supports.

+
+
+

Three Connection Pooling Modes:

+
+ +++++ + + + + + + + + + + + + + + + + + + + + + + + + +
ModeDescriptionUse Case

session

Client exclusively holds one backend connection for the duration of the session

Required for in-process COMMIT and full session features

transaction

Connection is returned to the pool after each transaction

Most commonly used, highest connection reuse rate

statement

Connection is returned after each statement

Most restrictive, does not support explicit transactions

+
+
+
+

2. Installation

+
+
+ + + + + +
+ + +Source installation was tested on Ubuntu 24.04. +
+
+
+

2.1. Dependencies

+
+
+
# Ubuntu / Debian
+sudo apt install libevent-dev libssl-dev pkg-config
+
+# RHEL / Rocky Linux
+sudo dnf install libevent-devel openssl-devel pkgconfig
+
+
+
+
+

2.2. Source Installation

+
+
+
git clone https://github.com/pgbouncer/pgbouncer.git
+cd pgbouncer
+
+./autogen.sh
+
+./configure \
+    --prefix=/usr/ivory-5 \
+    --with-openssl \
+    --with-pam
+
+make -j4
+make install
+cp pgbouncer /usr/ivory-5/bin/
+
+
+
+
+

2.3. Verify Installation

+
+
+
pgbouncer --version
+# PgBouncer 1.25.1
+# libevent 2.1.12-stable
+# tls: OpenSSL 3.0.2 15 Mar 2022
+
+
+
+
+
+
+

3. Configuration

+
+
+

3.1. Connecting to IvorySQL PG Mode (Port 5432)

+
+

Create /etc/pgbouncer/pgbouncer.ini:

+
+
+
+
[databases]
+postgres = host=127.0.0.1 port=5432 dbname=postgres
+
+[pgbouncer]
+listen_addr = 127.0.0.1
+listen_port = 6432
+auth_type = trust
+auth_file = /etc/pgbouncer/userlist.txt
+pool_mode = transaction
+max_client_conn = 200
+default_pool_size = 20
+logfile = /var/log/pgbouncer/pgbouncer.log
+pidfile = /var/run/pgbouncer/pgbouncer.pid
+
+
+
+
+

3.2. Connecting to IvorySQL Oracle Compatible Mode (Port 1521)

+
+
+
[databases]
+postgres = host=127.0.0.1 port=1521 dbname=postgres
+
+[pgbouncer]
+listen_addr = 127.0.0.1
+listen_port = 2521
+auth_type = trust
+auth_file = /etc/pgbouncer/userlist.txt
+
+# Oracle compatible mode recommends session mode
+pool_mode = session
+
+max_client_conn = 200
+default_pool_size = 20
+logfile = /var/log/pgbouncer/pgbouncer_oracle.log
+pidfile = /var/run/pgbouncer/pgbouncer_oracle.pid
+
+
+
+
+

3.3. User Authentication File

+
+
+
# /etc/pgbouncer/userlist.txt
+# Format: "username" "password" (trust mode can leave password empty)
+"postgres" ""
+"app_user" "app_password"
+
+
+
+
+

3.4. Start and Stop

+
+
+
# Foreground mode (for debugging)
+pgbouncer /etc/pgbouncer/pgbouncer.ini
+
+# Daemon mode
+pgbouncer -d /etc/pgbouncer/pgbouncer.ini
+
+# Reload configuration (without interrupting connections)
+kill -HUP $(cat /var/run/pgbouncer/pgbouncer.pid)
+
+# Stop
+kill -INT $(cat /var/run/pgbouncer/pgbouncer.pid)
+
+
+
+
+
+
+

4. Usage

+
+
+

4.1. Client Connection

+
+

Connecting through PgBouncer uses the exact same syntax as connecting directly to IvorySQL, only the port changes:

+
+
+
+
# PG mode (via PgBouncer)
+psql -U postgres -p 6432 -d postgres
+
+# Oracle compatible mode (via PgBouncer)
+psql -U postgres -p 2521 -d postgres
+
+
+
+
+

4.2. Admin Console

+
+

PgBouncer provides a built-in administration database:

+
+
+
+
psql -U postgres -p 6432 -d pgbouncer
+
+
+
+
+
-- View pool status
+SHOW POOLS;
+
+-- View statistics
+SHOW STATS;
+
+-- View client connections
+SHOW CLIENTS;
+
+-- View backend connections
+SHOW SERVERS;
+
+-- Reload configuration
+RELOAD;
+
+
+
+
+

4.3. Oracle Compatible Mode

+
+
+
-- Verify Oracle mode is active
+SHOW ivorysql.compatible_mode;
+--  ivorysql.compatible_mode
+-- --------------------------
+--  oracle
+
+-- Oracle data types and functions
+CREATE TABLE bouncer_test (
+    id     NUMBER(10) PRIMARY KEY,
+    name   VARCHAR2(100),
+    hired  DATE DEFAULT SYSDATE
+);
+
+INSERT INTO bouncer_test VALUES (1, 'Alice', SYSDATE);
+
+SELECT id,
+       NVL(name, 'N/A')                   AS name,
+       DECODE(id, 1, 'CEO', 'Staff')       AS title,
+       TO_CHAR(hired, 'YYYY-MM-DD')        AS hire_date
+FROM bouncer_test;
+
+-- Oracle sequences
+CREATE SEQUENCE ora_seq START WITH 100 INCREMENT BY 10;
+SELECT ora_seq.NEXTVAL FROM DUAL;   -- 100
+SELECT ora_seq.NEXTVAL FROM DUAL;   -- 110
+SELECT ora_seq.CURRVAL FROM DUAL;   -- 110
+
+
+
+
+
+ +
+
+
+
+
+ +
+ + + + + + + diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/pgddl.html b/docs/en/ivorysql-doc/master/ecosystem_components/pgddl.html index 97f35f2e..4dff9df7 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/pgddl.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/pgddl.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/pgroonga.html b/docs/en/ivorysql-doc/master/ecosystem_components/pgroonga.html index f347f0d7..6f199639 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/pgroonga.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/pgroonga.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/pgrouting.html b/docs/en/ivorysql-doc/master/ecosystem_components/pgrouting.html index 54f1611b..b697079c 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/pgrouting.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/pgrouting.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/pgsql_http.html b/docs/en/ivorysql-doc/master/ecosystem_components/pgsql_http.html index 365db1be..6eff6277 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/pgsql_http.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/pgsql_http.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/pgvector.html b/docs/en/ivorysql-doc/master/ecosystem_components/pgvector.html index fae44407..76e9c9e2 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/pgvector.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/pgvector.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/plpgsql_check.html b/docs/en/ivorysql-doc/master/ecosystem_components/plpgsql_check.html index 42c2e373..68bccb36 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/plpgsql_check.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/plpgsql_check.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/postgis.html b/docs/en/ivorysql-doc/master/ecosystem_components/postgis.html index 33a71cb7..7e58d1da 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/postgis.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/postgis.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/system_stats.html b/docs/en/ivorysql-doc/master/ecosystem_components/system_stats.html index 29ab08ab..42d77ce3 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/system_stats.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/system_stats.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/ecosystem_components/wal2json.html b/docs/en/ivorysql-doc/master/ecosystem_components/wal2json.html index 62aa9a6e..903f526a 100644 --- a/docs/en/ivorysql-doc/master/ecosystem_components/wal2json.html +++ b/docs/en/ivorysql-doc/master/ecosystem_components/wal2json.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/gb18030.html b/docs/en/ivorysql-doc/master/gb18030.html index eedc6633..56dfbd1a 100644 --- a/docs/en/ivorysql-doc/master/gb18030.html +++ b/docs/en/ivorysql-doc/master/gb18030.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/getting-started/daily_maintenance.html b/docs/en/ivorysql-doc/master/getting-started/daily_maintenance.html index 19b4cd2d..4bf73937 100644 --- a/docs/en/ivorysql-doc/master/getting-started/daily_maintenance.html +++ b/docs/en/ivorysql-doc/master/getting-started/daily_maintenance.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/getting-started/daily_monitoring.html b/docs/en/ivorysql-doc/master/getting-started/daily_monitoring.html index 147d8688..7271d25b 100644 --- a/docs/en/ivorysql-doc/master/getting-started/daily_monitoring.html +++ b/docs/en/ivorysql-doc/master/getting-started/daily_monitoring.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/getting-started/quick_start.html b/docs/en/ivorysql-doc/master/getting-started/quick_start.html index 07678355..5906e1de 100644 --- a/docs/en/ivorysql-doc/master/getting-started/quick_start.html +++ b/docs/en/ivorysql-doc/master/getting-started/quick_start.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/installation_guide.html b/docs/en/ivorysql-doc/master/installation_guide.html index 0fb5e788..f8a48a21 100644 --- a/docs/en/ivorysql-doc/master/installation_guide.html +++ b/docs/en/ivorysql-doc/master/installation_guide.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/migration_guide.html b/docs/en/ivorysql-doc/master/migration_guide.html index 812ecdb7..8d666fad 100644 --- a/docs/en/ivorysql-doc/master/migration_guide.html +++ b/docs/en/ivorysql-doc/master/migration_guide.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/operation_guide.html b/docs/en/ivorysql-doc/master/operation_guide.html index b939aa9e..64f31ed3 100644 --- a/docs/en/ivorysql-doc/master/operation_guide.html +++ b/docs/en/ivorysql-doc/master/operation_guide.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_builtin_functions/sys_context.html b/docs/en/ivorysql-doc/master/oracle_builtin_functions/sys_context.html index 861f0501..de2fafeb 100644 --- a/docs/en/ivorysql-doc/master/oracle_builtin_functions/sys_context.html +++ b/docs/en/ivorysql-doc/master/oracle_builtin_functions/sys_context.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_builtin_functions/userenv.html b/docs/en/ivorysql-doc/master/oracle_builtin_functions/userenv.html index bd0f0902..9c709c7d 100644 --- a/docs/en/ivorysql-doc/master/oracle_builtin_functions/userenv.html +++ b/docs/en/ivorysql-doc/master/oracle_builtin_functions/userenv.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/anonymous_block.html b/docs/en/ivorysql-doc/master/oracle_compatibility/anonymous_block.html index c4deb0be..bd9dd104 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/anonymous_block.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/anonymous_block.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/builtin_types_functions.html b/docs/en/ivorysql-doc/master/oracle_compatibility/builtin_types_functions.html index 39e8919a..6a6be31e 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/builtin_types_functions.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/builtin_types_functions.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_call_into.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_call_into.html index 95e5aea8..08e41100 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_call_into.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_call_into.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_case_conversion.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_case_conversion.html index 36711fdd..af3e864f 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_case_conversion.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_case_conversion.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_empty_string_to_null.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_empty_string_to_null.html index f2ba4ea7..f5dfe325 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_empty_string_to_null.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_empty_string_to_null.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_force_view.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_force_view.html index 219418c2..c728ca39 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_force_view.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_force_view.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_function_procedure.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_function_procedure.html index 2b459b1b..82120eeb 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_function_procedure.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_function_procedure.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_like_operator.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_like_operator.html index 6a114cfe..f5ff3304 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_like_operator.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_like_operator.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_nested_function.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_nested_function.html index a284cb7b..45f50cf4 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_nested_function.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_nested_function.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_nls_parameter.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_nls_parameter.html index a4f9b2d5..b3e714d8 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_nls_parameter.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_nls_parameter.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_out_parameter.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_out_parameter.html index 2d1dbede..c2574b52 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_out_parameter.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_out_parameter.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_rowid.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_rowid.html index 0bbf9939..1b0471e9 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_rowid.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_rowid.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_sys_guid.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_sys_guid.html index b80679c7..53e231fd 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_sys_guid.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_sys_guid.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_type_rowtype.html b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_type_rowtype.html index ec3059f9..d5ec1336 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/compat_type_rowtype.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/compat_type_rowtype.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/invisible_column.html b/docs/en/ivorysql-doc/master/oracle_compatibility/invisible_column.html index 76c94507..d5587600 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/invisible_column.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/invisible_column.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/package.html b/docs/en/ivorysql-doc/master/oracle_compatibility/package.html index b32c1f22..99a5fb05 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/package.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/package.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/port_ip.html b/docs/en/ivorysql-doc/master/oracle_compatibility/port_ip.html index 47b468a7..44670a66 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/port_ip.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/port_ip.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/sequence.html b/docs/en/ivorysql-doc/master/oracle_compatibility/sequence.html index 9cd4d2cc..1701a039 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/sequence.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/sequence.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/oracle_compatibility/xml_functions.html b/docs/en/ivorysql-doc/master/oracle_compatibility/xml_functions.html index ce246449..f838be3b 100644 --- a/docs/en/ivorysql-doc/master/oracle_compatibility/xml_functions.html +++ b/docs/en/ivorysql-doc/master/oracle_compatibility/xml_functions.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/release_notes.html b/docs/en/ivorysql-doc/master/release_notes.html index 069b2b26..1e74eab1 100644 --- a/docs/en/ivorysql-doc/master/release_notes.html +++ b/docs/en/ivorysql-doc/master/release_notes.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/tools_reference.html b/docs/en/ivorysql-doc/master/tools_reference.html index 36816a01..cd75cba7 100644 --- a/docs/en/ivorysql-doc/master/tools_reference.html +++ b/docs/en/ivorysql-doc/master/tools_reference.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/master/welcome.html b/docs/en/ivorysql-doc/master/welcome.html index 4e1103de..cecedcc2 100644 --- a/docs/en/ivorysql-doc/master/welcome.html +++ b/docs/en/ivorysql-doc/master/welcome.html @@ -232,6 +232,9 @@

IvorySQL

+ diff --git a/docs/en/ivorysql-doc/v1.17/_exports/index.pdf b/docs/en/ivorysql-doc/v1.17/_exports/index.pdf new file mode 100644 index 00000000..cd58e21f Binary files /dev/null and b/docs/en/ivorysql-doc/v1.17/_exports/index.pdf differ diff --git a/docs/en/ivorysql-doc/v1.17/ivorysql.pdf b/docs/en/ivorysql-doc/v1.17/ivorysql.pdf new file mode 100644 index 00000000..cd58e21f Binary files /dev/null and b/docs/en/ivorysql-doc/v1.17/ivorysql.pdf differ diff --git a/docs/en/ivorysql-doc/v1.17/v1.17/1.html b/docs/en/ivorysql-doc/v1.17/v1.17/1.html index cc2344de..4170a297 100644 --- a/docs/en/ivorysql-doc/v1.17/v1.17/1.html +++ b/docs/en/ivorysql-doc/v1.17/v1.17/1.html @@ -147,6 +147,9 @@

IvorySQL

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +