Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1117961
  • 博文数量: 231
  • 博客积分: 2500
  • 博客等级: 少校
  • 技术积分: 2662
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-03 16:35
个人简介

学无止境

文章分类

全部博文(231)

文章存档

2014年(7)

2013年(103)

2011年(11)

2010年(53)

2009年(57)

分类: Oracle

2013-08-19 09:41:00

建库的方法:
1.使用DBCA图形化界面建库。
2.使用CREATE DATABASE命令,在命令行界面下建库。
 
建库前需要考虑的问题:
1.评估数据库所需的空间大小。根据建库的经验,需要考虑好SYSTEM表空间、SYSAUX表空间,UNDO表空间,TEMP表空间,controlfile,redo log,其它的包括USERS表空间这些大小,其它业务表空间可以在数据库建好之后,结合业务需要考虑。
2.数据文件和redo log,controlfile在操作系统上的存放位置。如数据文件和redo log分布在不同的磁盘上,减少IO瓶颈。控制文件的镜像放置在不同位置,增加安全性。
3.考虑是否使用ASM和ORACLE自动文件管理。
4.选择global database name,建库时需要设置DB_NAME和DB_DOMAIN参数。DB_NAME是必须要设置的。
5.选择数据库的字符集,包括character set和national character set,主要考虑character set,结合国家,语言,客户端,操作系统,应用来考虑。
6.时区,一般按默认就可以,ORACLE会选择2个时区文件中的1个,这一点,通常在建库时不需要考虑。
7.选择数据库标准块大小,即DB_BLOCK_SIZE参数
8.决定SYSTEM和SYSAUX表空间初始大小。
9.决定持久表空间,用于存放非系统用户数据。
10.决定UNDO表空间。
11.考虑备份和恢复,如控制文件副本,归档日志,数据库备份目录等。
 
 
手动建库步骤:
1.设置SID。可以设置到profile文件中,再使其生效。或者用export、setenv命令设置。windows环境,还需要先创建一个ORACLE服务,用oradim命令。

2.创建password file,用orapwd命令,密码文件位置放置在$ORACLE_HOME/dbs下,windows在%ORACLE_HOME%\database下,密码文件命名规则为orapw$SID
  例如:orapwd file=orapwtest password=oracle entries=10
 
3.创建pfile,pfile文件可以通过$ORACLE_HOME/dbs/init.ora复制一个修改,例如要创建一个test数据库的pfile:cat init.ora | grep -v ^# | grep -v ^$ >inittest.ora
  参数文件主要考虑以下参数,OCM考试参数有陷阱,需要看清题目要求。
  db_name = test
  processes = 150
  control_files = (xxxx,xxxx)
  db_block_size = 8192
  sga_target = 300m
  log_buffer = 50000000
  undo_management = auto
  undo_tablespace = undotbs
  background_dump_dest =
  core_dump_dest =
  user_dump_dest =
  db_create_file_dest = 考题中要求你创建数据文件时存放的目录
  db_create_online_log_dest_1 = 考题中要求你创建联机重做日志文件时存放的目录
 
4.连接到实例,创建spfile。
  SQLPLUS /nolog
  CONNECT SYS/password as sysdba
  CREATE SPFILE FROM PFILE;
 
5.启动到nomount状态
  startup nomount;
 
6.执行CREATE DATABASE命令。可以参考以下这条命令,要修改其中的SYS密码,文件位置,字符集,一些MAX的设置,undo表空间名,temp表空间名等。OCM考试如果没有要求执行后续的脚本,到这步section 0应该就算完成了。
  CREATE DATABASE mynewdb
   USER SYS IDENTIFIED BY pz6r58
   USER SYSTEM IDENTIFIED BY y1tz5p
   LOGFILE GROUP 1 ('/u01/oracle/oradata/mynewdb/redo01.log') SIZE 100M,
           GROUP 2 ('/u01/oracle/oradata/mynewdb/redo02.log') SIZE 100M,
           GROUP 3 ('/u01/oracle/oradata/mynewdb/redo03.log') SIZE 100M
   MAXLOGFILES 5
   MAXLOGMEMBERS 5
   MAXLOGHISTORY 1
   MAXDATAFILES 100
   MAXINSTANCES 1
   CHARACTER SET US7ASCII
   NATIONAL CHARACTER SET AL16UTF16
   DATAFILE '/u01/oracle/oradata/mynewdb/system01.dbf' SIZE 325M REUSE
   EXTENT MANAGEMENT LOCAL
   SYSAUX DATAFILE '/u01/oracle/oradata/mynewdb/sysaux01.dbf' SIZE 325M REUSE
   -- DEFAULT TABLESPACE tbs_1
   DEFAULT TEMPORARY TABLESPACE tempts1
      TEMPFILE '/u01/oracle/oradata/mynewdb/temp01.dbf'
      SIZE 20M REUSE
   UNDO TABLESPACE undotbs
      DATAFILE '/u01/oracle/oradata/mynewdb/undotbs01.dbf'
      SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

7.运行建立数据字典脚本,以下2个脚本是必须执行的:
  CONNECT SYS/password AS SYSDBA
  @?/rdbms/admin/catalog.sql
  @?/rdbms/admin/catproc.sql
  EXIT

  CATALOG.SQL脚本用于创建数据字典视图,动态视图,公有同义词。
  CATPROC.SQL脚本执行需要使用到的PL/SQL。
 
8.用SYS用户运行其他脚本,如catblock.sql catoctk.sql owminst.plb dbmspool.sql等,@?/sqlplus/admin/pupbld.sql这些脚本要用SYSTEM用户执行。
 
9.创建其他表空间,如数据表空间和索引表空间。
 
10.备份数据库。

 

阅读(649) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~