如何仅使用源备份日志恢复数据库日志?

2020-08-15 20:51发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们有两台hana 2.0系统主机:

1)用于备份的源主机:BK1

2)用于恢复的目标主机:BK2

每当我们需要使用BK1上的所有备份(数据和日志)在BK2上进行恢复以进行测试时,BK2本身就会出现问题,即BK2还将生成自己的本地日志...。

那么,如何仅使用源BK1日志恢复BK2上的数据库日志?

hdbsql SYSTEMDB =>

hdbsql SYSTEMDB =>

hdbsql SYSTEMDB => BK2直到TIMESTAMP的恢复数据库'2020-07-02 08:26:59'使用数据路径('/hana/BK1_bakdata/')使用日志路径('/hana/BK1_baklog/');

* 448:无法完成恢复:[2000004]无法打开文件"" /log_backup_2_0_7992832_7992960.1593633407981"((关闭,模式= R,访问权限= rw-r -----,标志= ASYNC | DIRECT | MUST_EXIST | UNALIGNED_SIZE),工厂=(root ="/img/hana/BK1_baklog"(access = rw-r -----,标志= AUTOCREATE_PATH | DISKFULL_ERROR,用法= LOG_BACKUP,fs = UNSUPPORTED(btrfs),config = (async_write_submit_active = on,async_write_submit_blocks = all,async_read_submit = on,num_submit_queues = 1,num_completion_queues = 1,size_kernel_io_queue = 512,max_parallel_io_requests = 64,min_submit_batch_size = 16,= STATE,STATE_STATE) :HY000

hdbsql SYSTEMDB =>

hdbsql SYSTEMDB =>

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们有两台hana 2.0系统主机:

1)用于备份的源主机:BK1

2)用于恢复的目标主机:BK2

每当我们需要使用BK1上的所有备份(数据和日志)在BK2上进行恢复以进行测试时,BK2本身就会出现问题,即BK2还将生成自己的本地日志...。

那么,如何仅使用源BK1日志恢复BK2上的数据库日志?

hdbsql SYSTEMDB =>

hdbsql SYSTEMDB =>

hdbsql SYSTEMDB => BK2直到TIMESTAMP的恢复数据库'2020-07-02 08:26:59'使用数据路径('/hana/BK1_bakdata/')使用日志路径('/hana/BK1_baklog/');

* 448:无法完成恢复:[2000004]无法打开文件"" /log_backup_2_0_7992832_7992960.1593633407981"((关闭,模式= R,访问权限= rw-r -----,标志= ASYNC | DIRECT | MUST_EXIST | UNALIGNED_SIZE),工厂=(root ="/img/hana/BK1_baklog"(access = rw-r -----,标志= AUTOCREATE_PATH | DISKFULL_ERROR,用法= LOG_BACKUP,fs = UNSUPPORTED(btrfs),config = (async_write_submit_active = on,async_write_submit_blocks = all,async_read_submit = on,num_submit_queues = 1,num_completion_queues = 1,size_kernel_io_queue = 512,max_parallel_io_requests = 64,min_submit_batch_size = 16,= STATE,STATE_STATE) :HY000

hdbsql SYSTEMDB =>

hdbsql SYSTEMDB =>

付费偷看设置
发送
7条回答
DafaDDDa
1楼-- · 2020-08-15 21:32

你好

首先来自错误消息:
* 448:无法完成恢复:[2000004]无法打开文件"" /log_backup_2_0_7992832_7992960.1593633407981"((关闭,模式= R,访问权限= rw-r- ----,标志= ASYNC | DIRECT | MUST_EXIST | UNALIGNED_SIZE),工厂=(根="/img/hana/BK1_baklog"(访问= rw-r -----,标志= AUTOCREATE_PATH | DISKFULL_ERROR,用法= LOG_BACKUP,fs =不支持(btrfs),配置=(async_write_submit_active = on,async_write_submit_blocks =全部,async_read_submit = on,num_submit_queues = 1,num_completion_queues = 1,size_kernel_io_queue = 512,max_parallel_io_size_sub ==,最小= 64,) 2:没有这样的文件或目录SQLSTATE:HY000

请检查是否存在上述日志文件。 如果存在,请检查该日志文件的权限,如果有访问权限,也请访问该路径。

其次,您提到:"因此BK2本身会出现问题,即BK2还将生成自己的本地日志...。"
因此,BK2将在恢复期间生成其自己的日志 (进入在线日志目录/hana/log/BK2),可以通过在恢复命令中添加" CLEAR LOG"来进行调整。 如下所示:
hdbsql SYSTEMDB => BK2的恢复数据库直到时间戳记'2020-07-02 08:26:59'清除日志更改所有使用路径的数据('/hana/BK1_bakdata/')更改所有使用路径的日志( '/hana/BK1_baklog/'');

尝试上述更正,恢复正常。

昵称总是被占用
2楼-- · 2020-08-15 21:45

您问了一个问题。 不要忘记将对您最有帮助的答案标记为正确。 谢谢!

对于读者而言,在您离开之前,请不要忘记对答案进行上下投票。 您也可以对问题进行投票。
谢谢!

Aaron 3364
3楼-- · 2020-08-15 21:43

您可以确认/hana/BK1_baklog/中文件的可用性以及它们是否可以从BK2访问。 向他们授予775权限,然后重试。

请重新描述一下恢复问题" BK2本身存在问题,也就是说,BK2还将生成自己的本地日志...。 "

骆驼绵羊
4楼-- · 2020-08-15 21:37

你好,

fs =不支持(btrfs)

我认为,您已经将共享从BK1服务器安装到BK2,并且现在可以通过某种方式读取BK1的日志文件。
为了安全起见,我建议您是否可以在BK2服务器中本地复制日志文件 到没有任何空间限制的位置。 授予他们775的许可权,包括目录,然后再次尝试恢复。

最好的问候,
Vivek Sahu

代楠1984
5楼-- · 2020-08-15 21:57

此外,BTRFS并不是HANA系统官方支持的文件系统。 HANA支持的文件系统:

  • XFS
  • EXT3
  • GPFS
  • NFS
  • OCFS2

SAP注释 405827 2714556 已经提供了不受支持的BTRFS的信息。

请使用上述FS类型来改善您的HANA服务器。

三十六小时_GS
6楼-- · 2020-08-15 21:38

"但是为什么在BK2上使用相同的本地FS(/hana)恢复源备份数据可以正常工作?"

没有收到问题。 您是不是要从(/hana/...)(即/usr/...以外的其他位置)进行恢复? 恢复可以从您在RECOVER DATABASE查询中提供的任何路径进行:

  • 文件在路径中可用。 (/hana/BK1_baklog/)
  • 已登录用户(bk2adm)可以访问该路径
  • 整个路径(包括子目录)都具有访问文件的适当权限。 (对BK1_baklog和其中的文件有什么许可?)

一周热门 更多>