如果有的话,我需要编写一个脚本来查找系统上的 Sybase 安装。
为了测试,我在 CentOS 系统上安装了 ASE 16,但安装程序显然基于 InstallAnywhere (Java)。
这显然是一种安装方法,我不确定是否有更多安装 ASE 的方法,比如安装 RPM 包。
无论如何,SYBASE.sh
在包含主目录的 ASE 安装中,有这个用于获取环境变量的脚本。这显然是 catch-22 的情况:为了找到这个脚本,我需要知道 ASE 的主目录。
是的,我可以在通常的位置(例如/sysdba
或)进行检查/opt/sap
。当然,交互式安装程序显然允许将 ASE 安装在任何地方,所以这还不够好。
找到它的最佳方法是什么?我愿意做一些事情,比如跟踪正在运行的进程到他们的可执行文件等,只要能帮助我找到 ASE 的安装位置。由于某些原因,我什至不会在它运行时才找到它。
我可以以 root 或管理员身份运行脚本,这没有问题。
在 linux 中调用了 ASE 二进制文件,
dataserver
因此您可以在查看正在运行的进程和/或运行find
.dataserver
将在以下$SYBASE/$SYBASE_ASE/bin
位置找到:$SYBASE
被认为是'ASE home directory'
and 通常类似于/opt/sybase
,/opt/sap
尽管正如您所指出的,它可以是用户想要的任何东西$SYBASE_ASE
将是格式ASE-15_0
或ASE-16_0
;这是 ASE 软件安装脚本创建的默认目录(即,用户不决定该目录的名称)因此,如果您找到
dataserver
二进制文件的位置,那么您应该能够从中确定$SYBASE
(和$SYBASE_ASE
)。在
$SYBASE
(主)目录中,您还将找到名为SYBASE.sh
,SYBASE.csh
和的文件interfaces
(尽管interfaces
如果 DBA 在同一主机上的多个 Sybase 安装之间共享一个公共文件,则可能是一个符号链接)。$SYBASE
而且,是的,可以在同一主机上安装多个 ASE(即多个目录)。至于关于安装方法的问题(?)......
该软件附带的唯一方法是基于 Java 的程序(带有 GUI 和 CLI 界面)。
在较大的环境中,DBA 和/或系统管理员组很可能已经创建了他们自己的安装“包”(例如,从预配置的 ASE 安装创建的 tarball),但这将是特定于站点的。