日期:2014-05-16  浏览次数:20416 次

Oracle数据库 基础 创建数据库(手工脚本)


一、概念

?? 一个Oracle数据库,最基本的构成(逻辑):

  1. (1)system表空间????? 1个????--> # 用于存贮“数据字典”
  2. (2)sysaux表空间????? 1个????--> # 用于存贮“不属于数据字典,但Oracle管理所需要的表”
  3. (3)redo log日志???? 2组 ? --> # 用于“记录所有已提交数据及动作”
  4. ????????????????????????????????? a. 需要至少2组,一组写满后,切换到另一组。
    ???????????????????????????????????这时可以对已写满的这一组日志进行备份,备份后清空给下一次使用]
  5. ???????????????????????????????? ?b. 一组中可以有多份日志,但它们的内容是完全相同的。这样就不用担心因
    ?????????????????????????????????? 为某一个日志文件出问题而影响以后在恢复过程中的使用。
  1. (4)临时表空间?????? 1个  ?--> # 用于“内存排序”时,工作区空间不够时使用
  2. (5)undo表空间?????? 1个?????? --> # 用于“回退存储在磁盘上的未提交的数据”

?

二、实践

  1. create database {ORACLE_NAME}  ?? --> # 数据库名,一般与ORACLE_SID相同
  2. user sys identified by {密码}????????????????? --> # 不设置,则默认为“change_on_install”
  3. user system identified by {密码}????????????--> # 不设置,则默认为“manager”
  4. maxlogfiles 5??????????????????????????????????????????--> # 最大日志组数
  5. maxlogmembers 5??????????????????????????????????--> # 日志组中最多成员数
  6. maxloghistory 1??????????????????????????????????????--> #RAC环境下有效,暂不深入)
  7. maxdatafiles 100????????????????????????????????????--> # 最大数据文件数(与“DB_FILES”之间的关系?)
    ????????????????????????????????????????????????????????????// 9i后,由DB_FILES参数来控制“最大数据文件数”。这个参数名存实亡。
  8. logfile group 1 ('/u01/app/oracle/oradata/orcl/redo01a.log',
    ????????????????
    '/u01/app/oracle/oradata/orcl/redo01b.log',
    ?????????????????
    '/u01/app/oracle/oradata/orcl/redo01c.log') size 20M,
  9. ????????group 2 ('/u01/app/oracle/oradata/orcl/redo02a.log',
    ????????????????
    '/u01/app/oracle/oradata/orcl/redo02b.log',
    ????????????????
    '/u01/ap