我卸载了老版的DB2,但是services.msc中还有一项DB2 - DB2-0的服务,
(1)尝试用下面的命令删除
sc delete "DB2 - DB2-0",提示服务不存在。
(2)打开注册表编辑器,找到下面的键值:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 一般服务会以相同的名字在这里显示一个主健,直接删除相关的键值便可。
发现主键名其实是DB2-0,于是改为sc delete DB2-0,删除成功!
在IBM 官网上下载了db2_v101_win_expc.exe,424MB,安装。。
一开始搞自定义安装,最后db2start报错,找不到解决方案,只好重装。重装时全部用缺省值,除了安装路径从c改成d,并去掉了program files一层,然后给db2admin加了db2admin的密码。这次你M的终于装完就启动成功了。
C:\Documents and Settings\Administrator>db2set -all
[e] DB2PATH=D:\IBM\SQLLIB
[i] DB2INSTPROF=C:\Documents and Settings\All Users\Application Data\IBM\DB2\DB2COPY1
[i] DB2COMM=TCPIP
[g] DB2_COMPATIBILITY_VECTOR=MYS
[g] DB2_EXTSECURITY=NO
[g] DB2_COMMON_APP_DATA_PATH=C:\Documents and Settings\All Users\Application Data
[g] DB2SYSTEM=IBM-R8M6A58
[g] DB2PATH=D:\IBM\SQLLIB
[g] DB2INSTDEF=DB2
[g] DB2ADMINSERVER=DB2DAS00
C:\Documents and Settings\Administrator>db2
(c) Copyright IBM Corporation 1993,2007
DB2 客户机 10.1.0 的命令行处理器
可从命令提示符处发出数据库管理器命令和 SQL 语句。例如:
db2 => connect to sample
db2 => bind sample.bnd
要获得一般帮助,输入:?。
要获得命令帮助,输入:? command,其中 command 可以是
数据库管理器命令的前几个关键字。例如:
? CATALOG DATABASE 用于关于 CATALOG DATABASE 命令的帮助
? CATALOG 用于关于所有 CATALOG 命令的帮助。
要退出 db2 交互方式,在命令提示符处输入
QUIT。在非交互方式下,所有命令都必须以“db2”作前缀。
要列出当前命令选项设置,输入 LIST COMMAND OPTIONS。
要获取更详细的帮助,请参阅 Online Reference Manual。
db2 => create database notsmart
DB20000I CREATE DATABASE 命令成功完成。
db2 =>
但是建在哪里了?
db2 => list database directory
系统数据库目录
目录中的条目数 = 2
数据库 1 条目:
数据库别名 = NOTSMART
数据库名称 = NOTSMART
本地数据库目录 = D:
数据库发行版级别 = f.00
注释 =
目录条目类型 = 间接
目录数据库分区号 = 0
备用服务器主机名 =
备用服务器端口号 =
数据库 2 条目:
数据库别名 = SAMPLE
数据库名称 = SAMPLE
本地数据库目录 = D:
数据库发行版级别 = f.00
注释 =
目录条目类型 = 间接
目录数据库分区号 = 0
备用服务器主机名 =
备用服务器端口号 =
db2 =>
原来数据库文件都建在了D:/DB2/NODE0000目录下。。。。
D:\DB2>tree
Folder PATH listing for volume work
Volume serial number is B850-7371
D:.
└─NODE0000
├─NOTSMART
│ ├─T0000000
│ ├─T0000001
│ │ └─C0000000.TMP
│ └─T0000002
├─SAMPLE
│ ├─T0000000
│ ├─T0000001
│ │ └─C0000000.TMP
│ ├─T0000002
│ ├─T0000003
│ └─T0000004
├─SQL00001
│ ├─HADR
│ │ ├─LOGSPOOL
│ │ └─TAKEOVER
│ ├─LOGSTREAM0000
│ └─MEMBER0000
│ ├─DB2EVENT
│ │ └─db2detaildeadlock
│ └─HADR
│ ├─LOGSPOOL
│ └─TAKEOVER
├─SQL00002
│ ├─HADR
│ │ ├─LOGSPOOL
│ │ └─TAKEOVER
│ ├─LOGSTREAM0000
│ └─MEMBER0000
│ ├─DB2EVENT
│ │ └─db2detaildeadlock
│ └─HADR
│ ├─LOGSPOOL
│ └─TAKEOVER
└─SQLDBDIR
D:\DB2>
比DB2 8改进的是,我看到了NOTSMART目录了,而不再是让人蛋疼的SQLnnnnn,这个目录的大小从v8的30M变成了v10的128M
db2 => drop database notsmart
DB20000I DROP DATABASE 命令成功完成。
db2 =>
我想继续完成上篇中未完成的命令:
db2 => create database notsmart on 'E:/db2data/notsmart/on1','E:/db2data/notsmar
t/on2'
SQL1052N 数据库路径 "E:/db2data/notsmart/on1" 不存在。
db2 =>
C:\Documents and Settings\Administrator>db2set -i db2 DB2_CREATE_DB_ON_PATH=YES
(成功!)
C:\Documents and Settings\Administrator>db2set -all
[e] DB2PATH=D:\IBM\SQLLIB
[i] DB2_CREATE_DB_ON_PATH=YES
[i] DB2INSTPROF=C:\Documents and Settings\All Users\Application Data\IBM\DB2\DB2COPY1
[i] DB2COMM=TCPIP
[g] DB2_COMPATIBILITY_VECTOR=MYS
[g] DB2_EXTSECURITY=NO
[g] DB2_COMMON_APP_DATA_PATH=C:\Documents and Settings\All Users\Application Data
[g] DB2SYSTEM=IBM-R8M6A58
[g] DB2PATH=D:\IBM\SQLLIB
[g] DB2INSTDEF=DB2
[g] DB2ADMINSERVER=DB2DAS00
C:\Documents and Settings\Administrator>
db2 => create database notsmart on 'E:/db2data/notsmart/on1','E:/db2data/notsmar
t/on2'
SQL1052N 数据库路径 "E:/db2data/notsmart/on1" 不存在。
手动建好目录
db2 => create database notsmart on 'E:/db2data/notsmart/on1','E:/db2data/notsmar
t/on2'
SQL1051N 路径 "E:/db2data/notsmart/on1\DB2\NODE0000" 不存在或无效。
SQLSTATE=57019
db2 =>
继续建这个不存在的目录,还是不行。算了。不折腾了