oracle基础知识(笔记)

http://blog.csdn.net/gh57897053/archive/2009/03/20/4006397.aspx

一.oracle一些目录路径和文件作用

oracle_base路径 d:/oracle/product/10.2.0/

oracle_home d:/oracle/product/10.2.0/db_1

可执行程序路径 d:/oracle/product/10.2.0/db_1/bin

net8 配置文件目录 d:/oracle/product/10.2.0/db_1/network/admin

数据库创建脚本的目录 d:/oracle/product/10.2.0/admin/dump

默认数据库文件路径 d:/oracle/product/10.2.0/oradata/SID   (有3种类型的文件:ctl、dbf、log)
控制文件ctl有3个做镜像,重做日志文件3个轮流写

密码文件路径  oracle_home/database/PWDSid.ora (如sys链接数据库时使用的密码,用于客户端)
如果忘记sysdba组成员密码,可以删除这个文件,然后使用(命令在bin下,不在sqlplus):
orapwd file=oracle_home/database/pwdSID.ora password=admin123
重新创建密码文件,并重设密码。


参数文件路径

1.oracle_home/database/initSid.ora(pfile文本文件,修改文件后重启数据库生效)
2.oracle_home/dbs/spfileSid.ora(二进制文件,修改后直接生效)

可以使用create pfile from spfile来转换,直接使用pfile文件而不用spfile;在做集群时需要

把参数文件拷贝到共享磁盘。


数据库日志  oracle_base/admin/SID/adump
                                                       bdump 后台错误日志 有个alert_SID.log 使用ora-搜索错误
                                                       cdump 内核日志,如果存在日志,说明数据库有问题
                                                       udump 用户
                                                       dpdump
                                                       pfile 备份参数文件


二.数据库的启动与关闭过程


启动:


1.startup nomount 例程启动(加载参数文件pfile或spfile,主要是分配内存,启动进程)

可以使用show parameter spfile命令来确认数据库是用哪种参数文件(有vlaue值,就是用spfile)

2.alter database mount 挂载数据库(使用控制文件)  (使用startup mount命令同时执行了步骤1、2)
3.alter database open     开启数据库     (使用startup命令同时执行了1、2、3)


出现tns错误:   后台oracleserviceSID服务没开

3113错误:      没有connect / as sysdba


测试数据库是否连接成功?
不能用connect sys/*** as sysdba因为你是最高管理员,无论何时都会显示连接(有可能只到mount状态)所以我们最好不要用sysdba组的用户去登入验证(例如可以用system)这样才能正确的去验证数据库是否连接成功。


关闭:


使用shutdoem immediate 命令(在关闭前做数据回滚动作)
显示:
1.数据库已经关闭
2.已经卸载数据库
3.oracle例程已经关闭

说明关闭数据库时与启动的过程是互逆的。


注:shutdown  abort强制性瞬间关闭数据库,在下次数据库开机时再做回滚动作。有可能导致数据库文件损坏!


三.查看控制文件的方法


alter database backup controlfile to trace 把控制文件的内容存在udump中,做成跟踪文件


四.归档相关命令


alter database archivelog 打开归档模式,要在mount状态下执行
alter database noarchivelog
alter log list 查看是否打开归档以及归档路径
alter system archive log current; 执行当前归档
alter system set log_archie_est_1='location=e:/archive' 设置归档路径


五.数据备份


1.冷备

2.exp/imp 逻辑备份。

3.物理备份-热备(一定要开启归档模式)
alter database  begin  backup
在这种情况下我们可以直接拷贝数据库文件,数据不直接往数据库里面写,而是直接写到联机日志里面,如果联机日志满的话它就自动写到归档日志里面。
alter database  end  backup
在这种情况下,我们需要等待一段时间。让数据库执行联机日志,恢复数据库最新状态
连续执行几次alter  system  archive log  current
4.RMAN

热备举例:
sqlplus  /nolog
connect  sys/123  as  sysdba
alter database  begin  backup
host  copy  d:/oracle/product/10.2.0/orcledata/orcl/*.dbf   f:/oradata/*.dbf;
alter  database  end  backup

创建oracleservice-sid服务
oradim -new -scid  orcl1
创建并拷贝参数文件到database里面
create   pfile='c:/initorcl1.ora'  from spfile
修改参数文件里面的控制文件路径和日志文件路径以及数据库名

oracle默认是连接到oracle_sid的数据库
我们可以去修改注册表
当然我们也可以在CMD下设置
set ORACLE_SID=new_sid  只在当前会话生效

创建密码文件
这个命令在cmd下执行
orapwd  file=oracle_home/database/PWDorcl1.ora     password=admin123   entries=5

执行startup  nomount

创建控制文件
回到之前的ORCL数据库里面创建一个控制文件
sql>alter database  backup  controlfile  to  trace
使用Tracel要到Udunmp里面去查看最新的生产文件
打开那个文件查看里面的代码:
修改里面的路径

再回到orcl1 的地方执行修改完的代码
SQL>
create  controlfile  set  dtabase   "orcl1"  resetlogs   archivelog
和相应的路径

做介质恢复
set logsource  'F:/oradata/archivelog';
recover database using  backup  controlfile;

去之前的数据库里面执行
连续执行几次alter  system  archive log  current
然后把相应的归档日志拷贝过来

alter database  open resetlogs

connect instance_name  from  v$instance

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值