windows创建DB2数据库时报错--SQL1052N 数据库路径不存在

来源:互联网 发布:淘宝文翼多论文怎么样 编辑:程序博客网 时间:2024/05/22 10:28

DB2 Express 9.7 | Windows XP SP3

用DB2 v9新建数据库的时候,把”缺省路径“写的是D:\foo\bar(此目录存在),当一切操作都OK点完成的时候,提示如下:
SQL1052N 数据库路径 "D:\foo\bar" 不存在。

说明:

该命令的 "<path>" 参数中指定的路径无效。不存在该名称的路径,或者在
DB2_CREATE_DB_ON_PATHS 注册表变量被禁用时,指定了路径(仅限于 Windows)

在 Windows 或 UNIX 环境下的分区数据库环境中,分区数据库组中的每个节点都
必须有相同的硬盘驱动器规范(路径)可用并且具有可用空间,才能成功执行
CREATE DATABASE 命令。硬盘驱动器路径是在数据库管理器配置中指定的。如果
DFTDBPATH 为空白,那么缺省值将是实例拥有的机器上安装了 DB2 的硬盘驱动器
路径(即,db2 安装路径)。

但是如果我把路径直接改为D:\,直接设在根目录下就OK了,原因可能是windows下只能指定盘符,不能进一步指定路径,因此只能放在根目录下,如果是Linux,就不存在上述问题。

duanyoushi: 我记得,db2的DBPath的机制是针对AIX、Linux、Unix上是Path,而在Windows上是Driver。也就是说在Windows上DBPath必须是某一个驱动器。C:、D:。。

dandan: 不是您猜测的原因。其实只要用下面的命令设置一下DB2的注册表变量并重新启动实例就可以了。
db2set DB2_CREATE_DB_ON_PATH=YES

文章地址:http://www.cppblog.com/prayer/archive/2010/01/27/106527.html

 

我安装的时候用的是windows7系统,db2 v9.7,非常感谢这位兄弟,让我这个菜鸟解决了这个问题大笑

原来这么解决起来真的很简单,仅仅是因为DB2_CREATE_DB_ON_PATHS被禁用了而已。改为启用就行了。

进入db2 命令窗口:执行  db2set DB2_CREATE_DB_ON_PATH=YES

重启db2,ok,一切搞定!