我是 Linux 操作系统的新手。
我们已经在用户(test_user)下安装了 DB2 应用程序。当我尝试从新创建的用户 (test_user2) 访问应用程序时,db2 未启动。它指出了这个错误。
DB21018E (Failed to trigger db2 environment(DB21018E A system error occurred) from non-instance user)
但是,当我尝试从用户(test_user1)访问db2时,它工作正常。
我读到应该更新环境变量以指向正确的 PATH/LIBPATH/LD_LIBRARY_PATH。当我更新变量并注销时,更改将在下次登录时消失。
这些是我现在的障碍。
我尝试阅读很多博客来解决问题,但没有任何效果。
提前致谢。
考虑使用适合您的 Db2-LUW 版本的 Db2 文档,而不是使用博客。
对于您的问题,请研究此页面,
每个想要运行 db2 命令的本地 Linux 用户都需要配置其 shell 的启动文件,以便为您的 Db2 实例执行正确的
db2profile
。这是添加到启动配置文件的一行(例如 .bashrc 或 .profile,具体取决于每个用户拥有哪个 shell)。
如果为 test_user2 选择的 shell 是 bash,则编辑 ~/.bashrc 以添加类似于
. ~db2inst1/sqllib/db2profile
的行(其中 db2inst1
是 Db2 实例的名称,即拥有名为db2sysc
)。
(一台 Linux 主机可以同时运行多个 Db2 副本,具有相同或不同的版本,每个副本都是一个实例,并且有自己的用户 ID,称为“实例所有者”)。