db2数据库迁移从一个用户迁移到另一个用户

关于数据库迁移,如果操作系统相同,例如从&Windows&系统迁移到&Windows&系统,或者从&AIX&系统迁移到&AIX&系统都比较好处理,一般使用&BACKUP&和&RESTORE&命令就可以进行。当然,有些情况下需要注意表空间重定向的问题。
&&&&&&&&那么,如果数据库迁移涉及到的操作系统不相同该怎么办呢?BACKUP&和&RESTORE&这个方法就行不通了。DB2&UDB&提供了两个非常实用的工具,一个是数据迁移工具&db2move,另一个是数据字典获取工具&db2look。
&&&&&&&&目前,我进行了一次从&Windows&2003&到&Linux&的&DB2&数据库迁移,以下是详细的操作步骤和部分脚本。希望本文能为大家在不同操作系统之间迁移&DB2&数据库的提供一些指导和帮助。
&&&&&&&&步骤一:登录&Windows&,使用&db2move&命令将源数据库(htdctr)数据导出至指定的文件夹&G:\db2move\htdctr&下。
&&&&&&&&命令清单&-&1:
&&&&&&&&C:\Documents&and&Settings\Administrator&cd&/d&G:\db2move\htdctr
&&&&&&&&G:\db2move\htdctr&db2move&htdctr&export&-sn&db2admin&-u&db2admin&-p&*****
&&&&&&&&*****&&DB2MOVE&&*****
&&&&&&&&Action:&&&&&&EXPORT
&&&&&&&&Start&time:&&Fri&Mar&02&10:58:05&2007
&&&&&&&&All&schema&names&matching:&&DB2ADMIN;
&&&&&&&&Connecting&to&database&HTDCTR&...&successful!&&Server:&DB2&Common&Server&V8.2.4
&&&&&&&&EXPORT:&&&&&&3&rows&from&table&&DB2ADMIN&.&APP_REG&
&&&&&&&&EXPORT:&&&&&&0&rows&from&table&&DB2ADMIN&.&APP_TEXT&
&&&&&&&&EXPORT:&&&&&45&rows&from&table&&DB2ADMIN&.&APP_TOOL_FUNC&
&&&&&&&&EXPORT:&&&&263&rows&from&table&&DB2ADMIN&.&DC_DMDL_ACCT_EX_GRAN&
&&&&&&&&EXPORT:&&&&208&rows&from&table&&DB2ADMIN&.&DC_DMDL_DIM&
&&&&&&&&EXPORT:&&&&225&rows&from&table&&DB2ADMIN&.&DC_DMDL_GRAN&
&&&&&&&&……&……
&&&&&&&&……&……
&&&&&&&&Disconnecting&from&database&...&successful!
&&&&&&&&End&time:&&Fri&Mar&02&10:58:09&2007
&&&&&&&&步骤二:登录&Windows&,使用&db2look&命令将数据库&DDL&导出至指定的文件夹&G:\db2look\htdctr&下。
&&&&&&&&命令清单&-&2:
&&&&&&&&C:\Documents&and&Settings\Administrator&cd&/d&G:\db2look\htdctr
&&&&&&&&G:\db2look\htdctr&db2look&-d&htdctr&-e&-a&-o&db2look_htdctr.sql&&&&&&&&--&为所有创建程序生成统计信息
&&&&&&&&--&创建表的&DDL
&&&&&&&&--&输出被发送到文件:&db2look_htdc.sql
&&&&&&&&警告:需要通过将&REMOTE_AUTHID&添加至&CREATE&USER&MAPPING
&&&&&&&&语句修改&db2look&输出脚本
&&&&&&&&步骤三:登录&Windows&,使用&ftp&命令登录&Linux&服务器(IP:172.168.16.105),将&DDL&脚本&G:\db2look\htdctr\db2look_htdctr.sql&上传至&Linux&服务器的指定路径下:home/db2admin/dbback/db2look/htdctr,注意,上传&DDL&脚本的时候必须使用&ASCII&(asc)模式进行数据传输,否则后面执行该脚本会报错:DB21007E&读取该命令时已到达文件末尾。
&&&&&&&&命令清单&-&3:
&&&&&&&&C:\Documents&and&Settings\Administrator&cd&/d&G:\db2look\htdctr
&&&&&&&&G:\db2look\htdctr&ftp&172.168.16.105
&&&&&&&&Connected&to&172.168.16.105.
&&&&&&&&220&localhost.localdomain&FTP&server&(Version&5.60)&ready.
&&&&&&&&User&(172.168.16.105:(none)):&db2admin
&&&&&&&&331&Password&required&for&db2admin.
&&&&&&&&Password:
&&&&&&&&230&User&db2admin&logged&in.
&&&&&&&&ftp&&cd&dbback/db2look/htdctr
&&&&&&&&250&CWD&command&successful.
&&&&&&&&ftp&&prompt
&&&&&&&&Interactive&mode&Off&.
&&&&&&&&ftp&&asc
&&&&&&&&200&Type&set&to&A.
&&&&&&&&ftp&&put&db2look_htdctr.sql
&&&&&&&&200&PORT&command&successful.
&&&&&&&&150&Opening&ASCII&mode&data&connection&for&db2look_htdctr.sql.
&&&&&&&&226&Transfer&complete.
&&&&&&&&ftp:&1798538&bytes&sent&in&0.16Seconds&11529.09Kbytes/sec.
&&&&&&&&ftp&&bye
&&&&&&&&221&Goodbye.
&&&&&&&&步骤四:登录&Windows&,使用&ftp&命令登录&Linux&服务器(IP:172.168.16.105),将&导出的数据文件&G:\db2move\htdctr\*&全部上传至&Linux&服务器的指定路径下:home/db2admin/dbback/db2move/htdctr,注意,上传&db2move.lst&脚本的时候必须使用&ASCII&(asc)模式进行数据传输,否则后面执行该脚本会报错:DB21007E&读取该命令时已到达文件末尾。上传&*.ixf、*.001&和&*.msg&文件的时候必须使用二进制模式(bin)进行数据传输。
&&&&&&&&命令清单&-&4:
&&&&&&&&C:\Documents&and&Settings\Administrator&cd&/d&G:\db2move\htdctr
&&&&&&&&G:\db2move\htdctr&ftp&172.168.16.105
&&&&&&&&Connected&to&172.168.16.105.
&&&&&&&&220&localhost.localdomain&FTP&server&(Version&5.60)&ready.
&&&&&&&&User&(172.168.16.105:(none)):&db2admin
&&&&&&&&331&Password&required&for&db2admin.
&&&&&&&&Password:
&&&&&&&&230&User&db2admin&logged&in.
&&&&&&&&ftp&&cd&dbback/db2move/htdctr
&&&&&&&&250&CWD&command&successful.
&&&&&&&&ftp&&prompt
&&&&&&&&Interactive&mode&Off&.
&&&&&&&&ftp&&asc
&&&&&&&&200&Type&set&to&A.
&&&&&&&&ftp&&put&db2move.lst
&&&&&&&&200&PORT&command&successful.
&&&&&&&&150&Opening&ASCII&mode&data&connection&for&db2move.lst.
&&&&&&&&226&Transfer&complete.
&&&&&&&&ftp:&5271&bytes&sent&in&0.00Seconds&Kbytes/sec.
&&&&&&&&ftp&&bin
&&&&&&&&200&Type&set&to&I.
&&&&&&&&ftp&&mput&*.ixf
&&&&&&&&ftp:&49814&bytes&sent&in&0.00Seconds&Kbytes/sec.
&&&&&&&&200&PORT&command&successful.
&&&&&&&&150&Opening&BINARY&mode&data&connection&for&tab98.ixf.
&&&&&&&&226&Transfer&complete.
&&&&&&&&……&……
&&&&&&&&……&……
&&&&&&&&ftp&&mput&*.msg
&&&&&&&&ftp:&110&bytes&sent&in&0.00Seconds&Kbytes/sec.
&&&&&&&&200&PORT&command&successful.
&&&&&&&&150&Opening&BINARY&mode&data&connection&for&tab97.msg.
&&&&&&&&226&Transfer&complete.
&&&&&&&&……&……
&&&&&&&&……&……
&&&&&&&&ftp&&mput&*.001
&&&&&&&&150&Opening&BINARY&mode&data&connection&for&tab19a.001.
&&&&&&&&226&Transfer&complete.
&&&&&&&&200&PORT&command&successful.
&&&&&&&&150&Opening&BINARY&mode&data&connection&for&tab1a.001.
&&&&&&&&226&Transfer&complete.
&&&&&&&&ftp:&53382&bytes&sent&in&0.00Seconds&Kbytes/sec.
&&&&&&&&200&PORT&command&successful.
&&&&&&&&……&……
&&&&&&&&……&……
&&&&&&&&ftp&&bye
&&&&&&&&221&Goodbye.
&&&&&&&&步骤五:使用&telnet&命令登录&Linux&服务器,切换至指定路径:home/db2admin/dbback/db2look/htdctr,创建数据库&htdctr,完毕之后执行&DDL&脚本,创建数据库对象
&&&&&&&&&&&&&&&
&&&&&&&&命令清单&-&5:
&&&&&&&&telnet&172.168.16.105
&&&&&&&&Fedora&Core&release&3&(Heidelberg)
&&&&&&&&Kernel&2.6.9-1.667smp&on&an&x86_64
&&&&&&&&login:&db2admin
&&&&&&&&Password:
&&&&&&&&Last&login:&Fri&Mar&&2&11:21:53&from&172.168.16.32
&&&&&&&&[db2admin@localhost&~]$&ls
&&&&&&&&db2admin&&dbback&&Desktop&&sqllib
&&&&&&&&[db2admin@localhost&~]$&cd&dbback/db2look/htdctr
&&&&&&&&[db2admin@localhost&htdctr]$&pwd
&&&&&&&&/home/db2admin/dbback/db2look/htdctr
&&&&&&&&[db2admin@localhost&htdctr]$&ls
&&&&&&&&db2look_htdctr.sql
&&&&&&&&[db2admin@localhost&htdctr]$&db2&CREATE&db&htdctr&USING&CODESET&GBK&TERRITORY&cn
&&&&&&&&DB20000I&&CREATE&DATABASE&命令成功完成。
&&&&&&&&[db2admin@localhost&htdctr]$&ls
&&&&&&&&db2look_htdc.sql
&&&&&&&&[db2admin@localhost&htdctr]$&db2&-tvf&db2look_htdctr.sql
&&&&&&&&……&……
&&&&&&&&……&……
&&&&&&&&步骤六:&在&Linux&服务器上使用&load&命令装载数据
&&&&&&&&命令清单&-&6:
&&&&&&&&……&……
&&&&&&&&……&……
&&&&&&&&[db2admin@localhost&dbback]$&pwd
&&&&&&&&/home/db2admin/dbback/db2move/htdctr/
&&&&&&&&[db2admin@localhost&htdctr]$&db2move&htdctr&load
&&&&&&&&*****&DB2MOVE&*****
&&&&&&&&Action:&LOAD
&&&&&&&&Start&time:&Fri&Mar&&2&14:12:54&2007
&&&&&&&&Connecting&to&database&HTDCTR&...&successful!&Server:&DB2&Common&Server&V8.2
&&&&&&&&Binding&package&automatically&...
&&&&&&&&Bind&file:&D:\\SQLLIB\\BND\\DB2MOVE.BND
&&&&&&&&Bind&was&successful!
&&&&&&&&*&LOAD:&&table&&DB2ADMIN&.&XMDL_SUBJECT&
&&&&&&&&&&-Rows&read:&&&&&&&&&&5
&&&&&&&&&&-Loaded:&&&&&&&&&&&&&5
&&&&&&&&&&-Rejected:&&&&&&&&&&&0
&&&&&&&&&&-Deleted:&&&&&&&&&&&&0
&&&&&&&&&&-Committed:&&&&&&&&&&5
&&&&&&&&……&……
&&&&&&&&……&……
&&&&&&&&Disconnecting&from&database&...&successful!
&&&&&&&&End&time:&&Fri&Mar&&2&14:13:48&2007
&&&&&&&&至此,数据库迁移顺利完成。
&&&&&&&&附录1:db2move&命令
&&&&&&&&**&DB2MOVE
&&&&&&&&**
&&&&&&&&**&Error:&Invalid&number&of&parameters!
&&&&&&&&**
&&&&&&&&**&Usage:&&db2move&dbname&action&[options]&
&&&&&&&&**
&&&&&&&&**&-&Action:&&must&be&EXPORT,&IMPORT,&or&LOAD.
&&&&&&&&**&-&Options:&If&not&specified,&defaults&will&be&used.
&&&&&&&&**
&&&&&&&&**&&&&&&Option&&&&&&&&&&&&&Default&&&&&&&&&&&&&Notes
&&&&&&&&**&==========================================================================
&&&&&&&&**&-tc&&table-creators&&&&all&creators&&&&&&&EXPORT.&&Wildcard&(*)&allowed.
&&&&&&&&**&-tn&&table-names&&&&&&&all&user&tables&&&&EXPORT.&&Wildcard&(*)&allowed.
&&&&&&&&**&-sn&&schema-names&&&&&&all&schemas&&&&&&&&EXPORT.&&Wildcard&(*)&allowed.&UDB&sources&only.
&&&&&&&&**&-ts&&tblspace-names&&&&all&tablespace&&&&&EXPORT.&&Wildcard&(*)&allowed.
&&&&&&&&**&-tf&&tables&from&file&&none&&&&&&&&&&&&&&&EXPORT&only.
&&&&&&&&**&-io&&import-option&&&&&REPLACE_CREATE&&&&&IMPORT&only.
&&&&&&&&**&-lo&&load-option&&&&&&&INSERT&&&&&&&&&&&&&LOAD&only.
&&&&&&&&**&-l&&&lobpaths&&&&&&&&&&current&dir&&&&&&&&separated&by&commas.&NO&BLANKS.
&&&&&&&&**&-u&&&userid&&&&&&&&&&&&logged&on&userid
&&&&&&&&**&-p&&&password&&&&&&&&&&logged&on&password
&&&&&&&&**&-aw&&allow-warnings&&&&false&&&&&&&&&&&&&&include&tables&that&encounter
&&&&&&&&**&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&warnings&during&export.
&&&&&&&&附录2:db2look&命令
&&&&&&&&db2look&版本&8.2
&&&&&&&&db2look:生成&DDL&以便重新创建在数据库中定义的对象
&&&&&&&&语法:&db2look&-d&DBname&[-e]&[-u&Creator]&[-z&Schema]&[-t&Tname1&Tname2...TnameN]&[-tw&Tname]&[-h]&[-o&Fname]&[-a]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&[-m]&[-c]&[-r]&[-l]&[-x]&[-xd]&[-f]&[-fd]&[-td&x]&[-noview]&[-i&userID]&[-w&password]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&[-v&Vname1&Vname2&...&VnameN]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&[-wrapper&WrapperName]&[-server&ServerName]&[-nofed]
&&&&&&&&&&&&&&&&db2look&-d&DBname&[-u&Creator]&[-s]&[-g]&[-a]&[-t&Tname1&Tname2...TnameN]
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&[-p]&[-o&Fname]&[-i&userID]&[-w&password]
&&&&&&&&&&&&&&&&db2look&[-h]
&&&&&&&&&&&&&&&&-d:&数据库名称:这必须指定
&&&&&&&&&&&&&&&&-e:&抽取复制数据库所需要的&DDL&文件
&&&&&&&&&&&&&&&&&&&&此选项将生成包含&DDL&语句的脚本
&&&&&&&&&&&&&&&&&&&&可以对另一个数据库运行此脚本以便重新创建数据库对象
&&&&&&&&&&&&&&&&&&&&此选项可以和&-m&选项一起使用
&&&&&&&&&&&&&&&&-u:&创建程序标识:若&-u&和&-a&都未指定,则将使用&$USER
&&&&&&&&&&&&&&&&&&&&如果指定了&-a&选项,则将忽略&-u&选项
&&&&&&&&&&&&&&&&-z:&模式名:如果同时指定了&-z&和&-a,则将忽略&-z
&&&&&&&&&&&&&&&&&&&&联合部分的模式名被忽略
&&&&&&&&&&&&&&&&-t:&生成指定表的统计信息
&&&&&&&&&&&&&&&&&&&&可以指定的表的数目最多为&30
&&&&&&&&&&&&&&&-tw:&为名称与表名的模式条件(通配符)相匹配的表生成&DDL
&&&&&&&&&&&&&&&&&&&&当指定了&-tw&选项时,-t&选项会被忽略
&&&&&&&&&&&&&&&&-v:&只为视图生成&DDL,当指定了&-t&时将忽略此选项
&&&&&&&&&&&&&&&&-h:&更详细的帮助消息
&&&&&&&&&&&&&&&&-o:&将输出重定向到给定的文件名
&&&&&&&&&&&&&&&&&&&&如果未指定&-o&选项,则输出将转到&stdout
&&&&&&&&&&&&&&&&-a:&为所有创建程序生成统计信息
&&&&&&&&&&&&&&&&&&&&如果指定了此选项,则将忽略&-u&选项
&&&&&&&&&&&&&&&&-m:&在模拟方式下运行&db2look&实用程序
&&&&&&&&&&&&&&&&&&&&此选项将生成包含&SQL&UPDATE&语句的脚本
&&&&&&&&&&&&&&&&&&&&这些&SQL&UPDATE&语句捕获所有统计信息
&&&&&&&&&&&&&&&&&&&&可以对另一个数据库运行此脚本以便复制初始的那一个
&&&&&&&&&&&&&&&&&&&&当指定了&-m&选项时,将忽略&-p、-g&和&-s&选项
&&&&&&&&&&&&&&&&-c:&不要生成模拟的&COMMIT&语句
&&&&&&&&&&&&&&&&&&&&除非指定了&-m&或&-e,否则将忽略此选项
&&&&&&&&&&&&&&&&&&&&将不生成&CONNECT&和&CONNECT&RESET&语句
&&&&&&&&&&&&&&&&&&&&省略了&COMMIT。在执行脚本之后,需要显式地进行落实。
&&&&&&&&&&&&&&&&-r:&不要生成模拟的&RUNSTATS&语句
&&&&&&&&&&&&&&&&&&&&缺省值为&RUNSTATS。仅当指定了&-m&时,此选项才有效
&&&&&&&&&&&&&&&&-l:&生成数据库布局:数据库分区组、缓冲池和表空间。
&&&&&&&&&&&&&&&&-x:&如果指定了此选项,则&db2look&实用程序将生成授权&DDL
&&&&&&&&&&&&&&&&&&&&对于现有已授权特权,不包括对象的原始定义器
&&&&&&&&&&&&&&&-xd:&如果指定了此选项,则&db2look&实用程序将生成授权&DDL
&&&&&&&&&&&&&&&&&&&&对于现有已授权特权,包括对象的原始定义器
&&&&&&&&&&&&&&&&-f:&抽取配置参数和环境变量
&&&&&&&&&&&&&&&&&&&&如果指定此选项,将忽略&-wrapper&和&-server&选项
&&&&&&&&&&&&&&&-fd:&为&opt_buffpage&和&opt_sortheap&以及其它配置和环境参数生成&db2fopt&语句。
&&&&&&&&&&&&&&&-td:&将&x&指定为语句定界符(缺省定界符为分号(;))
&&&&&&&&&&&&&&&&&&&&应该与&-e&选项一起使用(如果触发器或者&SQL&例程存在的话)
&&&&&&&&&&&&&&&&-p:&使用明文格式
&&&&&&&&&&&&&&&&-s:&生成&postscript&文件
&&&&&&&&&&&&&&&&&&&&此选项将为您生成&postscript&文件
&&&&&&&&&&&&&&&&&&&&当设置了此选项时,将除去所有&latex&和&tmp&ps&文件
&&&&&&&&&&&&&&&&&&&&所需的(非&IBM)软件:LaTeX&和&dvips
&&&&&&&&&&&&&&&&&&&&注意:文件&psfig.tex&必须在&LaTeX&输入路径中
&&&&&&&&&&&&&&&&-g:&使用图形来显示索引的页访存对
&&&&&&&&&&&&&&&&&&&&必须安装&Gnuplot,并且&&必须在您的&LaTeX&输入路径中
&&&&&&&&&&&&&&&&&&&&还将随&LaTeX&文件一起生成&&文件
&&&&&&&&&&&&&&&&-i:&登录到数据库驻留的服务器时所使用的用户标识
&&&&&&&&&&&&&&&&-w:&登录到数据库驻留的服务器时所使用的密码
&&&&&&&&&&&-noview:&不要生成&CREATE&VIEW&ddl&语句
&&&&&&&&&&-wrapper:&为适用于此包装器的联合对象生成&DDL
&&&&&&&&&&&&&&&&&&&&生成的对象可能包含下列各项:
&&&&&&&&&&&&&&&&&&&&包装器、服务器、用户映射、昵称、类型映射、
&&&&&&&&&&&&&&&&&&&&函数模板、函数映射和索引规范
&&&&&&&&&&&-server:&为适用于此服务器的联合对象生成&DDL
&&&&&&&&&&&&&&&&&&&&生成的对象可能包含下列各项:
&&&&&&&&&&&&&&&&&&&&包装器、服务器、用户映射、昵称、类型映射、
&&&&&&&&&&&&&&&&&&&&函数模板、函数映射和索引规范
&&&&&&&&&&&&-nofed:&不要生成&Federated&DDL
&&&&&&&&&&&&&&&&&&&&如果指定此选项,将忽略&-wrapper&和&-server&选项
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:3464次
排名:千里之外
转载:13篇
(1)(6)(4)(6)(1)  1、DB2 连接: db2 connect
数据库实例名
user 用户名 using 密码
  2、db2level
  3、oslevel –r
  4、快照
  1)、数据库快照:db2 get snapshot for database on
数据库实例名
  2)、表快照:db2 get snapshot for tables on 数据库实例名
  3)、应用快照:db2 get snapshot for
all application
  4)、缓冲池快照:db2 get snapshot for bufferpools on
数据库实例名
at dbpartitionnum 3
  5)、打开和关闭快照:db2 update dbm cfg using monitorSwitch [ON |OFF]
  6)、数据库管理器快照:db2 get snapshot for database manager
  7)、表空间和缓冲池快照:
  db2 get snapshot for tablespaces on 数据库实例名
  db2 get snapshot for bufferpools on 数据库实例名
  附:缓冲池命中率,如下图所示:
  8)、锁快照:db2 get snapshot for locks on
数据库实例名
  9)、动态 SQL 快照:
  10)、使用 SQL 快照函数
  5、 查看所有节点情况
  db2_all " [&+1& ]db2 connect to sccrm user
db2inst1 using db2inst1;db2 get snapshot for all databases"
  6、查看所有数据库应用 
db2 list application [show detail]
  7、 获取某个应用的快照db2 get snapshot for locks for application agentid 进程号8 获取某个应用的详细情况db2 get snapshot for application agentid 进程号 [global]得到insert、select情况 、操作系统进程ID  Process ID of client application
  9 杀掉某个进程  force application(进程号)  force application all10 查看表空间使用情况db2_all tbsinfo -t -w 1 -d sccrm -u db2inst1 -p db2inst1db2 list tablespaces show detaildb2pb –tablespaces –db sccrm表空间计算规则:TOTAL_PGS*节点数*页大小/11 如何查看表的大小select tabname, a.fpages * b.pagesize/from syscat.tables as a, syscat.tablespaces as b where   
a.tbspaceid=b.tbspaceid   
and a.type='T'   
and a.tabname=‘TABNAME'  
and a.tbspace='TBS_RPT'fpages代表当前的数据页,查看前请先runstats一下
  12 如何压缩表1.alter table tabname
compress yes2.reorg table tabname resetdictionary3.runstats on
table schema.tabname
  在syscat.tables中的COMPRESSION字段 可以看出是否使用了压缩
N:没有设置任何压缩
R:仅仅设置了数据行压缩
PCTPAGESSAVED表示使用压缩节省空间页的百分比。(关闭开启)空值压缩 db2 alter table tablenam (de)activate value compress (关闭开启)系统默认压缩 db2 alter table tablenam (de)activate compress system default或者在定义的表格的时候:db2 create table tablenam value compress
  13、 建表CREATE TABLE TABNAME(           
COLUMN1  TYPE,           
TYPE,           
TYPE)  COMPRESS YES PARTITIONING KEY(分区键)IN表空间 INDEX IN 索引空间 NOT LOGGED INITIALLY ;Create table A like B in COMPRESS YES PARTITIONING KEY(分区键)IN表空间 INDEX IN 索引空间 NOT LOGGED INITIALLY ;  *必须指定分区键和表空间
  创建表
  CREATE TABLE BOOKS ( BOOKID INTEGER, BOOKNAME VARCHAR(100), ISBN CHAR(10) )
  使用like创建表CREATE TABLE MYBOOKS LIKE BOOKS
  制定表空间db2 create table T1 (c1 int ...) in TS1db2 create table T2 (c1 float ...) in TS1
  删除表drop table tab_name
  添加删除列db2 =& create table test (c1 int)DB20000I The SQL command completed successfully.db2 =& alter table test add c2 char(8)DB20000I The SQL command completed successfully.db2 =& alter table test drop c2  DB20000I The SQL command completed successfully.
  15、 清表  1.alter table tabname activate not logged initially with empty table  2. delete from tabname [where]  3. drop table tabname
*对于大数据量的表,不允许直接delete操作[或者必须加上where条件,把需要删除的数据量减少]db2 admin_move_table 在线迁移一个表至另一个表空间
db2 admin_move_table 在线迁移一个表至另一个表空间
v9 以及之后的版本支持调用sysproc过程在线不停机迁移数据库表从一个表空间移植到另一个表空间
--查看名为tab1的表 原先属于userspace1 表空间db2 select A.TBSPACEID,B.TBSPACE,A.TABLEID,A.TABNAME,A.TABSCHEMA from syscat.tables A,SYSCAT.TABLESPACES B where A.tabname='TAB2' AND A.TBSPACEID=B.TBSPACEID
TBSPACEID *&TBSPACE *&TABLEID *&TABNAME *&TABSCHEMA *2&USERSPACE1&4&TAB1&JAVAN&&
--查看系统中的表空间db2 select tbspace,owner,tbspaceid from syscat.tablespacesTBSPACE *&OWNER *&TBSPACEID *SYSCATSPACE&SYSIBM& &0TEMPSPACE1&SYSIBM& &1USERSPACE1&SYSIBM& &2SYSTOOLSPACE&SYSTEM& &3JTBS&ADMINISTRATOR&4JTBS2&ADMINISTRATOR&5SYSTOOLSTMPSPACE&SYSTEM& &6UJTBS&ADMINISTRATOR&7
将tab1表从userspace1 移动到 jtbs
C:UsersAdministrator&db2 call sysproc.admin_move_table('JAVAN','TAB1','JTBS','JTBS','JTBS','','','','','','MOVE')SQL2105N& 由于未满足运行 ADMIN_MOVE_TABLE过程的先决条件,因此未能完成该过程。原因码:"25"。& SQLSTATE=5UA0M
SQL2105N 由于未满足运行 ADMIN_MOVE_TABLE 过程的先决条件,因此未能完成该过程。原因码:原因码。
说明您可以使用 SYSPROC.ADMIN_MOVE_TABLE 过程将数据从一个表空间移至另一个表空间。例如,如果现有的 DMS 表空间未启用可回收存储器,那么您可以使用此过程将该数据迁移到启用了可回收存储器的新 DMS 表空间。ADMIN_MOVE_TABLE 过程要求某些信息或对象存在才能成功地运行。原因码指示了未满足的条件:
10在协议表中找不到索引信息。
11在协议表中找不到期望的数据。
23由于必须存在唯一索引才能删除列,因此未能按照指定删除该列。要删除的列无法存在于该唯一索引中。
24已指定常规数据、大对象(LOB)数据或索引的表空间,但未指定全部这三个表空间。
25已指定要移动包含 LONG、LOB、结构化类型或 XML 列的表,但尚未对该表定义唯一索引(不包括包含 XML 列的唯一索引)。
30未能添加指定的列,因为如果要添加任何定义为非空的列,那么必须为该列指定缺省值。
用户响应请根据给定原因码作出响应:
10再次启动联机移动表操作,这应该能更正协议表中的错误。
11再次启动联机移动表操作,这应该能更正协议表中的错误。
23为该表创建新的唯一索引,除去要从唯一索引中删除的列,或者不要尝试删除该列并重试联机移动表操作。
24指定全部三个表空间参数(常规数据、大对象数据和索引),或者不指定任何这些参数。
25对该表创建唯一索引,或者不要尝试移动该表。
30为任何要添加的、定义为 NOT NULL 的列指定 DEFAULT 值。
sqlcode:-2105
sqlstate:5UA0M
报错 ,看样子这个表tab1不能移到其它表空间
换个表导tab2
C:UsersAdministrator&db2 call sysproc.admin_move_table('JAVAN','TAB2','JTBS','JTBS','JTBS','','','','','','MOVE')SQL0289N& 未能在表空间 "JTBS" 中分配新页面。& SQLSTATE=57011
C:UsersAdministrator&db2 "select count(*) from javan.tab2"
1-----------&&& 1999998
& 1 条记录已选择。
看样子这个表太大了 我初始给jtbs的空间太小了,增大些先看看jtbs多大
select tablespace_name,page_size*usable_pages/& totalmb,page_size*used_pages/ usedmb,page_size*free_pages/& freemb&from table(snapshot_tbs_cfg('testdb',0))
TABLESPACE_NAME&TOTALMB&USEDMB&FREEMBSYSCATSPACE&95&81&14TEMPSPACE1&0&0&0USERSPACE1&191&166&24SYSTOOLSPACE&31&0&31JTBS&311&300&0JTBS2&30&3&21SYSTOOLSTMPSPACE&0&0&0UJTBS&92&2&90
设置自动扩展jtbs表空间大小alter tablespace jtbs autoresize yes increasesize&& 50m
该死的jtbs表空间设置为自动扩展后还得停下应用,重新连接后才生效
C:UsersAdministrator&db2 call sysproc.admin_move_table('JAVAN','TAB2','JTBS','JTBS','JTBS','','','','','','MOVE')SQL2104N& 此用户此时未能完成 ADMIN_MOVE_TABLE 过程。原因码:"4"。SQLSTATE=5UA0M
SQL2104N 此用户此时未能完成 ADMIN_MOVE_TABLE 过程。原因码:原因码。
说明您可以使用 SYSPROC.ADMIN_MOVE_TABLE 过程将数据从一个表空间移至另一个表空间。例如,如果现有的 DMS 表空间未启用可回收存储器,那么您可以使用此过程将该数据迁移到启用了可回收存储器的新 DMS 表空间。数据库对象或操作的状态与所尝试的移动表操作有冲突。返回此错误的原因由原因码指示:
4联机移动表操作所处的状态不允许执行指定的操作。
8没有正在执行中的联机移动表操作;因此,不允许执行指定的操作。
9存在正在执行中的联机移动表操作;不允许对同一个表执行并行的联机表移动操作。
15该表是联机表移动操作的目标表、登台表或协议表,因此不可移动。
29正在执行现场重组操作,此操作不允许执行联机移动表操作的复制阶段。
用户响应请根据给定原因码作出响应:
4指定适合于联机移动表操作的当前状态的操作。
8指定允许的操作。
9等待有冲突的联机表移动操作完成。
15等待联机表移动操作完成。
29等待现场重组操作完成。
sqlcode:-2104
sqlstate:5UA0M
CREATE TABLE JAVAN.TAB3 LIKE JAVAN.TAB2& IN JTBS
INSERT INTO JAVAN.TAB3 SELECT * FROM JAVAN.TAB2
--因为不知道怎么弄刚才失败后的tab2,reorg也不行 只能删掉了(所以大家做这个时候要小心)DROP TABLE JAVAN.TAB2
C:UsersAdministrator&db2 call sysproc.admin_move_table('JAVAN','TAB3','USERSPACE1','USERSPACE1','USERSPACE1','','','','','','MOVE')
& 结果集 1& --------------
& KEY&&&&&&&&&&&&&&&&&&&&&&&&&&&&& VALUE
& -------------------------------- --------------------------------------------------------------------------------------------------------------------------------& AUTHID&&&&&&&&&&&&&&&&&&&&&&&&&& ADMINISTRATOR
& CLEANUP_END&&&&&&&&&&&&&&&&&&&&& -12.38.49.841000
& CLEANUP_START&&&&&&&&&&&&&&&&&&& -12.38.49.544000
& COPY_END&&&&&&&&&&&&&&&&&&&&&&&& -12.37.59.858000
& COPY_OPTS&&&&&&&&&&&&&&&&&&&&&&& ARRAY_INSERT,NON_CLUSTER
& COPY_START&&&&&&&&&&&&&&&&&&&&&& -12.37.23.214000
& COPY_TOTAL_ROWS&&&&&&&&&&&&&&&&& 1999998
& INDEXNAME
& INDEXSCHEMA
& INIT_END&&&&&&&&&&&&&&&&&&&&&&&& -12.37.23.167000
& INIT_START&&&&&&&&&&&&&&&&&&&&&& -12.37.22.496000
& REPLAY_END&&&&&&&&&&&&&&&&&&&&&& -12.38.49.201000
& REPLAY_START&&&&&&&&&&&&&&&&&&&& -12.37.59.874000
& REPLAY_TOTAL_ROWS&&&&&&&&&&&&&&& 0
& REPLAY_TOTAL_TIME&&&&&&&&&&&&&&& 2
& STATUS&&&&&&&&&&&&&&&&&&&&&&&&&& COMPLETE
& SWAP_END&&&&&&&&&&&&&&&&&&&&&&&& -12.38.49.513000
& SWAP_RETRIES&&&&&&&&&&&&&&&&&&&& 0
& SWAP_START&&&&&&&&&&&&&&&&&&&&&& -12.38.49.232000
& VERSION&&&&&&&&&&&&&&&&&&&&&&&&& 09.07.0001
& 20 条记录已选择。
& 返回状态 = 0
C:UsersAdministrator&
--将表tab3从表空间jtbs移动到userspace1表空间后查看
db2 select A.TBSPACEID,B.TBSPACE,A.TABLEID,A.TABNAME,A.TABSCHEMA from syscat.tables A,SYSCAT.TABLESPACES B where A.tabname='TAB2' AND A.TBSPACEID=B.TBSPACEID
TBSPACEID *&TBSPACE *&TABLEID *&TABNAME *&TABSCHEMA *2&USERSPACE1&5&TAB3&JAVAN&&
感谢关注 Ithao123DB2频道,是专门为互联网人打造的学习交流平台,全面满足互联网人工作与学习需求,更多互联网资讯尽在 IThao123!
Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framework)。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。
Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。
产品设计是互联网产品经理的核心能力,一个好的产品经理一定在产品设计方面有扎实的功底,本专题将从互联网产品设计的几个方面谈谈产品设计
随着国内互联网的发展,产品经理岗位需求大幅增加,在国内,从事产品工作的大部分岗位为产品经理,其实现实中,很多从事产品工作的岗位是不能称为产品经理,主要原因是对产品经理的职责不明确,那产品经理的职责有哪些,本专题将详细介绍产品经理的主要职责
IThao123周刊

我要回帖

更多关于 db2数据库创建用户 的文章

 

随机推荐