沈阳网站建设设计,微信营销软件升级版,企业网站设计的基本原则有哪些,网站ppt怎么做前言#xff1a;DB2 Universal Database™(DB2 UDB) 有一对非常有用的工具#xff0c;可以帮助您实现这种跨平台的备份与恢复功能。 db2move 工具利用了 DB2 的数据移动工具(export 和 import 或 load)来移动数据库表。然而#xff0c;由于数据库的内容远远不止于用户表DB2 Universal Database™(DB2 UDB) 有一对非常有用的工具可以帮助您实现这种跨平台的备份与恢复功能。 db2move 工具利用了 DB2 的数据移动工具(export 和 import 或 load)来移动数据库表。然而由于数据库的内容远远不止于用户表因此您需要使用其他方法在不同的数据库之间迁移其他数据库对象例如约束、触发器、索引、序列、表空间、缓冲池等。这就是 db2look工具出现的原因。使用这个工具您可以在源数据库中捕获到定义这些对象使用的数据定义语言(DDL)并在目标数据库中使用这些数据定义语言重新创建这些对象。1、 环境说明迁移的DB2 数据库的名字叫 sample SCHEMA也是oatest 用户名是 oatest2、 导出步骤1) 建立新目录如果是在 linux 下要注意目录的权限问题目录应该可以被 db2inst1 用户写访问[db2inst1devsvr2 db2inst1]$ pwd/home/db2inst1[db2inst1devsvr2 db2inst1]$ mkdir oatest0303[db2inst1devsvr2 db2inst1]$ lsdb2inst1 db2test Desktop oatest0303 sqllib2) 进入该目录[db2inst1devsvr2 db2inst1]$ cd oatest0303/[db2inst1devsvr2 oatest0303]$3) 用数据库抽取工具 db2look 导出数据库结构主要命令db2look -d sample -e -z oatest -l -o oatest.sql[db2inst1devsvr2 oatest0303]$ db2look -d sample -e -z oatest -l -o oatest.sql-- 未指定用户标识db2look 试图使用环境变量 USER-- USER 是: DB2INST1-- 指定的模式为: OATEST-- 创建表的 DDL-- 联合部分的模式名被忽略-- 输出被发送到文件: oatest.sql脚本中包括建立 bufferpool 以及tablespace的 DDL 语句4) 用 db2move 工具导出数据库数据主要命令db2move sample export[db2inst1devsvr2 oatest0303]$ db2move sample export***** DB2MOVE *****Action: EXPORTStart time: Sun Mar 5 11:00:52 2006Connecting to database SAMPLE ... successful! Server: DB2 Common Server V8.2.0EXPORT: 0 rows from table OATEST .ATTACHFILEEXPORT: 0 rows from table OATEST .BASE……5) 打包压缩该目录 oatest0303/主要命令tar zcvf oatest0303.tar.gz oatest0303/[db2inst1devsvr2 oatest0303]$ cd ..[db2inst1devsvr2 db2inst1]$ tar zcvf oatest0303.tar.gz oatest0303/oatest0303/oatest0303/oatest.sqloatest0303/EXPORT.outoatest0303/db2move.lstoatest0303/tab1.msgoatest0303/tab1.ixf……3、 导入步骤1) 解压主要命令tar zxfv oatest0303.tar.gz[db2inst1devsvr2 db2inst1]$ tar zxfv oatest0303.tar.gzoatest0303/oatest0303/oatest.sqloatest0303/EXPORT.outoatest0303/db2move.lst……2) 建立新数据库 db2 create db sample主要命令db2 create db sample[db2inst1devsvr2 db2inst1]$ db2 create db sampleDB20000I CREATE DATABASE 命令成功完成。3) 执行 oatest.sql 脚本建立数据库主要命令db2 -tvf oatest.sql[db2inst1devsvr2 db2inst1]$ cd oatest0303[db2inst1devsvr2 oatest0303]$ db2 -tvf oatest.sql……4) 执行 db2move 导入数据主要命令db2move sample load[db2inst1devsvr2 oatest0303]$ db2move sample load……* LOAD: table OATEST .UM_USER-Rows read: 1529-Loaded: 1529-Rejected: 0-Deleted: 0-Committed: 1529Disconnecting from database ... successful!End time: Sun Mar 5 10:24:22 20065) 检查一致性主要命令db2 set integrity for oatest.UM_USER immediate checked[db2inst1devsvr2 oatest0303]$ db2 connect to sample数据库连接信息数据库服务器 DB2/LINUX 8.2.0SQL 授权标识 DB2INST1本地数据库别名 SAMPLE[db2inst1devsvr2 oatest0303]$ db2 select count(*) fromoatest.um_user1-----------SQL0668N 由于表 OATEST.UM_USER 上的原因码 1所以不允许操作。SQLSTATE57016[db2inst1devsvr2 oatest0303]$ db2 set integrity for oatest.UM_USERimmediate checkedDB20000I SQL 命令成功完成。[db2inst1devsvr2 oatest0303]$ db2 select count(*) fromoatest.um_user1-----------15291 条记录已选择。利用 sql 语句得到要检查的表的执行语句主要命令db2 select db2 set integrity for oatest.||TABNAME|| immediate checked from syscat.tables where TABSCHEMAOATEST and STATUSC[db2inst1devsvr2 oatest0303]$ db2 select db2 setintegrity for oatest.||TABNAME|| immediate checkedfrom syscat.tables where TABSCHEMAOATEST and STATUSC1-----------------------------------------------------------------db2 set integrity for oatest.CAL_AUTH immediate checked……db2 set integrity for oatest.UM_USER immediate checked81 条记录已选择。执行这 81 条语句语句有可能报错主要命令db2 set integrity for oatest. CAL_AUTH immediate checked[db2inst1devsvr2 oatest0303]$ db2 set integrity for oatest.CAL_AUTH immediate checkedDB20000I SQL 命令成功完成。[db2inst1devsvr2 oatest0303]$ db2 set integrity for oatest.UM_USER immediate checkedDB20000I SQL 命令成功完成。…………如果报错再反复执行这些语句直到下面的语句结果返回 0 条记录[db2inst1devsvr2 oatest0303]$ db2 select db2 set integrityfor oatest.||TABNAME|| immediate checked from syscat.tableswhere TABSCHEMAOATEST and STATUSC1---------------------------------------------------------------0 条记录已选择。6) 在操作系统中建立用户[rootdevsvr2 root]# useradd oatest[rootdevsvr2 root]# passwd oatestChanging password for user oatest.New password:BAD PASSWORD: it is too shortRetype new password:passwd: all authentication tokens updated successfully.7) 给 oatest 用户授权主要命令db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,CREATE_NOT_FENCED_ROUTINE,IMPLICIT_SCHEMA,LOAD,CREATE_EXTERNAL_ROUTINE,QUIESCE_CONNECT ON DATABASE TO USER OATESTdb2 GRANT CREATEIN,DROPIN,ALTERIN ON SCHEMA OATEST TO USER OATEST[db2inst1devsvr2 db2inst1]$ db2 connect to sample数据库连接信息数据库服务器 DB2/LINUX 8.2.0SQL 授权标识 DB2INST1本地数据库别名 SAMPLE[db2inst1devsvr2 db2inst1]$ db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,CREATE_NOT_FENCED_ROUTINE,IMPLICIT_SCHEMA,LOAD,CREATE_EXTERNAL_ROUTINE,QUIESCE_CONNECT ON DATABASE TO USER OATEST;DB20000I SQL 命令成功完成。[db2inst1devsvr2 db2inst1]$ db2 GRANT CREATEIN,DROPIN,ALTERIN ON SCHEMA OATEST TO USER OATESTDB20000I SQL 命令成功完成。[db2inst1devsvr2 db2inst1]$ db2 connect to sample user oatest using oatest数据库连接信息数据库服务器 DB2/LINUX 8.2.0SQL 授权标识 OATSET本地数据库别名 SAMPLE[db2inst1devsvr2 db2inst1]$ db2 select count(*) from um_user1-----------15291 条记录已选择。4、 重要说明1)在 db2 中的 bufferpool 是和内存有关系的所以你应该根据你的机器内存情况来建立 bufferpool2) tablespace 的路径也是和你的应用有关如果是双机环境应该把表空间建立在共享存储中你可以根据实际情况来修改上文所说到的 oatest.sql 中的建立 bufferpool 以及 tablespace 的语句。http://macrozeng.itpub.net/post/71/58248