系统: Windows 8
我一直在为学校做一个使用IBM、Xampp和DB2访问数据库的项目。
一切都很完美。然后有一天我重新启动了我的电脑。
IBM数据库管理器在启动时返回以下错误:
SQL5005C操作失败,因为数据库管理器无法访问数据库管理器配置文件或数据库配置文件.
我试过运行db2stop和db2start。
我仍然能够通过db2命令行终端访问我的数据库,好像什么都没有错一样。
但是,当我试图从PHP访问数据库时,我现在从PHP文件中得到以下错误:
58031 IBM SQL1031N数据库目录在指定的文件系统上找不到。SQLSTATE=58031 SQLCODE=-1031
发布于 2015-10-27 01:51:33
您可能需要再次检查db2diag.log,以找到SQL5005C
的原因。在更好的情况下,访问配置文件时出现了临时问题。但是,在更糟糕的情况下,DBM或DB配置文件中的一个可能已损坏。对于损坏的DBM,我通常使用db2idrop
/db2icrt
。损坏的DB可以由RESET DB CFG
“修复”(如“重置”中的“重置”,您将丢失所有自定义更改)。
随后的SQL1031N
告诉我,您试图访问的数据库已未编目。这也很奇怪,特别是因为您告诉我您可以从DB2命令行访问数据库。您可能希望从命令行执行LIST DB DIRECTORY
以显示数据库条目,还可以使用LIST NODE DIRECTORY
查看数据库驻留在哪些节点上。
发布于 2017-11-16 04:18:18
可能的原因是您丢失了硬盘上的数据库文件。
发布于 2018-06-06 09:06:19
当您尝试从编程语言( python或其他语言)与DB2交互时,可以使用一个库(例如https://pypi.org/project/ibm_db/ for python)与db2客户端应用程序交互来连接/查询您的DB。
如果工作站上安装了多个installed客户端包,则可能无法使用正确的包访问DB。
因此,您必须验证PHP用于完成此工作的客户端。为此,请执行以下操作:
您可以在同一台机器上找到更多db2客户端管理的更多信息,这里。
https://stackoverflow.com/questions/33358389
复制相似问题