Oracle数据库 基础 创建数据库(手工脚本)
一、概念
?? 一个Oracle数据库,最基本的构成(逻辑):
- (1)system表空间????? 1个????--> # 用于存贮“数据字典”
- (2)sysaux表空间????? 1个????--> # 用于存贮“不属于数据字典,但Oracle管理所需要的表”
- (3)redo log日志???? 2组 ? --> # 用于“记录所有已提交数据及动作”
- ????????????????????????????????? a. 需要至少2组,一组写满后,切换到另一组。
???????????????????????????????????这时可以对已写满的这一组日志进行备份,备份后清空给下一次使用]
- ???????????????????????????????? ?b. 一组中可以有多份日志,但它们的内容是完全相同的。这样就不用担心因
?????????????????????????????????? 为某一个日志文件出问题而影响以后在恢复过程中的使用。
- (4)临时表空间?????? 1个 ?--> # 用于“内存排序”时,工作区空间不够时使用
- (5)undo表空间?????? 1个?????? --> # 用于“回退存储在磁盘上的未提交的数据”
?
二、实践
- create database {ORACLE_NAME} ?? --> # 数据库名,一般与ORACLE_SID相同
- user sys identified by {密码}????????????????? --> # 不设置,则默认为“change_on_install”
- user system identified by {密码}????????????--> # 不设置,则默认为“manager”
- maxlogfiles 5??????????????????????????????????????????--> # 最大日志组数
- maxlogmembers 5??????????????????????????????????--> # 日志组中最多成员数
- maxloghistory 1??????????????????????????????????????--> #(RAC环境下有效,暂不深入)
- maxdatafiles 100????????????????????????????????????--> # 最大数据文件数(与“DB_FILES”之间的关系?)
????????????????????????????????????????????????????????????// 9i后,由DB_FILES参数来控制“最大数据文件数”。这个参数名存实亡。
- 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,
- ????????group 2 ('/u01/app/oracle/oradata/orcl/redo02a.log',
???????????????? '/u01/app/oracle/oradata/orcl/redo02b.log',
???????????????? '/u01/ap