返回首页

gbase数据、南大通用产品文档:GBase8a内存问题

更新日期:2024年09月11日

内存问题
内存硬件故障会造成数据文件损坏、数据库运行异常等较为严重问题。在服务器开
启自检中会提示内存故障信息。在message、dmesg 等Linux 系统日志中,也会记
录一些内存有关的问题,可通过搜索MCE 查看,如:
[Hardware Error]:Machine check events logged
EDAC sbridge MC1:HANDLING MCE MEMORY ERROR

函数说明
返回基数为e,幂值为X 的值,即返回e 的X 次幂。
示例
示例1:返回e 的2 次幂。
gbase> SELECT EXP(2) FROM dual;
+------------------+
| EXP(2)
|
+------------------+
| 7.38905609893065 |
+------------------+
1 row in set
示例2:返回e 的-2 次幂。

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
753
gbase> SELECT EXP(-2) FROM dual;
+-------------------+
| EXP(-2)
|
+-------------------+
| 0.135335283236613 |
+-------------------+
1 row in set

HTTP 代理需要支持 servlet 的 web 服务器,如果其 servlet 引擎使用 2.1 或更高 servlet
API 的 web 服务器,则更好。代理与 2.0 和较早的 servlet API 相兼容,但仅 2.1 或更
高的 API 启用 PROXYTIMEOUT 特性。
要为代理服务器配置环境,请:
1.
在 web 服务器配置中为代理 servlet 定义 servlet 别名或上下文。
JDBC 驱动程序将所有客户机 HTTP 请求指向:
http://your-web-server:port/pathname/IfxJDBCProxy
在此,IfxJDBCProxy 是代理 servlet,pathname 是至代理 servlet 的路径。要了解配置
servlet 的方式,请参考 web 服务器资料。
2.
将三个类文件—IfxJDBCProxy.class、SessionMgr.class 和 TimeoutMgr.class—复制至您
在前面步骤中指定的 servlet 目录。
这些类文件驻留在目录 proxy 中,
其位于安装产品包之后的 GBase 8s JDBC Driver 安装
目录之下。

GBase 8s JDBC Driver 程序员指南
南大通用数据技术股份有限公司
- 52 -
3.
将 GBase 8s JDBC Driver 文件 ifxjdbc.jar 添加至 web 服务器上的 CLASSPATH 设置。

某些 web 服务器使用在其下启动服务器的环境的 CLASSPATH,
而其他 web 服务器
从特定于 web 服务器的属性文件取得它们的 CLASSPATH。要了解更新
CLASSPATH 设置的正确位置,请查阅 web 服务器资料。
4.
启动 web 服务器,并通过输入下列 URL 来核实是否正确地安装代理:
http://server-host-name:port-number/servlet/IfxJDBCProxy
代理以下列标题来回复:
-- GBase 8s Proxy Servlet v220 Servlet API 2.1 --
v220 表示 GBase 8s 代理版本。Servlet API 2.1 表示 web 服务器 servlet API 的版本。
如果 servlet API 是 2.0 或更早版本,则标题显示 Servlet API 0.0。
5.
在配置代理之后,请将下列内容附加至 applet 或应用程序 URL:
PROXY=server-host-name:port-number
例如:
jdbc:gbasedbt-sqli://123.45.67.89:1533:GBASEDBTSERVER=
myserver;user=rdtest;password=test;
PROXY=webserver:1462;
依赖于 web 服务器,
当启动 web 服务器时,
或在 applet 的 URL 中或在应用程序连接对
象中首次引用它时,可能加载该代理 servlet。
下列网站提供关于代理 servlet 的更多信息:

www.oracle.com

java.apache.org
指定超时
通过使用 PROXYTIMEOUT 关键字,可为代理指定超时值。PROXYTIMEOUT 值指定客
户机侧 JDBC 驱动程序将 keepalive 请求发送至代理的频度。以秒表示 A
PROXYTIMEOUT 值;该值可为 60 或更大。
当客户机指定 PROXYTIMEOUT 时,
代理设置客户机会话到期等于 2 x PROXYTIMEOUT。
例如,如果设置 PROXYTIMEOUT 为 60 秒,则代理将客户机到期时间设置为 120 秒。
当达到到期时间时,代理移除客户机会话资源,并关闭它的数据库连接。
每次收到来自客户机的通讯时,代理重置超时间隔。这里是 PROXYTIMEOUT 的一些有
效值:
PROXYTIMEOUT=-1
禁用客户机超时特性。
PROXYTIMEOUT=nnn

GBase 8s JDBC Driver 程序员指南
南大通用数据技术股份有限公司
- 53 -
每 nnn 秒,客户机发送一 keepalive 请求至代理。nnn 值必须为 60 或更大。
PROXYTIMEOUT=60
如果未指定 PROXYTIMEOUT,则缺省值为 60
如果未首先通过关闭 JDBC 连接来发送关闭请求给代理,则在确定客户机是否已终止时,
代理超时特性是有帮助的。代理代表客户机维护一打开的数据库连接,直到客户机:

或者显式地关闭数据库连接为止

或者超过它的超时间隔为止
onstat 数据库实用程序展示任何意外终止了且将 PROXYTIMEOUT 设置为 -1 的客户机会
话的打开的会话。
此处为指定 PROXYTIMEOUT 的示例:
jdbc:gbasedbt-sqli://123.45.67.89:1533:gbasedbtserver=myserver;
user=rdtest;password=test;
PROXY=webserver:1462?PROXYTIMEOUT=180;
要了解使用代理的示例 applet 和应用程序,请参阅安装驱动程序的那个目录之下
的 demo/proxy 目录。