oracle常见问题解决.ppt_第1页
oracle常见问题解决.ppt_第2页
oracle常见问题解决.ppt_第3页
oracle常见问题解决.ppt_第4页
oracle常见问题解决.ppt_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Welcome,李云凌 Oracle公司广州办事处技术支持部,问题:如果误删了某个datafile,数据库起不来怎么办? 解决: sqldba connect internal startup mount alter database datafile filename offline drop alter database open 备份Tablespace中的数据,问题:如果误删了redo log文件,数据库起不来怎么办? 解决: 如果删掉的日志文件为Inactive sqldbastartup mount sqldbaalter database drop logfile filename sqldbaalter database add logfile filename recover database until cancel CONTINUE,CONTINUE alter database open reset logs 如果删掉的日志文件为current 或active, 联系oracle 的技术支持部门,然后采取相应的措施,问题:如何修改数据库的名字? 解决: sqldbaalter database backup controfile to trace; 在?/rdbms/log目录下,找到最新生成的trace文件ora_nnnn.trc, nnnn表示一个数字 Edit该trace文件,找到create controlfile命令 ,存于 一个文件ccf.sql 修改旧命令为: create controlfile set database newdbname resetlogs CONTINUE,CONTINUE 备份所有旧的control file 编辑initsid.ora, 修改db_name=newdbname sqldbastartup nomount sqldbaccf sqldbaalter database open,问题:如何修改SID? 解决: 修改环境变量ORACLE_SID = newsid mv init.ora init.ora,问题:DBA如何得知某一user/process所执行的sql语句的具体内容? 解决: select saddr, user_name, sql_text from v$open_cursor where user_name = ,问题:DBA如何区分v$session中windows client的osuser? 解决: 在oracle.ini文件中加入 USERNAME= 或 USERNAME= sqldbaselect saddr,osuser from v$session; 可通过saddr在v$cursor中查出该用户所执行的SQL语句,问题:如何得知tablespace的剩余空间有多少? 解决: select sum(bytes), sum(blocks) from sys.dba_free_space where tablespace_name = tbsname,问题:如何为一个Transaction指定Rollback Segment? 解决: set transaction use rollback segment rollback_segs 原则: OLTP或小的transaction指定到小的rollback segment 大数据量修改的transaction指定到大的rollback segment 修改正在进行长查询的table的transaction指定到大的rollback segment,问题:如何做online backup? 解决: database 必须使用archivelog mode sqldbaalter tablespace begin backup 使用操作系统命令备份属于该tablespace的datafiles sqldbaalter tablespace end backup,问题:为什么有时非oracle用户不能使用oracle? 解决: 检查?/bin/oracle的mode是否为4751 检查.profile文件中是否设置环境变量 ORACLE_HOME ORACLE_SID ORACLE_TERM PATH,问题:为什么有时输入的汉字查询出来是问号? 原因:Client端和Server端字符集设置不一致 解决: 检查Server的字符的设置 select value from nls_database_parameters where parameter=NLS_CHARACTERSET 使client端的字符集设置与Server端相同 unix: 环境变量NLS_LANG windows: 在oracle.ini文件这设置NLS_LANG NLS_LANG=American_America.zhs16cgb231280,问题:如何手工进行relink? 解决: cd ?/rdbms/lib make -f oracle.mk install cd ?/sqlplus/lib make -f sqlplus.mk install,问题:当启动一个非正常关闭的数据库时,出现 oracle 正在运行,请先关闭它? 怎么办? 原因:数据库启动后,会在?/dbs目录下产生一个 名为 sgadefsid.dbf的文件,当oracle 非正常关闭时, 该文件没有被删除,导致重新启 动oracle时出错 解决:手工删除sgadefsid.dbf文件,然后启动数据库,问题:如何解决DBA-314错误? 错误:不能attach到缺省主机 原因:缺省主机设置不正确 解决: 检查环境变量是否设置正确 ORACLE_SID ORACLE_HOME 检查oracle用户是否属于DBA组 检查oracle可执行文件是否被破坏,relink,问题:如果一个rollback segment的状态为Need Recovery怎么办? Need Recover 表示oracle试图回退一个事务表中的没有提交的事务时失败 原因: 所涉及的目标属于一个offline的datafile或tablespace undo涉及的目标被破坏或rollback segment被破坏 CONTINUE,CONTINUE 解决: 确认所有的tablespace和datafile都online,如果不能解决则做以下的步骤 在initsid.ora中加入 event=?0015 trace name context forever level 10 shutdown数据库然后重新启动 在?/rdbms/log找到startup时生成的trace file, 在trace file中,可找到下列信息: error recover tx(#,#) object #,CONTINUE 根据object #在sys.dba_objects表中查出该object的 名字 将该object drop掉 在initsid.ora文件中删去event,shutdown数据库然后重新启动 如果问题仍没有解决,则需恢复rollback segment,问题:如何把一个User的Schema从一个Tablespace移到另一个Tablespace? 解决: 将用户的Schema export出来 Drop原来的用户 在新的Tablespace中重新建用户 将用户的Schema import到新建用户中,问题:如何解决ORA-1547错? 错误:在某个tablespace中无法申请一个指定size的extent 原因: 在Import时无法继续分配Rollback Segment Tablespace中没有足够的空余连续空间 解决 Import时指定参数Commit=y, 设置大的Buffer 检查剩余空间 sys.dba_free_space 增加datafile 调整storage参数,问题:如何解决sqlplus注册时出现Warning:Profile Information are not load? 原因:Product和User Profile Table 没有生成 解决: sqlplus system/manager SQL?/sqlplus/admin/pupbld.sql,问题:如何减少GPF的发生? 原因:windows系统资源(内存)降低导致GPF 解决: 减少windows系统资源的使用以防止出现GPF 避免同时打开多个应用 减少装载到windows中的font个数 windows wallpaper 使用最新的video/network driver 避免在不同的目录下有相同的动态连接库(.dll) CONTINUE,CONTINUE 出现GPF后的解决方法: reboot 检查文件系统是否有文件被破坏 SCANDISK/CHKDSK HIMEM.SYS和EMM386.SYS必须在其他driver之前装载,而且不要装载到高端内存 在autoexec.bat中设置环境变量 SET TEMP=C:TEMP 在autoexec.bat中删除SHARE.EXE, 在SYSTEM.INI中用 VSHARE.386代替 CONTINUE,CONTINUE 在CONFIG.SYS, 设置: BUFFERS=60, 0 FILES=60 如果上述方法不能解决问题,请联系Oracle技术支持部门,问题:pro*c 1.5 for windows在字符集为zhs16cgb231280 环境下如何进行编译才能防止出现GPF? 解决: 将字符集(NLS_LANG)设为US7ASCII 编译 将字符集改回为ZHS16CGB231280 运行,问题:在developer 2000中,如何用ctrl-c中断查询? 解决: 在oracle.ini文件中加入参数: CNTL_BREAK = ON,问题:如何得知oracle可执行文件连接的sql*net v1 driver和sql*net v2 adapter 解决: 在$ORACLE_HOME/bin下 $ drivers oracle 查sql*net v1 driver $ adapters

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论