db2如何查看是归档模式

db2如何查看是归档模式,第1张

一、备份(backup)数据库
1、离线全备份
1)、首先确保没有用户使用DB2:
db2 list applications for db sample
2)、停掉数据库并重新启动,以便断掉所有连接:
db2stop force
db2start
若是不喜欢重启的朋友可以使用[db2 force applications all]命令以结束正在利用的连接,该句执行完以后,继续执行[db2 list applications for db sample],若还有连接残留,则再运行[db2 force applications all]命令,直到没有连接残留
3)、执行备份命令:(使用TSM作为备份的介质)
db2 backup db sample use tsm
备份成功,将会返回一个时间戳。
4)、检查备份成功:
db2 list history backup all for sample 可以看到多了这个备份的纪录。
db2adutl query 命令也可以看到返回值。
5)、备注:
首先对主节点(catalog表空间在的节点)执行备份命令,再对另外的节点也做这个 *** 作。
2、 在线备份:
1)、首先打开一下支持在线备份的数据库配置参数:
db2 update db cfg for sample using userexit on 启用用户出口
db2 update db cfg for sample using logretain on 启用归档日志
db2 update db cfg for sample using trackmod on 启用增量备份功能
(需要各个Node都分别做设置)
开启这些参数后,数据库处于backup pending状态,要求做数据库的离线全备份。 做一下离线全备份,参考上面的命令。
2)、在线备份命令如下:
db2 backup db sample online use tsm
备份成功,返回一个时间戳。
3)、同样可以用db2adutl 和db2 list history察看备份纪录。
4)、备注:
同样,对每个节点都做这个 *** 作。
3、 在线增量备份
1)、在开启了必须的三个参数的情况下,做增量备份:
db2 backup db sample online incremental use tsm
备份成功,返回一个时间戳。
2)、同样可以用db2adutl 和db2 list history察看备份纪录。
3)、还有一种delta的备份:
db2 backup db sample online incremental delta use tsm
这两种备份的区别,类似Oracle Exports的Incremental和Cumulative方式,db2的incremental对应oracle的cumulative方式,而 db2的delta方式则对应oracle的incremental方式。
4)、备注:
同样,对每个节点都做这个 *** 作。
二、恢复(RESTORE)数据库
1、新建数据库
在一般管理工具, 创建数据库(别名要和原来的数据库别名一致)。
2、恢复数据库
1):断开连接:将网络断开,切断所有的客户连接,如果不行,先重启。(如果有 客户端连接到DB2服务器,恢复不行的,包括控制中心)
2):恢复离线备份:
设:
你的备份那个DB2文件在:C:\Temp
你的数据库名称:DBName
那么对应DB2的备份/恢复文件的格式是这样的:
C:\Temp\DBName0\DB2CTLSV\NODE0000\CATN0000\20090706\HHMMSS001
备 份时你只是指定了一个C:\Temp目录,后面那么目录为DB2备份时生成。
然后是它的文件名,一般格式是:HHMMSS001,即:小时分钟秒数001,也就是说后面那个20020828是 备份日期,文件名是备份时间。
好,清楚后,你就可以写SQL命令进行恢复了
运行: Start->Program->IBM DB2->Command Center
然后:不要登陆,直接输入下列命令:
以下为引用的内容:
RESTORE DATABASE OldDBName FROM C:\\Temp\\ TAKEN AT
20020919094932 TO D: INTO NewDBName WITH 2 BUFFERS BUFFER 1024
WITHOUT PROMPTING
你要改
NewDBName ==》你的新建数据库名称
C:\\TEMP\\ ==> 你备份DB2的目录,像上面所说
20020919094932 ==> 一看你DB2的目录和文件组合成这东东
D: ==> 新建的数据库放在哪个盘上
OldDBName ==> 备份前那个数据库叫什么
好了,CTRL+ENTER, 如果不行请检查,如果再不行,请重启,如果再不行,。。。阿门,上帝保佑你
3): 实例
备份文件路径:C:\Temp\ipmdemo0\DB2CTLSV\NODE0000\CATN0000\20090622\164642001
其中,备份日期:20090622 备份文件:164642001
新建数据库名:ipmdemo
数据库文件时间戳:20090622164642
恢复命令为:db2 restore database ipmdemo from C:\Temp taken at20090622164642
3、恢复在线备份
1)、恢复。恢复命令为:db2restoredatabase DBName from C:\Temp taken at20090622164642
2)、前滚。前滚命令为:db2 rollforward db DBName to end of logs(或 者:控制中心->所有数据库->dbname ->右键->前滚)
3)、停止前滚。停止前滚命令为:db2 rollforward db DBName stop(或者:控制中心 ->所有数据库->dbname ->右键->停止前滚)
三、有关说明
1、恢复 *** 作也有online和offline的,区别如同backup的 *** 作。
2、按照表空间的备份和恢复类似,加子句TABLESPACE ( tablespace-name )即可。表空间级别的备份/恢复 *** 作要求数据库处于归档日志和启用增量备份模式下。
3、恢复的例子中只做了版本恢复。若还有更新的全备份和增量备份的image,可以依次做恢复(注意使用db2ckrst的建议恢复次序和次数)后,再做 roll forward。

可以在命令编辑器或者Windows 的DB2 命令窗口或者 Linux 的shell 中执行SQL 脚本。在windows 的DB2 命令窗口或者 linux 的shell 中执行SQL语句,可以使用下面的命令执行script1sql脚本:
db2 -t -v -f script1sql -z script1log
或者:
db2 –tvf script1sql –z script1log
在上面的命令中,
-t 表示语句使用默认的语句终结符——分号;
-v 表示使用冗长模式,这样 DB2 会显示每一条正在执行命令的信息;
-f 表示其后就是脚本文件;
-z 表示其后的信息记录文件用于记录屏幕的输出,方便以后的分析(这是可选的,但我们建议使用该选项)。
当使用了-t选项而没有标明语句终结符,则分号(;)会默认为语句的终结符。有时可能会出现使用另外的终结符的情况,例如用SQL PL 编写的的脚本使用其它的符号而不是默认的分号,因为分号在SQL PL 是用于定义数据库对象过程中的语句结束。

由于数据库管理器发生了错误或者被强制中断,从而无法接受新的请求,已终止正在处理的所有请求或者已终止所指定的请求。
重新连接至数据库。
如果此连接仍失败,请在数据库管理员的帮助下执行下列故障诊断步骤:
仅限于联合环境:确定是联合数据源返回了错误还是联合数据库服务器返回了错误。
确保客户机/服务器配置正确:
确认通信子系统(包括网络电缆、网卡以及 TCP/IP 之类的通信协议)是否已启动并处于运行状态。
在使用 TCP/IP 协议的客户机/服务器环境中:请对客户机上的 TCP/IP 服务名称指定与服务器上的端口号相同的端口号。
确保数据库管理器已启动并处于运行状态:
确认 DB2 数据库管理器是否已启动并处于运行状态。
在 db2diag 日志文件中查找有关数据库管理器进程已中断或异常终止的证据。
如果数据库管理器已停止,或者诊断日志中存在有关任何数据库管理器代理程序已中断或异常终止的证据,请重新启动数据库管理器。
2


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zz/13125226.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-06-05
下一篇 2023-06-05

发表评论

登录后才能评论

评论列表(0条)

保存