linux下oracle缺少wmsys.wm_concat函数,执行创建视图的时候报错:ORA-00904
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下oracle缺少wmsys.wm_concat函数,执行创建视图的时候报错:ORA-00904相关的知识,希望对你有一定的参考价值。
错误提示:ORA-00904:"wmsys.wm_concat":invalid identified;同样的语句在windows环境下的oracle能成功执行,linux下就报错,求在linux下安装该函数的方法(不要重装,linux现在是生产环境,重装工程太浩大)
你linux下oracle是什么版本? windows下oracle是什么版本?wmsys.wm_concat这个函数是oracle内部用的,不给开发的人用的, 在一些新版本中这个函数被去掉了,不给外人用了。追问
Linux和windows下Oracle的版本都是10g
追答http://www.askmaclean.com/archives/wmsys-wm_concat.html
追问太高深了,本人只是懂一点Oracle的应用皮毛,按照链接里那样创建函数没那能力,我网上查了资料,说是需要用SQLPLUS执行下一下几个脚本就可以了。
owmctab.plb;
owmaggrs.plb
owmaggrb.plb
可是Linux里Oracle的这几个脚本不知道在什么路劲下面
你搞错了吧, 不需要能力, 脚本都给你了,执行下不会?
追问plb脚本路径一找到,怎么执行,求详细步骤,我用Xshell链接了Linux,su - oracle 登陆了oracle,还使用了system用户登陆了SQL,但是用 ./..../owmctab.plb 执行时提示没有文件,plb文件已经赋予了权限。
追答不需要那个脚本, 上面的地址给了你脚本全文了。
参考技术A 你确认一下你oracle的版本这个是在10g以后才引用的,看看你linux的oracle版本追问
Oracle是10G的,操作系统是RedHat6.3的
追答你有执行不成功的截图吗
linux系统下设置oracle开机自动启动
在Linux系统中,安装好oracle数据库服务后,并不像在Windows系统下一样,oracle服务在默认情况下会随系统的启动自动启动。Linux系统中,是需要用户去手动进行设置,才能实现oracle开机自动启动的。本文将一步一步教你如何进行设置。
安装好oracle的linux系统(以rhel7.4、Oracle 11g为例)
方法/步骤
1、前提条件:你已经在Linux系统中正确安装好oracle服务,使用手动方式可以正常启动。
查看ORACLE_HOME是否设置
$ echo $ORACLE_HOME
/u01/app/oracle/product/11.2.0/dbhome_1
执行dbstart 数据库自带启动脚本
[[email protected] ~]$ cd $ORACLE_HOME
[[email protected] dbhome_1]$ cd bin/
[[email protected] bin]$ dbstart
ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener Usage:
/u01/app/oracle/product/11.2.0/db_1/bin/dbstart ORACLE_HOME
错误提示:ORACLE_HOME_LISTNER 没有设置
[[email protected] bin]$ ll | grep dbs
-rwxr-x---. 1 oracle oinstall 6088 1月 1 2000 dbshut
-rwxr-x---. 1 oracle oinstall 13892 12月 11 16:01 dbstart
编辑 dbstart,将ORACLE_HOME_LISTNER=$1修改成 ORACLE_HOME_LISTNER=$ORACLE_HOME
前提是$ORACLE_HOME环境设置正确
[[email protected] bin]$ vi dbstart
ORACLE_HOME_LISTNER=/u01/app/oracle/product/11.2.0/dbhome_1
2、使用vi编辑器编辑文件/etc/oratab
dbca建库时都会自动创建/etc/oratab文件
#vi /etc/oratab
将“orcl:/u01/app/oracle/product/12.1.0/dbhome_1:N”,
改为“orcl:/u01/app/oracle/product/12.1.0/dbhome_1:Y”。
修改完成后,保存退出
**说明:**orcl为实例名;/u01/app/oracle/product/12.1.0/dbhome1为oracle安装目录;会因安装的情况不同而有所不同。
3、编辑/etc/rc.d/rc.local启动文件,添加数据库启动脚本dbstart
#vi /etc/rc.d/rc.local
末尾添加:
su oracle -lc "/u01/app/oracle/product/12.1.0/dbhome_1/bin/lsnrctl start"
su oracle -lc /u01/app/oracle/product/12.1.0/dbhome_1/bin/dbstart
**说明:**/u01/app/oracle/product/12.1.0/dbhome1为oracle的安装目录,要根据实际情况进行修改。
4、重启主机,查看数据库和监听是自启动
以上是关于linux下oracle缺少wmsys.wm_concat函数,执行创建视图的时候报错:ORA-00904的主要内容,如果未能解决你的问题,请参考以下文章