OCM考试-Create the database

登录机器后,先检查
电源是否插牢
鼠标键盘是否没问题
oralce用户的环境变量:ORACLE_BASE,ORACLE_HOME,ORACLE_SID,
oracle 10g的软件是否已经安装
联机文档是否能读取
我们假设奇数机(ODD)的主机名叫ocmdb1,偶数机(EVEN)的主机名叫ocmdb2,ORACLE_SID叫ocmdb
上午的第一天考试内容主要为创建一个数据库

开始安装数据库:
1、确定sid
2、创建alertlog等目录
3、确定初始化文件
4、生成密码文件
5、生成spfile和改参数
5、根据在线文档,找出并修改create database语句
6、startup nomount后,开始create database
7、catalog和catproc
时间在45分钟内需完成
8、rman备份

1、确定oracle的sid:
在linux主机上,applications -system tools -terminal
su – oracle
cd
vi .bash_profile
修改ORACLE_SID为ocmdb
保存退出
. .bash_profile 执行使之生效。用env |grep -i sid检查是否已经修改好

2、在$ORACLE_BASE下:
[oracle@ocmdb1 admin]$ mkdir -p ocmdb/bdump
[oracle@ocmdb1 admin]$ mkdir -p ocmdb/cdump
[oracle@ocmdb1 admin]$ mkdir -p ocmdb/udump
[oracle@ocmdb1 admin]$ mkdir -p ocmdb/adump

3、确定初始化文件
cd $ORACLE_HOME/dbs
cat init.ora |grep -v ^# |grep -v ^$>initocmdb.ora
vi initocmdb.ora
修改里面的db_name和controlfile
删除其他内存参数:db_block_buffers、shared_pool_size
增加sga_max_size和sga_target均为300M

db_name=ocmdb
control_files = (/oracle/app/oracle/oradata/ocmdb/cfile/ora_control1,/oracle/app/oracle/oradata/ocmdb/cfile/ora_control2,/oracle/app/oracle/oradata/ocmdb/cfile/control3)–这个为考试指定的目录
将sga_max_size和sga_target均为300M
不然会报错:
SQL> startup nomount pfile=’?/dbs/initocmdb.ora’;
ORA-00371: not enough shared pool memory, should be atleast 62198988 bytes

4、生成密码文件:
cd $ORACLE_HOME/dbs
orapwd file=orapwocmdb password=change_on_install entries=10

5、create spfile from pfile; 再 shutdown abort,再startup nomount;

修改其他初始化参数:
alter system set undo_management=auto scope=spfile;
–后面用的create语句要求用auto管理的undo
alter system set db_create_file_dest=’/oracle/app/oracle/oradata/ocmdb/dfile’ scope=spfile;
–这个题目有要求
alter system set db_create_online_log_dest_1=’/oracle/app/oracle/oradata/ocmdb/lfile’ scope=spfile;
–这个题目有要求
alter system set job_queue_processes =5 scope=spfile;
–这个后面oem的时候要用
alter system set background_dump_dest=’/oracle/app/oracle/admin/ocmdb/bdump’ scope=spfile;
alter system set core_dump_dest= ‘/oracle/app/oracle/admin/ocmdb/cdump’ scope=spfile;
alter system set user_dump_dest=’/oracle/app/oracle/admin/ocmdb/udump’ scope=spfile;
alter system set audit_file_dest=’/oracle/app/oracle/admin/ocmdb/adump’ scope=spfile;

shutdown abort; startup nomount

6、找到create database语句:
找在线文档administrator guide-Part I Basic Database Administration-2 creating an oracle database – Step 7: Issue the CREATE DATABASE Statement
修改其中的dbname,里面的数据文件的路径。
CREATE DATABASE ocmdb
USER SYS IDENTIFIED BY change_on_install
USER SYSTEM IDENTIFIED BY manager
LOGFILE GROUP 1 (‘/oracle/app/oracle/oradata/ocmdb/lfile/redo01.log’) SIZE 100M,
GROUP 2 (‘/oracle/app/oracle/oradata/ocmdb/lfile/redo02.log’) SIZE 100M,
GROUP 3 (‘/oracle/app/oracle/oradata/ocmdb/lfile/redo03.log’) SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACTER SET US7ASCII
NATIONAL CHARACTER SET AL16UTF16
DATAFILE ‘/oracle/app/oracle/oradata/ocmdb/dfile/system01.dbf’ SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE ‘/oracle/app/oracle/oradata/ocmdb/dfile/sysaux01.dbf’ SIZE 325M REUSE
DEFAULT TABLESPACE tbs_1 datafile ‘/oracle/app/oracle/oradata/ocmdb/dfile/tbs_1.dbf’ size 50m
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE ‘/oracle/app/oracle/oradata/ocmdb/dfile/temp01.dbf’
SIZE 20M REUSE
UNDO TABLESPACE undotbs
DATAFILE ‘/oracle/app/oracle/oradata/ocmdb/dfile/undotbs01.dbf’
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

执行完成后,将所有的数据文件和tempfile设置成autoextend on
alter database datafile 1 autoextend on;
alter database datafile 2 autoextend on;
alter database datafile 3 autoextend on;
alter database datafile 4 autoextend on;
alter database tempfile 1 autoextend on;

7、开始执行catalog和catproc
@?/rdbms/admin/catalog.sql
@?/rdbms/admin/catproc.sql

执行完后注意rman备份数据库,先开归档,再备份。如果rman备份的时候报错:
rman: can’t open target
那是因为linxu自带的rman优先级高于$ORACLE_HOME/bin/rman了,可以通过which rman看到。
此时export PATH一下:export PATH=$ORACLE_HOME/bin:$PATH把oracle路径的优先级提高即可。
备份的话,下面的脚本基本就可以了:
RMAN> run{
2> backup full database
3> format ‘/oracle/app/oracle/rmanbak/full_bk1_%u%p%s.rmn’
4> include current controlfile;
5> backup archivelog all
6> format ‘/oracle/app/oracle/rmanbak/arch_bk1_%u%p%s.rmn’
7> delete input;
8> }

其他知识点:
Create and manage bigfile tablespaces:
1 create bigfile tablespace tbs3 datafile
2 ‘/oracle/app/oracle/oradata/ocmdb/dfile/tbs3.dbf’ size 10m reuse
3 AUTOEXTEND ON maxsize unlimited
4* EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO uniform size 128k;

SQL> alter database default tablespace tbs3;
类似的即可。

相关文章

9条评论

  1. 建库的时候用脚本里面的这条命令
    DEFAULT TABLESPACE tbs_1 datafile ‘/u01/app/oracle/oradata/ocm/dfile/tbs_1.dbf’ size 50m
    老是出错:ORA-01092 :ORACLE例程终止 , 强制断开连接 .
    后来删除这行,创建就成功了。

    求解?

  2. 呃,#DEFAULT TABLESPACE tbs_1 删除此行,或者写上datafile 语句指定位置就OK了。
    原来是 官方联机文档有问题。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据