$ sqlplus "/ as sysdba"
SQL*Plus: Release 10.2.0.1.0 - Production on Sat Sep 20 06:28:34 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup mount
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file
'/ora01/db/oracle/product/10.2.0/db/dbs/initmydb.ora' 出错拉!!!为什么呢,如果细心的话会发现其实在上一个手动建库的过程中间我们也有一步这样的步骤。当时我们用的是
$ sqlplus "/ as sysdba"
SQL*Plus: Release 10.2.0.1.0 - Production on Sat Sep 20 06:28:34 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup mount
ORACLE instance started.
Total System Global Area 264241152 bytes
Fixed Size 1218868 bytes
Variable Size 88082124 bytes Database Buffers 171966464 bytes
Redo Buffers 2973696 bytes Database mounted.
2、将数据库设置为restricted session模式
?[Copy to clipboard]View Code SQL
SQL> alter system enable restricted session;
System altered.
3、使用drop database命令删除数据库,这个操作将删除所有的数据文件(不包括参数和密码文件)
createdatabase mydb
user sys identifiedby oracle
user system identifiedby oracle defaulttemporary tablespace temp
undo tablespace undotbs1
character set utf8
national character set al16utf16;
6、连入数据库,并启动数据库到nomount
?[Copy to clipboard]View Code SQL
SQL> startup nomount
ORACLE instance started.
Total System Global Area 264241152 bytes
Fixed Size 1218868 bytes
Variable Size 88082124 bytes Database Buffers 171966464 bytes
Redo Buffers 2973696 bytes
7、根据刚刚修改的pfile文件创建spfile文件
?[Copy to clipboard]View Code SQL
SQL>create spfile from pfile;
关于spfile文件,在上一个的手动创建中就可以生成,本博中有另个文章进行详解,请看“Oracle初始化参数文件”。
8、执行createdb.sql脚本
SQL> selectgroup#,member from v$logfile; GROUP# MEMBER ---------- --------------------------------------------------------------
1 /ora02/oradata/MYDB/onlinelog/o1_mf_1_4f8dw53x_.log
2 /ora02/oradata/MYDB/onlinelog/o1_mf_2_4f8dw5fp_.log
数据文件查询:
?[Copy to clipboard]View Code SQL
SQL> select name from v$datafile;
NAME -------------------------------------------------------------------------
/ora02/oradata/MYDB/datafile/o1_mf_system_4f8dwbg9_.dbf
/ora02/oradata/MYDB/datafile/o1_mf_undotbs1_4f8dwttk_.dbf
/ora02/oradata/MYDB/datafile/o1_mf_sysaux_4f8dwvws_.dbf
临时文件查询:
?[Copy to clipboard]View Code SQL
SQL> select name from v$tempfile;
NAME -------------------------------------------------------------------------
/ora02/oradata/MYDB/datafile/o1_mf_temp_4f8dwzxn_.tmp
OK!收工,终于搞定手动创建数据库,有前面DBCA的SQL脚本做帮助,感觉也不是很难,多练习下吧。
最后给个create database的语法给大家(Copy来的大家研究下):
?[Copy to clipboard]View Code SQL
CREATEDATABASEdatabase
USER SYS IDENTIFIEDBY password
USER SYSTEM IDENTIFIEDBY password
CONTROLFILE REUSE
MAXDATAFILES integer
MAXINSTANCES integer
MAXLOGFILES integer
MAXLOGMEMBERS integer
MAXLOGHISTORY integer
CHARACTER SET charset
NATIONAL CHARACTER SET charset SETDEFAULT BIGFILE(SMALLFILE) TABLESPACE
LOGFILE GROUP integer file_specification
ARCHIVELOG(NOARCHIVELOG)
FORCE LOGGING
DATAFILE file_specification
SYSAUX DATAFILE file_specification DEFAULT TABLESPACE tablespace
DATAFILE datafile_tempfile_spec extent_management_clause
BIGFILE(SMALLFILE) DEFAULTTEMPORARY TABLESPACE tablespace
TEMPFILE file_specification extent_management_clause
BIGFILE(SMALLFILE) UNDO TABLESPACE tablespace DATAFILE file_specification SET TIME_ZONE = '+/–hh : mi'(time_zone_region)