常见问题
问题1 :在SecureCRT等远程访问Linux的软件中,用Oracle用户运行./runInstaller 命令安装Oracle时,提示“DISPLAY尚未设置”、““DISPLAY尚未设置”等信息。
解决方法:实际上为oracle用户没有权限登陆X11图形化界面,且该远程访问软件不能登陆图形化界面。
✧方法一、执行su –oracle命令,再输入“./runInstaller”
命令安装数据库即可,因为Linux默认的运行级别即图形化界面,具体设
置如/etc/inittab文件里“id:5:initdefault:”,init5即代
表图形化界面。提示“Cannot convert string to type FontStruct”时,可以不用管它,随后在Linux操作系
统的窗口中弹出了Oracle的安装界面。
如果还是提示“DISPLAY尚未设置”、““DISPLAY尚未设置”等信息,请执行如下
命令:xhost +192.168.7.21,执行后提示“192.168.7.21
being added to access control list”时,表明用户可访
问Linux图形化界面了。
具体更复杂的设置参照: space.itpub/12778571/viewspace-353135
✧方法二、Xmanager软件则可以规避这个问题,它本身是个图形化
界面;运行./runInstaller命令即可成功安装Oracle 。
问题2 :如果在检测Oracle安装的先决条件的安装过程中,提示“gcc-3.2.2未安
装通过”,且执行“rpm -ivh gcc-3.2.3-52.i386.rpm”命令后,提示“warning: gcc-3.2.2-5.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e ;error: Failed dependencies:cpp = 3.2.2-5 is needed by gcc-3.2.2-5 ”。
解决方法:暂停对Oracle安装的弹出窗口的任何操作,然后在终端中依次执行如下命令,即可解决上述问题,rpm包“E:\Linux学习\Tomcat相关文档\Linux环境Oracle安装!!!\安装Oracle所需rpm包”目录下。
rpm -ivh glibc-kernheaders-2.4-8.10.i386.rpm
rpm -ivh glibc-devel-2.3.2-11.9.i386.rpm
rpm -ivh binutils-2.13.90.0.18-9.i386.rpm
rpm -ivh cpp-3.2.2-5.i386.rpm
rpm -ivh gcc-3.2.3-52.i386.rpm
上述命令成功执行后,重新检测Oracle的安装先决条件,然后再次执行安装即可。
问题3:执行lsnrctl start命令时,提示“lsnrctl start command not found”。
解决方法:上述问题实质是当前用户没有启动监听程序的权限,可以给Oracle安装目录赋予rwx权限,并将安装目录的所有者设置为oracle用户
和oinstall组。通过赋权方式解决“chown -R oracle:oinstall database 及chmod -R 777 database命令,赋予用户oracle可执行权限”。
问题4:在sqlplus环境下执行“startup”命令启动数据库后,提示如下信息“limit exceeded for recovery files”、“ora-00257 归档程序错误,在释放之前仅限于内部连接”或者其英文提示“ora-00257 archiver error. connect internal only until freed”。
解决方法:上述问题实质是Oracle数据库的快速恢复区的默认值过小,为2048MB,应该设置为“4096MB”即4G大小;具体解决方法有如下三种:oracle登录命令
✧方法一【推荐方法】:
转移或者删除闪回恢复区里的归档日志,但请保留最近几
日的归档日志。在sqlplus环境下,以“show parameter
db_recovery_file_dest;”【不能缺少分号,否则Oracle
程序不执行此语句】查询到db_recovery_file_dest为
/opt/app/oracle/flash_recovery【即可知归档日志的存
放位置用的是默认值,存放在flash_recovery_area闪回恢
复区目录下】, db_recovery_file_dest_size的大小为3G。
最后,在上述/opt/app/oracle/flash_recovery目录下的
各个实例名下,删除掉离当前日期较远的归档日志文件
archivelog。
删除归档日志文件后,必须用RMAN维护控制文件,否则空
间显示仍然不释放。具体步骤如下:
1、以oracle用户登陆终端,如su – oracle
2、以rman  target  sys/sys命令登陆到Recovery
Manager环境。
3、检查一些无用的archivelog
crosscheck  archivelog  all;
4、删除过期的archivelog
delete  expired  archivelog  all;
通过y/n来决定是否删除掉archivelog。
5、删除数据库服务器的系统时间前一天的archivelog
delete  archivelog  until  time  ‘sysdate-1’;
通过y/n来决定是否删除掉archivelog。
增大快速恢复区【闪回恢复区】大小:以su –oracle命令
登陆到sqlplus环境,如果查询到闪回恢复区
db_recovery_file_dest_size的大小为3G,则通过如下命
令“alter system set db_recovery_file_dest_size=4g
scope=both;”来增大闪回恢复区。最后,再用语句“show
parameter db_recovery_file_dest; ”查询闪回恢复区是
否成功地修改为4g大小。
方法二:更改归档日志文件目标路径到一个空间较大的路径,先用语句“show  parameter log_archive_dest;”查看归档日志目标路径参数。然后通过语句“alter  system  set  log_archive_dest=其它路径 scope=spfile”来修改目
标路径;修改完成后,再用语句“show  parameter
log_archive_dest;”查看归档日志目标路径是否成功
地修改。
问题5:启动数据库时,遇到ORA-00312、ORA-00313、ORA-00314、ORA-00334、ORA-00353和ORA-00354错误,如下所示:
ORA-00312: online log 3 thread 1: '/opt/oracle/db04/oradata/ORCL/redo01.log'  ORA-00313: open failed for members of log group 4 of thread 1
ORA-00314: log 2 of thread 1, expected sequence# doesn't match
ORA-00334: archived log: '/oracle/oradata/redo01.log',、“log 1 sequence can’t be archived”;
ORA-00353:log corruption near block 3740 change 0 time 04/11/2006 13:49:56  ORA-00354: corrupt redo log block header
解决方法:初始化损坏的redo.log文件
alter database clear unarchived logfile
'/oracle/oradata/TSMISC02/redo01.log';
问题6: Windows客户端中或者Linux服务器端中,使用impdp或者expdp命令时,可能会遇到如下报错信息:ORA-39006: internal error 【内部错误】和
ORA-39213: Metadata processing is not available 【元数据处理不可用】。
解决方法:源数据库的版本(比如Oracle10.2.0.1.0)比目标数据库(如Oracle10.1.0.2.0)的高,此问题实际上是Oracle的Bug,因为正常情况下

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。