DB2 error: SQL10007N Message "-1390" could not be retrieved. Reason code: "3"
DB2 error: SQL10007N Message "-1390" could not be retrieved. Reason code: "3"
尝试连接到 db2 数据库时出现以下错误:
$ /opt/ibm/db2/V10.5/bin/db2 connect to SRVO
SQL10007N Message "-1390" could not be retrieved. Reason code: "3".
但是,从 DBeaver 连接到它时,我没有遇到任何问题。错误的原因可能是什么?
消息说:
SQL1390C The environment variable DB2INSTANCE is not defined or is
invalid.
并且 SQL10007 也因此返回 - 因此通过将 DB2INSTANCE 设置为您的当前实例来修复它。
set DB2INSTANCE=whateveryourinstanceis
补充:
您在 DBeaver 中看到的驱动程序应指向以下文件的正确位置:
db2java.zip
db2jcc_license_cu.jar(或类似)
db2jcc4.jar
我在我的一个 Ansible 角色中遇到了这个问题,它为应用程序执行 sql 个脚本。它发生在我将 DB2 从 11.1.0 升级到 11.1.4.5(我正在使用的软件支持的最新版本)之后。
设置 DB2INSTANCE
环境变量没有帮助。通过以实例用户身份手动登录,我看到还有一堆来自 DB2 的变量:
[db2inst1@cnx-db2 ~]$ env | grep -i db2 | wc -l
16
但是有一个脚本 ~/sqllib/db2profile
可以设置所有相关的环境变量。像这样调用它在我的 Ansible 角色中有效:
- name: "Check and create DBs for CNX with user {{ db2.instance.name }}"
become: yes
become_user: "{{ db2.instance.name }}"
shell: |
. ~/sqllib/db2profile
apps=("activities" "blogs" "cognos" "communities" "dogear" "files" "forum" "homepage" "mobile" "profiles" "metrics" "pushnotification" "wikis")
for app in ${apps[*]}
do
{{ db2.target }}/bin/db2 -td@ -vf {{ cnx_sql_dir }}/${app}/db2/createDb.sql
{{ db2.target }}/bin/db2 -td@ -vf {{ cnx_sql_dir }}/${app}/db2/appGrants.sql
done
尝试连接到 db2 数据库时出现以下错误:
$ /opt/ibm/db2/V10.5/bin/db2 connect to SRVO
SQL10007N Message "-1390" could not be retrieved. Reason code: "3".
但是,从 DBeaver 连接到它时,我没有遇到任何问题。错误的原因可能是什么?
消息说:
SQL1390C The environment variable DB2INSTANCE is not defined or is invalid.
并且 SQL10007 也因此返回 - 因此通过将 DB2INSTANCE 设置为您的当前实例来修复它。
set DB2INSTANCE=whateveryourinstanceis
补充: 您在 DBeaver 中看到的驱动程序应指向以下文件的正确位置: db2java.zip db2jcc_license_cu.jar(或类似) db2jcc4.jar
我在我的一个 Ansible 角色中遇到了这个问题,它为应用程序执行 sql 个脚本。它发生在我将 DB2 从 11.1.0 升级到 11.1.4.5(我正在使用的软件支持的最新版本)之后。
设置 DB2INSTANCE
环境变量没有帮助。通过以实例用户身份手动登录,我看到还有一堆来自 DB2 的变量:
[db2inst1@cnx-db2 ~]$ env | grep -i db2 | wc -l
16
但是有一个脚本 ~/sqllib/db2profile
可以设置所有相关的环境变量。像这样调用它在我的 Ansible 角色中有效:
- name: "Check and create DBs for CNX with user {{ db2.instance.name }}"
become: yes
become_user: "{{ db2.instance.name }}"
shell: |
. ~/sqllib/db2profile
apps=("activities" "blogs" "cognos" "communities" "dogear" "files" "forum" "homepage" "mobile" "profiles" "metrics" "pushnotification" "wikis")
for app in ${apps[*]}
do
{{ db2.target }}/bin/db2 -td@ -vf {{ cnx_sql_dir }}/${app}/db2/createDb.sql
{{ db2.target }}/bin/db2 -td@ -vf {{ cnx_sql_dir }}/${app}/db2/appGrants.sql
done