按正常步骤在ubuntu12.04上安装好oracle11g后,要想正常使用还有若干问题需要注意。
分区挂载不正确,导致oracle实例不能成功启动运行,表现为sql无法执行
出现此错误的原因是,ubuntu12.04挂载
/dev/shm
出错,在终端执行df -h /dev/shm查看,出现如下结果:1
2
3root@sumory:~# df -h /dev/shm
Filesystem Size Used Avail Use% Mounted on
shmfs 2.0G 610M 1.5G 30% /run/shm最后一项,Mounted on(/run/shm),问题就出在这里了,在ubuntu12.04中,/dev/shm是一个指向/run/shm的连接,可以用以下方式修复:
1
2
3
4rm /dev/shm
mkdir /dev/shm
mount -t tmpfs shmfs -o size=2048m /dev/shm #具体参数含义google之
df –h /dev/shm #查看Mounted on一项为/dev/shm,则表明正确配置接着 cd /u01/app/oracle/product/11.2.0/xe/bin, 然后执行./lsnrctl start
之后,转到oracle用户:
1
2
3
4
5su - oracle
sqlplus / as sysdba
#进入sql命令行,然后
shutdown immediate
startup这样oracle实例就正确启动,并在端口监听了。
oracle占用8080端口,oracle是这么的脑残,使用以下方法更改
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18SQL> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),
2 '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()',8081))
3 /
Call completed.
SQL> commit
2 ;
Commit complete.
SQL> exec dbms_xdb.cfg_refresh;
PL/SQL procedure successfully completed.
SQL> select dbms_xdb.cfg_get from dual;
root@sumory:~# netstat –ntlp 检查,发现已改为8081ORA-25153错误,也就是temp文件问题
1
2
3select * from v$tempfile; --发现临时文件丢失
#指定临时文件
alter tablespace temp add tempfile '/u01/app/oracle/oradata/XE/temp01.dbf' size 1024M autoextend off;