在 MySQL 中,使用SHOW GLOBAL VARIABLES提供了查看全局变量的能力。
SHOW SESSION VARIABLES是该会话的变量设置。
有没有办法SESSION从超级用户连接中查看其他活动的、连接的用户的变量?例如,是否有查询或视图可以显示哪些活动会话的变量设置与全局变量不同?
我有一个应用程序服务器使用 Oracle 即时客户端与 Oracle 数据库进行通信。我们正在解决一个特定的错误,有人询问我是否可以将以下标志添加到我的 sqlnet.ora 文件中:
DIAG_ADR_ENABLED=OFF
DIAG_SIGHANDLER_ENABLED=FALSE
DIAG_DDE_ENABLED=FALSE
Run Code Online (Sandbox Code Playgroud)
在此请求之前,我们在客户端不需要 sqlnet.ora 文件,使用即时客户端,我们可以引用 ojdbc6.jar 的类路径和 jar 目录的 ld_library_path,并使用如下 URL:
jdbc:oracle:oci:@server:port:sid
Run Code Online (Sandbox Code Playgroud)
查看 Oracle 文档,如果我为 ORACLE_HOME 和 TNS_ADMIN 添加环境变量,我似乎可以在客户端引用 sqlnet.ora 文件和/或 tnsnames.ora 文件。
我使用上面的参数创建了 sqlnet.ora 文件,并添加了一些跟踪参数,以便我可以验证该文件是否正在被读取:
TRACE_LEVEL_CLIENT=10
TRACE_DIRECTORY_CLIENT=/tmp
Run Code Online (Sandbox Code Playgroud)
我还创建了一个 tnsnames.ora 文件:
APPDB =
(DESCRIPTION =
(ADDRESS LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = *host*)(Port = *port*)))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = *service*)))
Run Code Online (Sandbox Code Playgroud)
最后,我添加了环境变量,并重新启动了应用程序。我尝试使用原始的更简单的 URL,很明显,设置没有被拾取,正如我期望的那样,跟踪标志在读取文件时会创建一个文件。接下来,我尝试使用 TNS 名称创建 URL,根据文档,该名称听起来像是会在 TNS_ADMIN 中查找要连接的其他文件。
jdbc:oracle:oci:@(DESCRIPTION=(ADDRESS LIST=(ADDRESS = (PROTOCOL = TCP)(HOST = *host*)(Port = *port*)))(CONNECT_DATA …Run Code Online (Sandbox Code Playgroud)