oracle起动和关闭详解

实例
    1.启动oracle server.
  
  startup[nomount|mount|open][force][pfile=filename]

  参数说明:

  nomount:只启动实例

  mount:启动实例,并装载数据库

  open:启动实例,装载并打开数据库。

  force:终止实例,并重新启动数据库。(默认选项)

  pfile:指定非默认参数文件名。

  2.停止oracle server

  shutdown [normal|transactional|immediate|abort]

  参数说明:

  normal:等待用户断开已存在连接,系统发出检查点,然后在同步数据文件、控制文

  和重做日志文件之后关闭(默认选项)

  transactional:等待客户端结束事务之后,自动断开用户连接,然后再执行normal。
  
  immediate:取消当前所有sql语句,回退所有未完成事务,然后自动断开,再执行normal。

  abort:终止所有sql语句,立即终止实例。不会发出检查点,所以也就不会去同步数据文件、控制文件和重做日志文件。

  3. 总结和相关的一些脚本

  a. 修改数据文件名、执行完全恢复、执行不完全恢复、改变日志操作模式时系统必须在启动实例并安装数据库的情况下startup mount;)
  
  b. 创建数据库或创建控制文件时系统只处于启动实例状态(startup nomount;)

  c. 显示sga尺寸(show sga或select * from v$sga)

  d.显示当前正在运行的后台进程(select name from v$bgprocess where paddr != ‘00’)

  e. 显示oracle server状态(select status from v$instance)

  f. 显示初始化参数信息(select * from v$parameter);

  g.显示物理文件(select * from v$controfile; select * from v$datafile; select * from v$logfile);

    h. 部分数据字典试图:

  all_objects, user_objects, dba_objects, user_source, user_segments,

  user_tab_columns, user_constraints, all_users

  i.为了客户应用可以访问oracle server,在服务器端需要配置listener.ora文件,在客户端需配置tnsnames.ora文件

  第三章 控制文件

  1.控制文件主要记载的信息:

  数据库名称;数据库文件名称和位置;重做日志文件名称和位置;表空间名称;

  当前日志序列号; 检查点信息; 日志历史信息。

  2. 多元化控制文件

      1. 关闭数据库

      sqlplus/nolog;

      connect system/admin@lgtest as sysdba;

      shutdown immediate;

      2. 复制控制文件
  
      copy source controlfile to dest controlfile

      例如:copy e:\oracle\oradata\lgtest\control01.ctl f:\controltest.ctl

      3. 修改初始化参数control_files
  
      control_files= e:\oracle\oradata\lgtest\control01.ctl, f:\controltest.ctl
  
      4. 启动数据库
  
      startup pfile= e:\oracle\admin\lgtest\pfile\ init.ora.108200317263

      其作用:多元化控制文件后,只要有一个控制文件没有被损坏,把其它损坏的控制文件从初始化参数文件中去掉重启之后系统可以继续运行。


    3. 重建控制文件的方法

      1. 以nomount方式启动实例

      sqlplus/nolog;

      connect system/admin@lgtest as sysdba;

      shutdown normal;

      startup nomount pfile=%racle_home%\database\init.ora;

      2. 建立控制文件

      create controlfile reuse database lgtest resetlogs

      logfile
  
      group 1 ‘e:\oracle\oradata\lgtest\ redo01.log’ size 20m,
  
      group 2 ‘e:\oracle\oradata\lgtest\ redo02.log’ size 20m
  
      datafile
  
     ‘e:\oracle\oradata\lgtest\ system01.dbf’,
  
     ‘e:\oracle\oradata\lgtest\ undotbs01.dbf’
  
      character set zhs16gbk;
  
  3. 打开数据库
  
      alter database open resetlogs;
  
  4. 增加临时文件

      a lter tablespace temp add tempfile ‘e:\oracle\oradata\lgtest\temp01.dbf’ reuse;

  起作用:当控制文件都被损坏后,只要有全部的数据文件和重做日志文件,那么通过重建控制文件可以使系统继续运行。