一直都在oracle 10G下以裸设备方式手工建库,今天尝试在oracle 9i下同样以裸设备方式手工建库,遇到点麻烦,不过好一番折腾之后,
一直都在Oracle 10G下以裸设备方式手工建库,今天尝试在oracle 9i下同样以裸设备方式手工建库,遇到点麻烦,不过好一番折腾之后,终于还是解决了,详尽记录如下。
一直都在oracle10G下以裸设备方式手工建库,今天尝试在oracle9i下同样以裸设备方式手工建库,遇到点麻烦,不过好一番折腾之后,终于还是解决了,详尽记录如下。
首先在卷组vg00下建好oracle9i所需的裸设备文件,然后以oracle用户登陆到图形界面,打开dbca程序,通过手工指定裸设备文件及路径的方式来创建数据文件、控制文件以及日志文件,结果在安装的时候系统报错如下:
这个错误所提示的消息就是系统并没有使用裸设备,,而直接使用文件系统的方式来创建数据库,所以提示空间不够,如果硬要往下安装,其结果只能是失败。
在oracle10G跟oracle9i里使用dbca安装数据库时有一点不同之处,在oracle10G中,系统会明确的询问你,在建库的时候是使用文件系统的方式还是使用裸设备的方式,如下图所示:
在这幅图里面,如果选择“file system”,那么表示以文件系统的方式进行数据库的安装,这种方式一般在做实验的时候用,图方便。生产环境中,大多使用裸设备方式建库,也就是这里的“raw devices”。选择了之后, 【 Linux公社 】 可以采取使用map的方法实现把要建的表名称跟对应的裸设备路径写到文本文件中,然后通过映射这个文件里面的内容来进行表空间的划分,还有一种方法就是手工指定,这种方法使用得比较普遍。
那么,oracle9i中没有这样的选项,但oracle官方又没有说9i里面不能使用裸设备来建库,怎么办?这里不得不提到一个叫“DBCA_RAW_CONFIG”的参数,可以通过在操作系统中定义这个参数的值对应映射文件,然后将这个值写入oracle用户的环境变量中,从而实现在建库的时候使用裸设备的方式进行安装。