首页 > 数据库 > Oracle > Oracle 10g 手工建库
2014.10.16
环境介绍:
系统:各种Linux环境下:
数据库:Oracle 10gR2
安装完Oracle软件后,一般情况吓都是dbca创建实例。但OCM考试的时候,session 0 要求是在奇数机上手工创建实例PROD,但是不计分。
这里我是创建zhanglin 实例
,下面是详细步骤:
[oracle@examstud2 dbs]$ cd $ORACLE_HOME/dbs
[oracle@examstud2 dbs]$ cat init.ora | grep -v ^$ | grep -v ^# > initzhanglin.ora
[oracle@examstud2 dbs]$ ll
total 32
-rw-r----- 1 oracle oinstall 12920 May 3 2001 initdw.ora
-rw-r----- 1 oracle oinstall 8385 Sep 11 1998 init.ora
-rw-r--r-- 1 oracle oinstall 738 Oct 16 00:52 initzhanglin.ora
注意:这里zhanglin的大小写决定了你的实例名的大小写,所以不要搞错了哟!
[oracle@examstud2 dbs]$ orapwd file=orapwzhanglin password=oracle ----生成密码文件
[oracle@examstud2 dbs]$ vi initzhanglin.ora
db_name=zhanglin
db_files = 80 # SMALL
db_file_multiblock_read_count = 8 # SMALL
#db_block_buffers = 100 # SMALL
#shared_pool_size = 3500000 # SMALL
log_checkpoint_interval = 10000
processes = 50 # SMALL
parallel_max_servers = 5 # SMALL
#log_buffer = 32768 # SMALL
max_dump_file_size = 10240 # limit trace file size to 5 Meg each
global_names = TRUE
control_files = ('/oradata/zhanglin/control/control01.ctl', '/oradata/zhanglin/control/control02.ctl')
sga_max_size=1024m
sga_target=1000m
undo_tablespace=undotbs1
undo_management=auto
解释:上面是实例的参数文件。
1、橙色部分,是需要注释掉了,不然很有可能报错。
2、绿色部分,是控制文件的存放路径和名称,这里可以多加几个。用英文逗号" , " 隔开,路径放在单引号''。
3、红色部分,是确定sga大小,undo表空间的名称和管理方式。
[oracle@examstud2 dbs]$ export ORACLE_SID=zhanglin
[oracle@examstud2 dbs]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Thu Oct 16 01:10:10 2014
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount; ---- 这里如果dbs下面只有一个参数文件,就是默认选中的
ORACLE instance started. ---- 如果有多个实例,就需要指定一下 startup nomount pfile=/u01/.../initzhanglin.ora
Total System Global Area 1073741824 bytes
Fixed Size 2026296 bytes
Variable Size 285213896 bytes
Database Buffers 784334848 bytes
Redo Buffers 2166784 bytes
SQL>
SQL> CREATE DATABASE zhanglin ----实例名,这个一定要跟参数文件里面的db_name 大小写一样。
2 USER SYS IDENTIFIED BY oracle ---- sys和system用户的密码,这里可以不用,加上也没关系。
3 USER SYSTEM IDENTIFIED BY oracle
4 LOGFILE GROUP 1 ('/oradata/zhanglin/redo/redo01a.log','/oradata/zhanglin/redo/redo01b.log') SIZE 100M,
5 GROUP 2 ('/oradata/zhanglin/redo/redo02a.log','/oradata/zhanglin/redo/redo02b.log') SIZE 100M,
6 GROUP 3 ('/oradata/zhanglin/redo/redo03a.log','/oradata/zhanglin/redo/redo03b.log') SIZE 100M
7 MAXLOGFILES 5
8 MAXLOGMEMBERS 5
9 MAXLOGHISTORY 1
10 MAXDATAFILES 100
11 CHARACTER SET UTF8 ---字符集设置
12 NATIONAL CHARACTER SET AL16UTF16
13 EXTENT MANAGEMENT LOCAL
14 DATAFILE '/oradata/zhanglin/data/system01.dbf' SIZE 600M REUSE ----system表空间的大小,存储路径、名称,默认自动扩展本地管理方式,大小建议不要太大。
15 SYSAUX DATAFILE '/oradata/zhanglin/data/sysaux01.dbf' SIZE 500M REUSE ----sysaux辅助表空间的 同上。
16 DEFAULT TABLESPACE users ----user用户表空间
17 DATAFILE '/oradata/zhanglin/data/users01.dbf'
18 SIZE 100M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
19 DEFAULT TEMPORARY TABLESPACE tempts1 ----temp 临时表空间
20 TEMPFILE '/oradata/zhanglin/data/temp01.dbf'
21 SIZE 100M REUSE
22 UNDO TABLESPACE undotbs1 ----undo 表空间,注意这里的undotbs1 一定要跟参数文件里面的一样,不然就报错,无法安装
23 DATAFILE '/oradata/zhanglin/data/undotbs01.dbf'
24 SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
Database created.
SQL> ----------接下来就是生成数据字典,各种系统包,系统存储过程,授权等等,catproc.sql时间相对较长一点。
SQL> @?/rdbms/admin/catalog.sql
SQL> @?/rdbms/admin/catproc.sql
SQL> @?/sqlplus/admin/pupbld.sql
这是官方的解释:
The at-sign (@) is shorthand for the command that runs a SQL*Plus script. The question mark (?) is a SQL*Plus variable indicating the Oracle home directory. The following table contains descriptions of the scripts:
| Script | Description |
|---|---|
| CATALOG.SQL | Creates the views of the data dictionary tables, the dynamic performance views, and public synonyms for many of the views. Grants PUBLIC access to the synonyms. |
| CATPROC.SQL | Runs all scripts required for or used with PL/SQL. |
| PUPBLD.SQL | Required for SQL*Plus. Enables SQL*Plus to disable commands by user. |
看看建好之后的:
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
/oradata/zhanglin/redo/redo01a.log
/oradata/zhanglin/redo/redo01b.log
/oradata/zhanglin/redo/redo02a.log
/oradata/zhanglin/redo/redo02b.log
/oradata/zhanglin/redo/redo03a.log
/oradata/zhanglin/redo/redo03b.log
6 rows selected.
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
/oradata/zhanglin/data/system01.dbf
/oradata/zhanglin/data/undotbs01.dbf
/oradata/zhanglin/data/sysaux01.dbf
/oradata/zhanglin/data/users01.dbf
4 rows selected.
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
/oradata/zhanglin/control/control01.ctl
/oradata/zhanglin/control/control02.ctl
2 rows selected.
SQL>
跟预设至一样!
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30936525/viewspace-2016705/ ,如需转载,请注明出处,否则将追究法律责任。