DB2命令参数选项
Db2 list command options 可以查看
-a 显示 SQLCA OFF
-c 自动落实 ON
-e 显 示 SQLCODE/SQLSTATE OFF
-f 读 取输入文件 OFF
-l 将命 令记录到历史文件中 OFF
-n 除去 换行字符 OFF
-o 显示 输出 ON
-p 显示 交互式输入提示 ON
-r 将输 出保存到报告文件 OFF
-s 在命 令出错时停止执行 OFF
-t 设置 语句终止字符 OFF
-v 回送 当前命令 OFF
-w 显示 FETCH/SELECT 警告信息 ON
-
Db2 list command options 可以查看
-a 显示 SQLCA OFF
-c 自动落实 ON
-e 显 示 SQLCODE/SQLSTATE OFF
-f 读 取输入文件 OFF
-l 将命 令记录到历史文件中 OFF
-n 除去 换行字符 OFF
-o 显示 输出 ON
-p 显示 交互式输入提示 ON
-r 将输 出保存到报告文件 OFF
-s 在命 令出错时停止执行 OFF
-t 设置 语句终止字符 OFF
-v 回送 当前命令 OFF
-w 显示 FETCH/SELECT 警告信息 ON
-
x 不打 印列标题 OFF
-z 将所 有输出保存到输出文件 OFF
这 些选项的具体功能及其缺省设置为:
.a 显示 SQLCA 的数据,缺省为 OFF。
.c 是 否自动落实 SQL 命令,缺省为 ON。
.e {c|s} 显示 SQLCODE 或 SQLSTATE, 缺省为 OFF。
.f 文件名将命令的输 入从标准输入指定到某一文件,缺省为 OFF。
注:命令“db2 < 文件名”与“db2 -f 文 件名”作用相同。
.l 文件名将命令记录到 历史文件中,缺省为 OFF。
.n 除去换行字符,缺省为 OFF。
.o 将输 出数据及信息送到标准输出,缺省为 ON。
.p 在交互方式下显示命令行处理器的提示信息,缺省为 ON。
.r 将 输出保存到指定文件中,缺省为 OFF。
.s 执行批处理文件中或交互方式下的命令出错时即停止执行操作,缺省为 OFF。
.
-z 将所 有输出保存到输出文件 OFF
这 些选项的具体功能及其缺省设置为:
.a 显示 SQLCA 的数据,缺省为 OFF。
.c 是 否自动落实 SQL 命令,缺省为 ON。
.e {c|s} 显示 SQLCODE 或 SQLSTATE, 缺省为 OFF。
.f 文件名将命令的输 入从标准输入指定到某一文件,缺省为 OFF。
注:命令“db2 < 文件名”与“db2 -f 文 件名”作用相同。
.l 文件名将命令记录到 历史文件中,缺省为 OFF。
.n 除去换行字符,缺省为 OFF。
.o 将输 出数据及信息送到标准输出,缺省为 ON。
.p 在交互方式下显示命令行处理器的提示信息,缺省为 ON。
.r 将 输出保存到指定文件中,缺省为 OFF。
.s 执行批处理文件中或交互方式下的命令出错时即停止执行操作,缺省为 OFF。
.
t 设 置语句终止字符,缺省为 OFF。
.v 回送当前命令到标准输出,缺省为 OFF。
.w 显示 FETCH 或 SELECT 警 告信息,缺省为 ON。
.x 不打印列标题,缺省为 OFF。
.z 文件 名将所有输出保存到输出文件,缺省为 OFF。
SQLSTATE含义
在db2命令行方式下输入:? 20012(SQLSTATE值)
可以获取sql错误含义
import和export的用法
IMPORT FROM CO_ACCEPTANCEDRAFT.del OF DEL INSERT INTO cmmcorc.CO_ACCEPTANCEDRAFT;
EXPORT TO CO_ACCEPTANCEDRAFT.del OF DEL SELECT * FROM cmmcorc.CO_ACCEPTANCEDRAFT;
如果是Sybase导出的文本,并且用TAB分隔符的文档,那么可以采用
.v 回送当前命令到标准输出,缺省为 OFF。
.w 显示 FETCH 或 SELECT 警 告信息,缺省为 ON。
.x 不打印列标题,缺省为 OFF。
.z 文件 名将所有输出保存到输出文件,缺省为 OFF。
SQLSTATE含义
在db2命令行方式下输入:? 20012(SQLSTATE值)
可以获取sql错误含义
import和export的用法
IMPORT FROM CO_ACCEPTANCEDRAFT.del OF DEL INSERT INTO cmmcorc.CO_ACCEPTANCEDRAFT;
EXPORT TO CO_ACCEPTANCEDRAFT.del OF DEL SELECT * FROM cmmcorc.CO_ACCEPTANCEDRAFT;
如果是Sybase导出的文本,并且用TAB分隔符的文档,那么可以采用
Db2 import of del modified by COLDEL0x09 insert into tablename;
其中COLDEL是关键字,0x09是16进制,表示tab符号
Load用法
其中COLDEL是关键字,0x09是16进制,表示tab符号
Load用法
load from tempfile of del modified by delprioritychar replace into TABLENAME nonrecoverable;
说明:
在不相关的数据表export数据时,可以采取并发的形式,以提高效率;
TABLENAME指 待清理table的名称;
modified by delprioritychar防止数据库记录中存在换行符,导致数据无 法装入的情况;
replace into对现数据库中的内容进行替换,即将现行的数据记录清理,替换为数据文件内容;
nonrecoverable无日志方式装入;
在不相关的数据表export数据时,可以采取并发的形式,以提高效率;
TABLENAME指 待清理table的名称;
modified by delprioritychar防止数据库记录中存在换行符,导致数据无 法装入的情况;
replace into对现数据库中的内容进行替换,即将现行的数据记录清理,替换为数据文件内容;
nonrecoverable无日志方式装入;
查询出用户表
SELECT * FROM SYSIBM.SYSTABLES WHERE CREATOR='USER'
如 何知道当前DB2的版本?
select * from sysibm.sysversions
如何知道TABLESPACE的状况?
select * from sysibm.SYSTABLESPACES
如 何知道INDEX的状况?
select * from sysibm.sysindexes where tbname=’XXXX’
or
describe indexes for table table_name show detail
测试SQL的执行性能
db2batch -d DB_NAME -f select.sql - -o p3
如 何知道当前DB2的版本?
select * from sysibm.sysversions
如何知道TABLESPACE的状况?
select * from sysibm.SYSTABLESPACES
如 何知道INDEX的状况?
select * from sysibm.sysindexes where tbname=’XXXX’
or
describe indexes for table table_name show detail
测试SQL的执行性能
db2batch -d DB_NAME -f select.sql - -o p3
select.sql是select语句写在文件中
如何获取连接的进程
List applications
如何获取连接的进程
List applications
删除当前正 在使用的application:
db2 "force application (Id1,Id2,Id3)"
Id1,Id2,Id3 是List显示的应用号;
Id1,Id2,Id3 是List显示的应用号;
删除所有的 进程 db2 force application all
查看当前应用号的执行状态:db2 get snapshot for application agentid 299 |grep Row
如何 修改缓冲池
db2 alter bufferpool ibmdefaultbp size 10240
如何 知道表的字段的状况?
select * from sysibm.syscolumns where tbname=’XXXX’
如何 知道DB2的数据类型?
select name,* from sysibm.sysdatatypes
如何知道BUFFERPOOLS状况?
select * from sysibm.sysbufferpools
如 何查看表的结构?
describe table table_name
or
describe select * from schema.table_name
如何快速清除一个大表?
alter table table_name activate not logged initally with empty table
select * from sysibm.syscolumns where tbname=’XXXX’
如何 知道DB2的数据类型?
select name,* from sysibm.sysdatatypes
如何知道BUFFERPOOLS状况?
select * from sysibm.sysbufferpools
如 何查看表的结构?
describe table table_name
or
describe select * from schema.table_name
如何快速清除一个大表?
alter table table_name activate not logged initally with empty table
or
import from null_file of del replace into table_name
如何查看数据库的包?
select * from syscat.packages
如 何查看数据库的存储过程?
select procname,text,* from syscat.procedures
Or
select procname,text from sysibm.sysprocedures
如 何查看数据库SAMPLE的配置文件的內容?
get database configuration for sample
or
get db cfg for sample
如何將数据库SAMPLE的参数设置为默认数值?
reset database configuration for sample
or
import from null_file of del replace into table_name
如何查看数据库的包?
select * from syscat.packages
如 何查看数据库的存储过程?
select procname,text,* from syscat.procedures
Or
select procname,text from sysibm.sysprocedures
如 何查看数据库SAMPLE的配置文件的內容?
get database configuration for sample
or
get db cfg for sample
如何將数据库SAMPLE的参数设置为默认数值?
reset database configuration for sample
or
reset db cfg for sample
如何修改数据库SAMPLE配置参数数值?
update database configuration for sample
using <parameter name> <new value>
or
update db cfg for sample using <parameter name> <new value>
如何重新啟動数据库?
Restart db db_name
如何激活数据库?
Activate db db_name
如何停止数据库?
Deactivate db db_name
如何重命名表?
Rename old_tablename to new_tablename
如何设置DB2环境变量
如何修改数据库SAMPLE配置参数数值?
update database configuration for sample
using <parameter name> <new value>
or
update db cfg for sample using <parameter name> <new value>
如何重新啟動数据库?
Restart db db_name
如何激活数据库?
Activate db db_name
如何停止数据库?
Deactivate db db_name
如何重命名表?
Rename old_tablename to new_tablename
如何设置DB2环境变量
Db2set命令,语法如下:
Db2set variant=value
如何除去quiesce状态
1. 连接到数据库
2. 用 list tablespaces 判断哪个tablespace处于quiesce状态和和取得对象(object)ID
3. 判断对象ID对应的表
a)用 db2 "select tabname from syscat.tables where tablid=对象ID" 得到表名
b)用 db2 list history 判断是那个表
4. 用 db2 quiesce tablespaces for table db2数据库sql语句表名 reset 去除quiesce状态
如何实施已删除表的恢复(Dropped Table Recovery)
1. 首先数据库要可以前滚恢复(数据库配置参数logretain或userexit打开)。
2. 对要实施Drop Table Recovery的表空间(限regular tablespace),执行:
alter tablespace 表空间名 dropped table recovery on
3. 用 list history dropped table all for 数据库名 得到删除表的tableid(例如 0000000000006d0000020003)和表结构的生成语句(DDL),记录tableid和该语句以便恢复。
Db2set variant=value
如何除去quiesce状态
1. 连接到数据库
2. 用 list tablespaces 判断哪个tablespace处于quiesce状态和和取得对象(object)ID
3. 判断对象ID对应的表
a)用 db2 "select tabname from syscat.tables where tablid=对象ID" 得到表名
b)用 db2 list history 判断是那个表
4. 用 db2 quiesce tablespaces for table db2数据库sql语句表名 reset 去除quiesce状态
如何实施已删除表的恢复(Dropped Table Recovery)
1. 首先数据库要可以前滚恢复(数据库配置参数logretain或userexit打开)。
2. 对要实施Drop Table Recovery的表空间(限regular tablespace),执行:
alter tablespace 表空间名 dropped table recovery on
3. 用 list history dropped table all for 数据库名 得到删除表的tableid(例如 0000000000006d0000020003)和表结构的生成语句(DDL),记录tableid和该语句以便恢复。
之后,用drop命令删除的表 中的数据可以在前滚恢复时导出。
4. 恢复数据库后,如果想恢复已删除的表,在前滚时加recover dropped table tableid to 目标目录 。 在该目录下被删除的表中的数据导出,例如导出至 ../NODE0000/data文件。利用上面提到表结构生成语句生成被删除了的表,然后用import命令将数据导入表中。
如何备份数据库
db2 "backup database sample tablespace (syscatspace, userspace1) online to /dev/rmt0 without prompting"or
db2 "backup database sample user db2admin using db2admin to c:\backup with 3 buffers buffer 1000 without prompting"
如 何生成所有对象的DDL
db2look -d DB_NAME -a -e -m -l -f -o filename.sql
如何恢复数据库
restore db db1 to /tstdb2/catalog into db newlogpath /tstdb2/db2log buffer 2048
replace existing redirect parallelism 16;
set tablespace containers for 1 using (path '/tstdb2/db2tmp');
4. 恢复数据库后,如果想恢复已删除的表,在前滚时加recover dropped table tableid to 目标目录 。 在该目录下被删除的表中的数据导出,例如导出至 ../NODE0000/data文件。利用上面提到表结构生成语句生成被删除了的表,然后用import命令将数据导入表中。
如何备份数据库
db2 "backup database sample tablespace (syscatspace, userspace1) online to /dev/rmt0 without prompting"or
db2 "backup database sample user db2admin using db2admin to c:\backup with 3 buffers buffer 1000 without prompting"
如 何生成所有对象的DDL
db2look -d DB_NAME -a -e -m -l -f -o filename.sql
如何恢复数据库
restore db db1 to /tstdb2/catalog into db newlogpath /tstdb2/db2log buffer 2048
replace existing redirect parallelism 16;
set tablespace containers for 1 using (path '/tstdb2/db2tmp');
set tablespace containers for 2 using
(device '/dev/rtstcontlv00' 2621440, device '/dev/rtstcontlv01' 2621440,
device '/dev/rtstcontlv02' 2621440, device '/dev/rtstcontlv03' 2621440 ) ;
restore db db1 continue;
恢复完成后,执行db2s命令,如果出错,再执行如下命令:
db2 rollforward db db to end of logs and complete
(device '/dev/rtstcontlv00' 2621440, device '/dev/rtstcontlv01' 2621440,
device '/dev/rtstcontlv02' 2621440, device '/dev/rtstcontlv03' 2621440 ) ;
restore db db1 continue;
恢复完成后,执行db2s命令,如果出错,再执行如下命令:
db2 rollforward db db to end of logs and complete
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论