ORA-00922
missing or invalid option 0RA-00922: 丢失或者无效的选项
Cause An invalid option was specified in
defining a column or storage clause. The valid option in specifying
a column is NOT NULL to specify that the column cannot contain any
NULL values. Only constraints may follow the datatype. Specifying a
maximum length on a DATE or LONG datatype also causes this
error. Action
Correct the syntax. Remove the erroneous option or length
specification from the column or storage
specification.
案例一:Oracle明文密码漏洞
受影响系统:
Oracle Oracle10g Application Server 9.0.4.0
Oracle Oracle10g Application Server 10.1.0.2
描述:
Oracle Database是一款商业性质大型数据库系统。
Oracle 10g存在包含明文密码的全局可读文件,本地攻击者可以利用这个漏洞获得对数据库的访问。
SYSMAN帐户的密码可在'$ORACLE_HOME/hostname_sid/sysman/config/emoms.properties'文件中获得,此文件全局可读。
另外如果安装Oracle 10g时提供SYS, SYSTEM, DBSNMP和SYSMAN
帐户密码相同,并且密码有惊叹号(如f00bar!!),那么当设置SYSMAN和DBSNMP密码时DB安装会出现错误,错误信息"postDBCreation.log"会记录密码:
alter user SYSMAN identified by f00bar!! account unlock
ERROR at line 1:
ORA-00922: missing or invalid option
alter user DBSNMP identified by f00bar!! account unlock
ERROR at line 1:
ORA-00922: missing or invalid option
可怜的我今天在安装Oracle
10g时就跳进了这个陷阱,在设置所有帐户密码相同并且密码中有感叹号,导致安装过程中报错,并且安装完成后OEM登录不上。
解决办法:
1.首先删除Oracle 10g,并且删除所有Oracle相关服务
cmd中使用 sc delete 服务名
2.重启计算机后检查所有服务已删除,之后安装Oracle,在帐户密码设置时不要加入感叹号。
3.安装完成,一切正常。