在solaris 10上安装ORACLE 9I RAC,数据文件使用current lv,使用ln链接到一个文件系统,在建库时出现了报错:
该错误报的是该文件 is not a valid raw device,于是从该文件链接到 lv 开始排除故障,首先使用dd的方式,确保在oracle用户下可以对该文件写入和写出
写入测试
# su - oracle
$ dd if=/dev/zero f=/dev/did/rdsk/d1 bs=8192
写出测试
$ dd if=/dev/did/rdsk/d1 f=/dev/zero bs=8192
都是正常的,而且能在oracle用户下写入写出,说明权限也是没有问题的。觉得很奇怪,再次查看该错误,发现了一个问题, 如下,大家也许没有注意到,在该文件名和冒号之间出现了空格
e
这就是导致出现该问题的原因,由于dbca把该空格也当成了该文件的一部分,报这个错误也是属于正常的。但是空格是从哪里来的,想起使用的是DBCA_RAW_CONFIG文件,预先把lv与相关的spfile和datafile等的关系设置好,而这个dbca_raw_config文件是预先使用ultraedit编辑好,然后再拷贝到服务器上的,问题应该出在这里,查看dbca_raw_config,在编辑后,可能会有空格,拷贝时如下 Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4
于是就导致了出现刚才的错误,于是重新编辑该DBCA_RAW_CONFIG文件:
重新运行dbca,问题解决。
注:可能大部分的朋友和我一样有从ultraedit拷贝文件到服务器的习惯,这里提醒一下大家,拷贝时需要注意空格。
![bb](http://img.blog.itpub.net/blog/attachments/2009/01/786749_200901061030421.jpg?x-oss-process=style/bb)
该错误报的是该文件 is not a valid raw device,于是从该文件链接到 lv 开始排除故障,首先使用dd的方式,确保在oracle用户下可以对该文件写入和写出
写入测试
# su - oracle
$ dd if=/dev/zero f=/dev/did/rdsk/d1 bs=8192
写出测试
$ dd if=/dev/did/rdsk/d1 f=/dev/zero bs=8192
都是正常的,而且能在oracle用户下写入写出,说明权限也是没有问题的。觉得很奇怪,再次查看该错误,发现了一个问题, 如下,大家也许没有注意到,在该文件名和冒号之间出现了空格
![bb](http://img.blog.itpub.net/blog/attachments/2009/01/786749_200901061041101.jpg?x-oss-process=style/bb)
这就是导致出现该问题的原因,由于dbca把该空格也当成了该文件的一部分,报这个错误也是属于正常的。但是空格是从哪里来的,想起使用的是DBCA_RAW_CONFIG文件,预先把lv与相关的spfile和datafile等的关系设置好,而这个dbca_raw_config文件是预先使用ultraedit编辑好,然后再拷贝到服务器上的,问题应该出在这里,查看dbca_raw_config,在编辑后,可能会有空格,拷贝时如下 Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4
![bb](http://img.blog.itpub.net/blog/attachments/2009/01/786749_200901061047451.jpg?x-oss-process=style/bb)
于是就导致了出现刚才的错误,于是重新编辑该DBCA_RAW_CONFIG文件:
![bb](http://img.blog.itpub.net/blog/attachments/2009/01/786749_200901061050181.jpg?x-oss-process=style/bb)
重新运行dbca,问题解决。
注:可能大部分的朋友和我一样有从ultraedit拷贝文件到服务器的习惯,这里提醒一下大家,拷贝时需要注意空格。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/786749/viewspace-528590/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/786749/viewspace-528590/