DB2在线备份恢复

DB2在线备份恢复:

1.查看数据库:

[db2inst1@localhost ~]$ db2 list db directory

 System Database Directory

 Number of entries in the directory = 2

Database 1 entry:

 Database alias                       = PAYMENT2

 Database name                        = PAYMENT2

 Local database directory             = /home/db2inst1

 Database release level               = f.00

 Comment                              =

 Directory entry type                 = Indirect

 Catalog database partition number    = 0

 Alternate server hostname            =

 Alternate server port number         =

Database 2 entry:

 Database alias                       = SAMPLE

 Database name                        = SAMPLE

 Local database directory             = /home/db2inst1

 Database release level               = f.00

 Comment                              =

 Directory entry type                 = Indirect

 Catalog database partition number    = 0

 Alternate server hostname            =

 Alternate server port number         =

2.删除数据库:(模拟灾难)

[db2inst1@localhost ~]$ db2 drop db payment2

DB20000I  The DROP DATABASE command completed successfully.

[db2inst1@localhost ~]$ db2 list db directory

 System Database Directory

 Number of entries in the directory = 1

Database 1 entry:

 Database alias                       = SAMPLE

 Database name                        = SAMPLE

 Local database directory             = /home/db2inst1

 Database release level               = f.00

 Comment                              =

 Directory entry type                 = Indirect

 Catalog database partition number    = 0

 Alternate server hostname            =

 Alternate server port number         =

3.找到备份的数据

[db2inst1@localhost ~]$ cd /home/db2inst1/payment2_bak

[db2inst1@localhost payment2_bak]$ ls

PAYMENT2.0.db2inst1.DBPART000.20130514083706.001  PAYMENT2.0.db2inst1.DBPART000.20130514090118.001

PAYMENT2.0.db2inst1.DBPART000.20130514085824.001

[db2inst1@localhost payment2_bak]$ ll

总用量 475104

-rw-------. 1 db2inst1 db2iadm1 161419264 5月  14 08:37 PAYMENT2.0.db2inst1.DBPART000.20130514083706.001

-rw-------. 1 db2inst1 db2iadm1 165355520 5月  14 08:58 PAYMENT2.0.db2inst1.DBPART000.20130514085824.001

-rw-------. 1 db2inst1 db2iadm1 159727616 5月  14 09:01 PAYMENT2.0.db2inst1.DBPART000.20130514090118.001

4.备份恢复命令

[db2inst1@localhost payment2_bak]$ db2 restore database payment2 from /home/db2inst1/payment2_bak taken at 20130514085824

DB20000I  The RESTORE DATABASE command completed successfully.

5.查看数据库是否恢复:

[db2inst1@localhost payment2_bak]$ db2 list db directory

 System Database Directory

 Number of entries in the directory = 2

Database 1 entry:

 Database alias                       = PAYMENT2

 Database name                        = PAYMENT2

 Local database directory             = /home/db2inst1

 Database release level               = f.00

 Comment                              =

 Directory entry type                 = Indirect

 Catalog database partition number    = 0

 Alternate server hostname            =

 Alternate server port number         =

Database 2 entry:

 Database alias                       = SAMPLE

 Database name                        = SAMPLE

 Local database directory             = /home/db2inst1

 Database release level               = f.00

 Comment                              =

 Directory entry type                 = Indirect

 Catalog database partition number    = 0

 Alternate server hostname            =

 Alternate server port number         =

6.尝试连接数据库:

由于是在归档模式下,数据库恢复后,处于 ROLL-FORWARD PENDING 状态,所以不能连接

[db2inst1@localhost payment2_bak]$ db2 connect to payment2

SQL1117N  A connection to or activation of database "PAYMENT2" cannot be made 

because of ROLL-FORWARD PENDING.  SQLSTATE=57019

7.前滚数据库,使之可用

[db2inst1@localhost ~]$ db2 "ROLLFORWARD DATABASE payment2  TO END OF LOGS AND COMPLETE OVERFLOW LOG PATH ("/home/db2inst1/payment2_archive_log/")"

                                 Rollforward Status

 Input database alias                   = payment2

 Number of members have returned status = 1

 Member ID                              = 0

 Rollforward status                     = not pending

 Next log file to be read               =

 Log files processed                    = S0000002.LOG - S0000003.LOG

 Last committed transaction             = 2013-05-14-01.01.28.000000 UTC

DB20000I  The ROLLFORWARD command completed successfully.

[db2inst1@localhost ~]$ db2 connect to payment2

   Database Connection Information

 Database server        = DB2/LINUX 10.1.2

 SQL authorization ID   = DB2INST1

 Local database alias   = PAYMENT2

[db2inst1@localhost ~]$ db2 list tables

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭