我们这道在linux上我们可以通过dbca创建数据库,但是我们也能以命令行的模式创建数据库,下面我们说说他的方法
1,首先查看以下我们要创建的数据库名
[[email protected] ~]$ echo $ORACLE_SID
orcl
如果没有设置可以作如下设置
export ORACLE_SID=orcl
2,首先创建一个实例参数文件(pfile)这里命名为pfileorcl.ora
#vim $ORACLE_HOME/dbs/pfileorcl.ora在里面输入下面内容
db_name=orcl
db_domain=example.com
db_files=1000
processes=600
statistics_level=typical
db_block_size=8192
audit_trail=none
background_dump_dest='/u01/app/admin/orcl/bdump'
core_dump_dest='/u01/app/admin/orcl/adump'
control_files=('/u02/oradata/orcl/control01.ctl',
'/u02/oradata/orcl/control02.ctl','/u02/oradata/orcl/control03.ctl')
sga_target=400M
pga_aggregate_target=400M
db_file_multiblock_read_count=16
log_archive_format='log%t_%s_%r.arc'
optimizer_mode=all_rows
remote_login_passwordfile=none
undo_management=auto
undo_retention=7200
3,创建必要的目录
# mkdir -pv /u01/app/admin/orcl/{adump,bdump,dbump}
mkdir: created directory `/u01/app/admin'
mkdir: created directory `/u01/app/admin/orcl'
mkdir: created directory `/u01/app/admin/orcl/adump'
mkdir: created directory `/u01/app/admin/orcl/bdump'
mkdir: created directory `/u01/app/admin/orcl/dbump'
更改它们的权限
# chmod 775 -Rv /u01/app/admin/
mode of `/u01/app/admin/' changed to 0775 (rwxrwxr-x)
mode of `/u01/app/admin/orcl' changed to 0775 (rwxrwxr-x)
mode of `/u01/app/admin/orcl/adump' changed to 0775 (rwxrwxr-x)
mode of `/u01/app/admin/orcl/bdump' changed to 0775 (rwxrwxr-x)
mode of `/u01/app/admin/orcl/dbump' changed to 0775 (rwxrwxr-x)
更改他们的所属主组
# chown oracle:oinstall -Rv /u01/app/admin/
changed ownership of `/u01/app/admin/orcl/adump' to oracle:oinstall
changed ownership of `/u01/app/admin/orcl/bdump' to oracle:oinstall
changed ownership of `/u01/app/admin/orcl/dbump' to oracle:oinstall
changed ownership of `/u01/app/admin/orcl' to oracle:oinstall
changed ownership of `/u01/app/admin/' to oracle:oinstall
# mkdir /u02/oradata/orcl
# mkdir /u02/oradata/orcl/arch -pv
mkdir: created directory `/u02/oradata/orcl'
# chmod 775 -Rv /u02/oradata/orcl/
mode of `/u02/oradata/orcl/' changed to 0775 (rwxrwxr-x)
mode of `/u02/oradata/orcl/arch' changed to 0775 (rwxrwxr-x)
# chown oracle:oinstall -Rv /u02/oradata/orcl/
changed ownership of `/u02/oradata/orcl/' to oracle:oinstall
3,创建spfile文件
$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Thu Mar 25 20:46:42 2010
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
Connected to an idle instance.
SQL> create SPFILE='/u01/app/oracle/product/10.2.0/db_1/dbs/spfileorcl.ora' FROM PFILE='/u01/app/oracle/product/10.2.0/db_1/dbs/pfileorcl.ora';
File created.
4,开启实例,不挂载数据库
SQL> startup nomount;         
ORACLE instance started.
Total System Global Area  419430400 bytes
Fixed Size                  1219736 bytes
Variable Size             121635688 bytes
Database Buffers          289406976 bytes
Redo Buffers                7168000 bytes
5,我们知道,在文本模式下创建时,如果命令写错将是一件很麻烦的事,所以我们可以把想要执行的命令放在
一个脚本中,然后执行脚本。编辑脚本createorcl.sql在里面输入下面的内容
$ vim createorcl.sql
CREATE DATABASE orcl
 USER sys IDENTIFIED BY oracle
 USER system IDENTIFIED BY oracle
 maxinstances 1
 maxloghistory 1
 maxlogfiles 5
 maxlogmembers 5
 DATAFILE '/u02/oradata/orcl/system01.dbf' size 400M extent management LOCAL
 SYSAUX DATAFILE '/u02/oradata/orcl/sysaux01.dbf' size 400M
 DEFAULT TEMPORARY tablespace temp01
 TEMPFILE '/u02/oradata/orcl/temp01.dbf' size 100M
 UNDO TABLESPACE undotbs01
 DATAFILE '/u02/oradata/orcl/undotbs01.dbf' size 200M
 DEFAULT TABLESPACE users
 DATAFILE '/u02/oradata/orcl/users01.dbf' size 100M
 CONTROLFILE REUSE
 LOGFILE group 1 ('/u02/oradata/orcl/redo01.log') size 10M REUSE,
         group 2 ('/u02/oradata/orcl/redo02.log') size 10M REUSE,
         group 3 ('/u02/oradata/orcl/redo03.log') size 10M REUSE;
6,执行上面的脚本创建数据库
SQL> @/home/oracle/createorcl.sql
以下两个命令将创建数据字典
SQL> @$ORACLE_HOME/rdbms/admin/catalog.sql
......
Grant succeeded.
PL/SQL procedure successfully completed.
SQL> @$ORACLE_HOME/rdbms/admin/catproc.sql
......
No errors.
Package body created.

PL/SQL procedure successfully completed.
如果脚本不能成功则找出错误,直到成功。当两个脚本执行成功后,我们就创建好啦
但是这是我们还不能连接,下面我们让数据库与实例连接起来
$ emca -config dbcontrol db -repos create
STARTED EMCA at Mar 25, 2010 10:02:33 PM
EM Configuration Assistant, Version 10.2.0.1.0 Production
Copyright (c) 2003, 2005, Oracle.  All rights reserved.
Enter the following information:
Database SID: orcl
Listener port number: 1521
Password for SYS user: 
Password for DBSNMP user: 
Password for SYSMAN user: 
Password for SYSMAN user: Email address for notifications (optional):
Outgoing Mail (SMTP) server for notifications (optional):
-----------------------------------------------------------------
You have specified the following settings
Database ORACLE_HOME ................ /u01/app/oracle/product/10.2.0/db_1
Database hostname ................ oracle.example.com
Listener port number ................ 1521
Database SID ................ orcl
Email address for notifications ...............
Outgoing Mail (SMTP) server for notifications ...............
-----------------------------------------------------------------
Do you wish to continue? [yes(Y)/no(N)]: Y
Mar 25, 2010 10:04:15 PM oracle.sysman.emcp.EMConfig perform
INFO: This operation is being logged at /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/emca/orcl/emca_2010-03-25_10-02-33-PM.log.
Mar 25, 2010 10:04:18 PM oracle.sysman.emcp.EMReposConfig createRepository
INFO: Creating the EM repository (this may take a while) ...
这里要等一会
Mar 25, 2010 10:07:07 PM oracle.sysman.emcp.EMReposConfig invoke
INFO: Repository successfully created
Mar 25, 2010 10:07:11 PM oracle.sysman.emcp.ParamsManager getLocalListener
WARNING: Error retrieving listener for oracle.example.com
Mar 25, 2010 10:07:15 PM oracle.sysman.emcp.util.DBControlUtil startOMS
INFO: Starting Database Control (this may take a while) ...
Mar 25, 2010 10:08:58 PM oracle.sysman.emcp.EMDBPostConfig performConfiguration
INFO: Database Control started successfully
Mar 25, 2010 10:08:58 PM oracle.sysman.emcp.EMDBPostConfig performConfiguration
INFO: >>>>>>>>>>> The Database Control URL is http://oracle.example.com:1158/em <<<<<<<<<<<
Enterprise Manager configuration completed successfully
FINISHED EMCA at Mar 25, 2010 10:08:58 PM
这样我们就就将实例和数据库关联起来了
本机的IP是192.168.0.131,我们在浏览器中输入http://192.168.0.131:1158/em 可以看到下面的内容啦
在redhat5上手动创建数据库
 
备注:初始化参数文件的一些常见参数
db_name=orcl  数据库名称
instance_type=RDBMS 指定实例类型(可以是RDBMS和ASM,可以不用设置默认的是RDBMS) 
db_domain=example.com (oracle数据库所在的域名与db_name结合起来,能够实现全局唯一)
db_files=1000 (指定最多可以被实例打开的文件数目,默认为200个,再重启实例后生效)
processes=600 (最多接受多少并发连接,他是后台进程数和允许的个数之和)
db_block_size=8192(默认的块大小,标准的有2k,4k,6k,8k,16k,32k在设置时要转换成字节的形式,默认为8k,在设置是要转换成字节)
statistics_level=typical(指定统计信息的级别,可以是basic,typical,all默认是typical)
audit_trail=none(指定审计参数)
background_dump_dest='/u01/app/admin/orcl/bdump'  设定后台进程跟踪文件
user_dump_dest='/u01/app/admin/orcl/udump'        设定SQL跟踪文件
core_dump_dest='/u01/app/admin/orcl/adump'        审计文件
compatible=10.2.0.1 让高版本的数据库能够兼容低版本的数据库
control_files=('/u02/oradata/orcl/control01.ctl',
'/u02/oradata/orcl/control02.ctl','/u02/oradata/orcl/control03.ctl') 移动控制文件(最少设置两个)
cursor_sharing=force
sga_target=400M 设置SGA的大小
pga_aggregate_target=400M 设置共享池的大小
db_file_multiblock_read_count=16   一次I/O访问要用到的数据块
db_flashback_retention_target=7200 快闪恢复区文件保存时间
db_recovery_file_dest='/u02/oradata/flash_recovery_area' 设置快闪恢复区的目录
db_recovery_file_dest_size=1000M     指定快闪恢复区文件的大小
log_archive_dest_1='LOCATION=/u02/orcl/arch/' 归档日志文件的位置(一定要自己创建)
log_archive_format='log%t_%s_%r.arc'  (归档日志文件格式 t线程编号 s*** -r resetlogsID号)
optimizer_mode=all_rows  (优化模式 有all_rows,frist_rows,first_rows_n )
remote_login_passwordfile=none (设置远程用户访问时要用的密码文件)
undo_management=auto  (指定撤销表空间的管理方法,有auto和 manual)
undo_retention=7200  (指定撤销表空间的数据最少保持时间)
undo_tablespace=undotbs01 (撤消表空间)
 
当然上面给出的是一些常见的如果想了解的更多,可以去找官方给的参考文档