ORACLE数据库备份管理-rman备份到NFS

1 相关案例

1 df -h无法正常显示文件系统挂载情况,使用如下命令进行处

umount -f /nfsdir

2 节点启动出现问题

询问是否包含nfs服务,将分享节点nfs服务重启。

1 案例1从linux  -linux

实施脚本如下:

mkdir  -p /data

chown -R nfsnobody:nfsnobody /data

chmod 777 /data

vi /etc/exports

/data/nfs  192.168.86.131(rw)

/data/nfs  192.168.1.0/24(rw)

/data/nfs  192.168.1.0/24(rw)  192.168.86.131(rw,sync)

service rpcbind start

service nfs start

showmount -e 10.2xxxx

exportfs

mount -t nfs 192.168.1.2:/data /data

取消nfs配置

vi /etc/exports

删除信息,重启nfs和rpmbind服务即可。

其中共享对象可以用通配符,比如 * 代表所有地址。

配置参数:

rw: 读写

ro :只读

sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性;

async:是大数据时使用,是先写到缓存区,必要时再写到磁盘里。

all_squash:所有访问用户都映射为匿名用户或用户组;
no_all_squash(默认):访问用户先与本机用户匹配,匹配失败后再映射为匿名用户或用户组;

root_squash(默认):将来访的root用户映射为匿名用户或用户组;

no_root_squash:来访的root用户保持root帐号权限;

wdelay(默认):检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率;

no_wdelay:若有写操作则立即执行,应与sync配合使用;

subtree_check :若输出目录是一个子目录,则nfs服务器将检查其父目录的权限;

no_subtree_check(默认):即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;

cat /var/lib/nfs/etab

[root@localhost ~]# chkconfig rpcbind on

[root@localhost ~]# chkconfig nfs on

mount -t nfs 192.168.1.2:/data /data

数据库进行rman备份:

[oracle@gzrac01 data]$ rman target /

Recovery Manager: Release 19.0.0.0.0 - Production on Tue Nov 12 16:10:15 2019
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

connected to target database: MONIDB (DBID=686937938)

RMAN> backup datafile 1 format '/data/11.dbf';

Starting backup at 2019:11:12 16:10:31
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=2960 instance=monidb1 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00001 name=+DATA01/monidb/system01.dbf
channel ORA_DISK_1: starting piece 1 at 2019:11:12 16:10:32
channel ORA_DISK_1: finished piece 1 at 2019:11:12 16:10:57
piece handle=/data/11.dbf tag=TAG20191112T161031 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:25
Finished backup at 2019:11:12 16:10:57

Starting Control File and SPFILE Autobackup at 2019:11:12 16:10:57
piece handle=/u01/app/oracle/product/19.3/db_1/dbs/c-686937938-20191112-00 comment=NONE
Finished Control File and SPFILE Autobackup at 2019:11:12 16:10:58

2 挂载nfs目录 SOLARIS-SOLARIS

share –F nfs –o rw   /backup 24.117

mount –F nfs 10.228.24.117:/backup /backup<适合 solariS>


mount -F nfs -o rw,bg,hard,nointr,rsize=32768,wsize=32768,proto=tcp,noac,vers=3 10.228.242.13:/orabak /oraback

ORA-27054: NFS file system where the file is created or resides is not mounted with correct options

Additional information: 6

Recovery Manager complete.

二. 问题分析

首先目录的访问权限没有问题,尝试在db_node1上的/archivelog/orcl2 目录上建立,修改文件都没有问题,说明nfs设置没有问题.

在METALINK上搜索ora-27054 nfs,找到了一篇文章 ORA-27054 ERRORS WHEN RUNNING RMAN WITH NFS [ID 387700.1]

该 文档中提及造成问题的原因可能是oracle去考虑nfs的问题. 总之需要执行命令。

Alter system set events '10298 trace name context forever,level 32';

三. 问题解决

在执行rman备份的节点执行:

SQL>Alter system set events '10298 trace name context forever,level 32';

执行这个命令,不需要重新启动rac的实例,也不需要重新启动DB.但上面的命令在下次数据库重新启动后就失效了,需要再次手工执行。(笔者曾经在数据库重新启动后,忘记了执行这个语句,导致日志文件目录差点爆满)。

如果想数据库重新启动后,自动执行这个命令,则执行下面的命令:

SQL>alter system set event='10298 trace name context forever,level 32' SCOPE=SPFILE;

细心的朋友会发现上面提到的两个命令还是有一点小小区别的。

执行完命令后,再次执行rman的备份,正常。

加入/etc/filesystems

/arch2:

        dev             = /arch2

        vfs             = nfs

        nodename        = 10.228.242.25

        mount           = false

        options         = rw,bg,hard,nointr,rsize=32768,wsize=32768,proto=tcp,vers=3,timeo=600

        account         = false

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值