❶ 为什么我使用DB2在命令窗口中输入db2icrt slab1,它说 必须在命令窗口中以完整管理特权运行才能启动此命令
用Administrator试试
❷ linux系统重启之后db2无法启动
我用的CentOS系统,内核是Linux。 进入图形界面后,在桌面上右键点击“创建新终端”
1.在命令行界面中用如下语句切换到db2inst1账户中:
su - db2inst1
注意,命令要小写,中间的减号是半角的。其中db2inst1账户(同时也是实例、进程)是在安装DB2过程中创建的一个默认账户,相当于Windows中的那个DB2实例,要想执行各种db2的命令,需要在这个账户下操作;
2.在该账户下,可以打开控制中心,也可以进入到命令行处理器。进入命令行处理器的方法很简单,直接用db2命令,然后回车即可;
3.打开控制中心稍微有点麻烦,需要在桌面上另外打开一个命令行窗口,在其中输入:
xhost local:db2
然后在db2inst1账户所在的窗口中,输入命令:
db2cc &
就可以打开控制中心。
4.现在可以查看当前实例
db2ilist
如果需要创建表,则需要打开数据库管理服务,输入命令:
su - db2inst1
db2start //启动db2工作实例
db2stop //停止db2实例
db2set -all //查看db2所有注册表变量
在变量列表中有一个db2管理用户:DB2ADMINSERVER=XXXXX
只有切换到管理用户才可以创建表 su - XXXXX
然后,输入命令: db2admin start 启动管理实例
说明:
在Linux环境下,一个用户对应一个实例,创建数据库必须在实例下创建,因此切换到用户即可切换到实例。命令如下:
su - db2inst1
db2 get instance
❸ DB2怎么启动数据库
1、 打开命令行窗口
#db2cmd
2、 打开控制中心
# db2cmd db2cc
3、 打开命令编辑器
db2cmd db2ce
=====操作数据库命令=====
4、 启动数据库实例
#db2start
5、 停止数据库实例
#db2stop
如果你不能停止数据库由于激活的连接,在运行db2stop前执行db2
force application all就可以了 /db2stop force
6、 创建数据库
#db2 create db
[dbname]
7、 连接到数据库
#db2 connect to [dbname] user [username] using
[password]
8、 断开数据库连接
#db2 connect reset
9、 列出所有数据库
#db2 list
db directory
10、 列出所有激活的数据库
#db2 list active databases
11、
列出所有数据库配置
#db2 get db cfg
12、 删除数据库
#db2 drop database [dbname]
(执行此操作要小心)
如果不能删除,断开所有数据库连接或者重启db2
=========操作数据表命令==========
13、 列出所有用户表
#db2 list tables
14、列出所有系统表
#db2 list tables for
system
15、列出所有表
#db2 list tables for all
16、 列出系统表
#db2 list
tables for system
17、列出用户表
#db2 list tables for user
18、 列出特定用户表
#db2 list tables for schema [user]
19、 创建一个与数据库中某个表(t2)结构相同的新表(t1)
#db2 create table t1 like t2
20、 将一个表t1的数据导入到另一个表t2
#db2 "insert
into t1 select * from t2"
21、 查询表
#db2 "select * from table name where
..."
22、 显示表结构
#db2 describe table tablename
23、 修改列
#db2
alter table [tablename] alter column [columname] set data type varchar(24)
======脚本文件操作命令=======
24、 执行脚本文件
#db2 -tvf scripts.sql
25、帮助命令
* 查看命令帮助
#db2 ? db2start
* 查看错误码信息
#db2 ? 22001
* memo:
详细命令请使用"db2 ? <command>"进行查看。
=========================
26、备份数据库
#db2 backup db <db name>
备注:执行以上命令之前需要断开数据库连接
27、在线备份数据库
#db2 -v "BACKUP DATABASE <database name> ONLINE TO <path> WITH 2
BUFFERS BUFFER 1024 INCLUDE LOGS WITHOUT PROMPTING"
28、恢复数据库
#db2
restore db <source db name>
29、在线恢复数据库
#db2 "RESTORE DB
<database name> TO <db path> LOGTARGET <logpath> WITHOUT
PROMPTING"
#db2 "ROLLFORWARD DB <database name> TO END OF LOGS AND
STOP" ...
30、导出数据文件
#db2move <db name> export
[-sn
<模式名称,一般为db2admin>]
[-tn <表名,多个之间用逗号分隔>]
31、导入数据文件
#db2move <db name> import
32、获取db2数据库管理配置环境信息
#db2 get dbm cfg
33、.获取db2某个数据库数据库管理配置环境信息
#db2 get db cfg for <db name>
或者:连接至某个数据库以后执行db2 get db cfg
34、更改db2日志空间的大小
备注:以下命令为了防止db2数据库过份使用硬盘空间而设,仅用于开发者自己机器上的db2,如果是服务器,则参数需要修改。
#db2
UPDATE DB CFG FOR <db name> USING logretain OFF logprimary 3 logsecond 2
logfilsiz 25600;
如果页大小是4KB,则以上命令创建3个100M的日志文件,占用300MB硬盘空间。25600*4KB=102400KB。
35、创建临时表空间
#DB2 CREATE USER TEMPORARY TABLESPACE STMASPACE PAGESIZE 32 K MANAGED BY
DATABASE USING (FILE 'D:\DB2_TAB\STMASPACE.F1' 10000)
EXTENTSIZE 256
36、获取数据库管理器的快照数据
#db2 –v get snapshot for dbm
37、显示进行程号
#db2
list applications show detail
===================================================
一、加载数据:
1、
以默认分隔符加载,默认为“,”号
db2 "import from btpoper.txt of del insert into btpoper"
2、 以指定分隔符“|”加载
db2 "import from btpoper.txt of del modified by coldel|
insert into btpoper"
二、卸载数据:
1、 卸载一个表中全部数据
db2 "export to
btpoper.txt of del select * from btpoper"
db2 "export to btpoper.txt of del
modified by coldel| select * from btpoper"
2、 带条件卸载一个表中数据
db2 "export to
btpoper.txt of del select * from btpoper where brhid='907020000'"
db2
"export to cmmcode.txt of del select * from cmmcode where codtp='01'"
db2
"export to cmmcode.txt of del modified by coldel| select * from cmmcode where
codtp='01'"
三、查询数据结构及数据:
db2 "select * from btpoper"
db2 "select *
from btpoper where brhid='907020000' and oprid='0001'"
db2 "select
oprid,oprnm,brhid,passwd from btpoper"
四、删除表中数据:
db2 "delete from
btpoper"
db2 "delete from btpoper where brhid='907020000' or
brhid='907010000'"
五、修改表中数据:
db2 "update svmmst set prtlines=0 where
brhid='907010000' and jobtp='02'"
db2 "update svmmst set prtlines=0 where
jobtp='02' or jobtp='03'"
六、联接数据库
db2 connect to btpdbs
七、清除数据库联接
db2 connect reset 断开数据库连接
db2 terminate 断开数据库连接
db2 force
applications all 断开所有数据库连接
八、备份数据库
1、 db2 backup db btpdbs
2、
db2move btpdbs export
db2look -d btpdbs -e -x [-a] -o crttbl.sql
九、恢复数据库
1、 db2 restore db btpdbs without rolling forward
2、 db2 -tvf crtdb.sql
crtdb.sql文件内容:create db btpdbs on /db2catalog
db2 -stvf crttbl.sql
db2move btpdbs import
十、DB2帮助命令:
db2 ?
db2 ? restroe
db2 ?
sqlcode (例:db2 ? sql0803) 注:code必须为4位数,不够4位,前面补0
十一、bind命令:将应用程序与数据库作一捆绑,每次恢复数据库后,建议都要做一次bind
(1) db2 bind br8200.bnd
(2) /btp/bin/bndall /btp/bnd
/btp/bin/bndall /btp/tran/bnd
十二、查看数据库参数:
db2 get dbm cfg
db2 get db cfg for btpdbs
十三、修改数据库参数:
db2 update db cfg for btpdbs using LOGBUFSZ 20
db2
update db cfg for btpdbs using LOGFILSIZ 5120
改完后,应执行以下命令使其生效:
db2 stop
db2 start
❹ linux系统下 重启db2数据库
我用的CentOS系统,内核是Linux。 进入图形界面后,在桌面上右键点击“创建新终端”
1.在命令行界面中用如下语句切换到db2inst1账户中:
su - db2inst1
注意,命令要小写,中间的减号是半角的。其中db2inst1账户(同时也是实例、进程)是在安装DB2过程中创建的一个默认账户,相当于Windows中的那个DB2实例,要想执行各种db2的命令,需要在这个账户下操作;
2.在该账户下,可以打开控制中心,也可以进入到命令行处理器。进入命令行处理器的方法很简单,直接用db2命令,然后回车即可;
3.打开控制中心稍微有点麻烦,需要在桌面上另外打开一个命令行窗口,在其中输入:
xhost local:db2
然后在db2inst1账户所在的窗口中,输入命令:
db2cc &
就可以打开控制中心。
4.现在可以查看当前实例
db2ilist
如果需要创建表,则需要打开数据库管理服务,输入命令:
su - db2inst1
db2start //启动db2工作实例
db2stop //停止db2实例
db2set -all //查看db2所有注册表变量
在变量列表中有一个db2管理用户:DB2ADMINSERVER=XXXXX
只有切换到管理用户才可以创建表 su - XXXXX
然后,输入命令: db2admin start 启动管理实例
说明:
在Linux环境下,一个用户对应一个实例,创建数据库必须在实例下创建,因此切换到用户即可切换到实例。命令如下:
su - db2inst1
db2 get instance
❺ 如何启动db2实例
运行db2start命令就可以启动db2实例。
如果你的机器上有多个DB2的实例,可以通过环境变量DB2INSTANCE指定当前需要操作的实例。(如实例名是
DB2)
=>
set
DB2INSTANCE=DB2
=>
db2start
可以通过命令db2ilist
显示所有的DB2实例。
C:\SQLLIB95\BIN>db2ilist
DB2_02
❻ linux 怎么启动db2
在 Linux 上启动 DB2 方法:
以下过程描述了如何在 Linux® 上启动 DB2® 控制中心。
要启动 DB2 控制中心,请执行以下步骤:
(1) 作为 root 用户登录。
(2) 在命令行上,运行以下命令:xhost +localhost。
(3) 运行以下命令:su - ctginst1。
(4) 运行以下命令:db2cc。
❼ 如何在DB2命令窗口执行sql脚本
DB2 命令行中执行sql脚本如下:
db2 => connect to dbName user xxx using password
db2 => sql语句
如果要执行一个sql脚本文件:
db2 => quit
c:\> db2 -tvf sql文件名
db2 -td@ -f filename
@是语句结束符。
E:\>db2 ? options
db2 [option ...] [db2-command | sql-statement |
[? [phrase | message | sqlstate | class-code]]]
option:-a、-c、-e{c|s}、-finfile、-lhistfile、-n、-o、-p、-rreport、-s、-t、
-td;、-v、-w、-x 和 -zoutputfile。
选项 描述 缺省设置
------ ---------------------------------------- ---------------
-a 显示 SQLCA OFF
-c 自动落实 ON
-e 显示 SQLCODE/SQLSTATE OFF
-f 读取输入文件 OFF
-l 将命令记录到历史文件中 OFF
-n 除去换行字符 OFF
-o 显示输出 ON
-p 显示 db2 交互式提示符 ON
-r 将输出报告保存到文件 OFF
-s 在命令出错时停止执行 OFF
-t 设置语句终止字符 OFF
-v 回送当前命令 OFF
-w 显示 FETCH/SELECT 警告消息 ON
-x 不打印列标题 OFF
-z 将所有输出保存到输出文件 OFF
注意:
使用 DB2OPTIONS 环境变量定制选项缺省值。
紧跟选项字母后的减号(-)使该选项关闭。
使用 UPDATE COMMAND OPTIONS 更改选项设置(以交互式或
文件输入方式)。
只能提供nt环境下编写脚本的例子给你以供参考:
脚本样例:
db2 connect to yourdb user yourname using yourpassword
db2 insert into newuser(username,password,email) values('Amy','1234','[email protected]')
db2 insert into newuser(username,password,email) values('Judy','1234','[email protected]')
db2 commit
db2 disconnect yourdb
运行脚本: 运行db2cmd X:\XXX.bat
以下摘自本论坛的FAQ可参考:
"
在命令窗口中运行DB2脚本,可用 db2 -svtf 脚本文件名 来实现。
例如,脚本文件名为sample.sql,运行:db2 -svtf sample.sql
参数中:
s 代表遇到错误时中止运行脚本
v 代表输出结果到屏幕
t 指以;号作为每行的分隔符
f 指后面需跟脚本文件名 "---此摘录版权归斑竹非本人所有
具体在AS400如何编写脚本非常遗憾.
db2 -x select SERIALNO from tabname where clause
C:>db2 attach to db2164 user ccp
输入 ccp 的当前密码:
实例连接信息
实例服务器 = DB2/NT 8.2.0
授权标识 = CCP
本地实例别名 = DB2164
C:>db2 connect to dw164 user ccp
输入 ccp 的当前密码:
数据库连接信息
数据库服务器 = DB2/NT 8.2.0
SQL 授权标识 = CCP
本地数据库别名 = DW164
C:>db2 select * from CCP_STS1 fetch first 2 rows only with ur
CUST_ID NOW_PRED_S LOAD_TIME
-------------------- -------------------- --------------------------
3094736. ZFS 2008-05-07-10.02.00.453000
3145886. ZFS 2008-05-07-10.02.00.453000
2 条记录已选择。
C:>db2 list command options
命令行处理器选项设置
后端进程等待时间(秒) (DB2BQTIME) = 1
连接至后端的重试次数 (DB2BQTRY) = 60
请求队列等待时间(秒) (DB2RQTIME) = 5
输入队列等待时间(秒) (DB2IQTIME) = 5
命令选项 (DB2OPTIONS) = +m
选项 描述 当前设置
------ ---------------------------------------- ---------------
-a 显示 SQLCA OFF
-c 自动落实 ON
-d 检索并显示 XML 声明 OFF
-e 显示 SQLCODE/SQLSTATE OFF
-f 读取输入文件 OFF
-i 显示 XML 数据并带有缩进 OFF
-l 将命令记录到历史记录文件中 OFF
-m 显示受影响的行数 OFF
-n 除去换行字符 OFF
-o 显示输出 ON
-p 显示交互式输入提示符 ON
-q 保留空格和换行符 OFF
-r 将输出保存到报告文件 OFF
-s 在命令出错时停止执行 OFF
-t 设置语句终止字符 OFF
-v 回传当前命令 OFF
-w 显示 FETCH/SELECT 警告消息 ON
-x 不打印列标题 OFF
-z 将所有输出保存到输出文件 OFF
C:>db2set DB2OPTIONS=-x
C:>db2 select * from CCP_STS1 fetch first 2 rows only with ur
4654908. ZFS 2008-05-07-10.02.00.453000
3716687. ZFS 2008-05-07-10.02.00.453000
❽ db2常用命令
操作数据库命令
1、 启动数据库实例
#db2start
2、 停止数据库实例
#db2stop
如果你不能停止数据库由于激活的连接,在运行db2stop前执行db2 force application all就可以了 /db2stop force
3、 创建数据库
#db2 create db [dbname]
4、 连接到数据库
#db2 connect to [dbname] user[username] using [password]
5、 断开数据库连接
#db2 connect reset
操作数据表命令
1、 列出所有用户表
#db2 list tables
2、列出所有系统表
#db2 list tables for system
3、列出所有表
#db2 list tables for all
4、 列出系统表
#db2 list tables for system
5、列出用户表
#db2 list tables for user
6、 列出特定用户表
#db2 list tables for schema[user]
❾ DB2未初始化命令行环境 怎么使用命令行运行db2
根据你的截图,可以看出你装的是db2客户机,这样的话,你使用create database建库语句不可能会成功(你的错误提示:SQL2014N,数据库连接不存在),因为你没有连接服务器端,你本机也没有装db2服务器端。 解决方法: 安装db2服务器端,一般是企业级安装,安装后也就800M大小不到,一般pc机都行(默认浏览器为IE,要不会报错),安装完成后: a、windows点击运行,命令行输入db2cmd(初始化db2语言环境) b、进入实例用户,可以键入db2,进入db2命令行,然后create database建立数据库,建立好数据库后就可以操作数据库了