oracle归档原理,增加ORACLE归档位置到NFS(转)

NFS文件服务器系统搭建

1什么是NFS

NFS(network file

system),网络文件系统,不同的操作系统可以通过NFS来共享文件,可以简单地将之看成是一个文件服务器。可以将远端的主机分享目录挂载到本地的目录下,使用的时候就像本地的目录一样,只要权限足够,可以直接在目录中创建文件并使用mv,cp,,rm等命令直接对之进行管理。用起来相当的方便。

2 NFS的原理

NFS使用TCP/IP协议进行通讯。所以肯定需要port端口进行通讯。这个端口是从1—1024中随机取得的端口。因为NFS的功能很多,需要分配很多的端口,客户端通过RPC来找到这个端口并进行通讯。NFS每次启动的时候都要向RPC进行注册才行。而RPC服务重启后,所有的端口信息都会丢失,所以如果RPC重启,则NFS

SERVICE也必需重新启动重新向RPC服务注册。这样客户端才能知道该使用哪个端口通讯。客户端连接NFS服务器的步骤。

1用户向服务器端的RPC(port 111)提出访问请求

2服务器端查询NFS damon端口地址,提供给client端。

3 client通过port和server端进行通讯。

3 NFS的后台进程

NFS主要用来做文件的分享。最主要有两个后台进程,一个接受连接,一个提供服务。

rpc.nfsd校验登入权限。

rpc.mount管理文件系统。读设定文件/etc/exports,确定权限。

rpc.lockd 这个进程不是必需的。用途加锁管理。避免并发问题。如果多个会话同时存取一个文件,可能会有并发问题。为了解决这个问题。增加了这个进程,注意必需客户端和服务器端同时启动才行。通常与rpc.statd同时启用。

Rpc.statd,校验文件一致性的进程。通常与ntplockd同时启动

4权限问题:

NFS共享目录的权限是通过UID,GID来判断的。比方在服务器端共享目录的属主为503,503。如果共享目录的权限比较小,而如果客户端没有503,503的用户。用gid,uid为501的用户登入的时候,就既不能读,也不能写。。所以通常情况下都会将共享目录设置成777的权限。

当登入用户为root

0:0的时候,映射到服务端如果也是0:0就会有安全上的隐患。NFS默认将uid,0,gid0当成nobody来处理,

当登入的用户对应的uid,gid在服务端存在的时候,在该目录中的权限和服务端对应用户相同。

当登入的用户不存在的时候。创建的uid,gid为用户的uid,gid,服务端看到的文件有uid,gid,但是没有用户名。其读取的权限和nobody相同。

总之,只要client登入用户的uid和gid和服务器端的不对应,就会造成困扰。这也是NFS文件系统权限管理上的一个很容易引起混乱的问题。要有合适的读写权限。需要

/etc/export中的合理设置。以及登入者的对应用户在共享目录的权限足够才行。

5配置NFS服务

前面说配置NFS需要RPC服务的启动。在linux系统上RPC对应的服务名是portmap.所以首先需要启动portmap服务。而且如果portmap服务重启,NFS服务就会变得不可用,必须重新启动。

service portmap restart;

service nfs restart;

NFS的配置文件是/etc/exports.格式是

共享目录,主机ip(权限关键字)可用主机名带通配符的主机名(权限)。

一个例子

[root@vdx2 rmanbak]# more /etc/exports

/home/oracle/aa 10.10.100.14(rw,nohide,no_subtree_check)

()内的语法可以通过man exports来查看,在此不做详述。

与权限有关的有rw表示允许读写共享,ro表示只读共享。

配置完/etc/exports以后,只要重新启动NFS,服务器端的配置就完成了。

另外需要注意,只要修改了/etc/exports文件,NFS都要重新启动。

为了避免NFS SERVER重启后服务未启动,使用setup工具把portmap, nfs,

nfslock配置为自动启动。

为ORACLE配置NFS服务客户端

1挂载选项

如果仅仅只是做简单的拷贝动作,只要直接mount就OK了。但是如果想让ORACLE直接访问NFS目录,除了权限设置正确外,mount必需加上-o选项。否则ORACLE无法直接读写,会给出mount选项不对的错误。

根据ORACLE,metalink Doc

ID:359515.1,不同平台不同情况下的mount选项是不同的,如下是ORACLE提供的对照表。针对二进制文件(ORACLE_HOME,CRS_HOME),数据文件(包括控制文件和日志文件,数据文件),OCR和VOTING

DISK的不同情况可以在如下表中查询。

注意linux内核版本需要>=2.6

RAC情况下。

Operating System

Mount options for Binaries

Mount options for Oracle Datafiles

Mount options for CRS Voting Disk and

OCR

Sun Solaris *

rw,bg,hard,nointr,rsize=32768,

wsize=32768,proto=tcp,

noac,vers=3,suid

rw,bg,hard,nointr,rsize=32768,

wsize=32768,proto=tcp,noac,

forcedirectio, vers=3,suid

rw,bg,hard,nointr,rsize=32768,

wsize=32768,proto=tcp,vers=3,

noac,forcedirectio

AIX (5L) **

rw,bg,hard,nointr,rsize=32768,

wsize=32768,proto=tcp,vers=3,

timeo=600

cio,rw,bg,hard,nointr,rsize=32768,

wsize=32768,proto=tcp,noac,

vers=3,timeo=600

cio,rw,bg,hard,intr,rsize=32768,

wsize=32768,tcp,noac,

vers=3,timeo=600

HPUX 11.23 ****–

rw,bg,vers=3,proto=tcp,noac,

hard,nointr,timeo=600,

rsize=32768,wsize=32768,suid

rw,bg,vers=3,proto=tcp,noac,

forcedirectio,hard,nointr,timeo=600,

rsize=32768,wsize=32768,suid

rw,bg,vers=3,proto=tcp,noac,

forcedirectio,hard,nointr,timeo=600

,rsize=32768,wsize=32768,suid

Linux x86#

rw,bg,hard,nointr,rsize=32768,

wsize=32768,tcp, vers=3,

timeo=600, actimeo=0

rw,bg,hard,nointr,rsize=32768,

wsize=32768,tcp,actimeo=0,

vers=3,timeo=600

rw,bg,hard,nointr,rsize=32768,

wsize=32768,tcp,noac,vers=3,

timeo=600

Linux x86-64 #

rw,bg,hard,nointr,rsize=32768,

wsize=32768,tcp,vers=3,

timeo=600, actimeo=0

rw,bg,hard,nointr,rsize=32768,

wsize=32768,tcp,actimeo=0,

vers=3,timeo=600

rw,bg,hard,nointr,rsize=32768,

wsize=32768,tcp,vers=3,

timeo=600,noac

Linux x86-64 #

rw,bg,hard,nointr,rsize=32768,

wsize=32768,tcp,vers=3,

timeo=600, actimeo=0

rw,bg,hard,nointr,rsize=32768,

wsize=32768,tcp,actimeo=0,

vers=3,timeo=600

rw,bg,hard,nointr,rsize=32768,

wsize=32768,tcp,noac,vers=3,

timeo=600

根据BUG 5856342,在RAC使用网络存储设备,操作系统为linux X86或者X86_64,

oracle版本低于10.2.0.4的情况下,必需设置初始化参数

filesystemio_options = DIRECTIO

在单实例(single-Instance)情况下的对照表

Operating System

Mount options for Binaries

Mount options for Oracle Datafiles

Sun Solaris *

(8, 9, 10)

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,nointr,

proto=tcp,suid

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,[forcedirectio or llock],

nointr,proto=tcp,suid

AIX (5L) **

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,intr,

timeo=600,proto=tcp

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,cio,intr,

timeo=600,proto=tcp

HPUX 11.23 ****

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,nointr,

timeo=600,proto=tcp,suid

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,nointr,

timeo=600,proto=tcp,suid

Linux x86

#

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,nointr,

timeo=600,tcp

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,nointr,

timeo=600,tcp,actime=0*

Linux x86-64 #

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,nointr,

timeo=600,tcp

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,nointr,

timeo=600,tcp,actime=0*

Linux–Itanium

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,nointr,

timeo=600,tcp

rw,bg,hard,rsize=32768,

wsize=32768,vers=3,nointr,

timeo=600,tcp

其中acime=0*,*代表也可以使用noac

我们的操作系统为linux X86.所以可以root帐号执行以下语句来挂载

Shell> mount –t nfs

–orw,bg,hard,rsize=32768,wsize=32768,vers=3,nointr,timeo=600,tcp

10.10.100.14:/home/oracle/aa /14dir;

2必需启动的服务

注意:ORACLE直接归档到nfs的时候必需启动nfslocked 服务,这个服务通常与rfs.statd同时启动。在server和client都需要,否则归档时会出现如下的错误。

ORA-19504: failed to create file

"/u03/245dir/1_8665_567259761.dbf"

ORA-27086: unable to lock file - already in use

Linux Error: 37: No locks available

Additional information: 10

3修改归档位置

直接修改归档参数就可以了

ALTER

SYSTEM SET LOG_ARCHIVE_DEST_2=’LOCATION=/14dir’;

后续处理

1修改/ETC/fstab文件实现自动挂载

为了避免系统重启需手动挂载NFS,可修改/etc/fstab文件来实现自动挂载。

使用root来编辑,加入一行

10.10.100.14:/home/oracle/aa /14dir

nfs rw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,vers=3,timeo=600,actimeo=0

0 0

2将必需的服务设定为自动启动

客户端需要设置portmap,nfslock自动启动。可以用setup工具来实现。

服务端配置portmap,nfs,nfslock自动启动。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值