结果自己实际做了下,按我说的步骤可以成功的创建,有不懂的可以问我。
下面看步骤吧!
1设置变量,下面这几个环境变量时必须的,可以放到脚本当中方便执行,将名称改成如chlaws.env。
ORACLE_BASE=/u01
ORACLE_HOME=/u01/oracle
#将要创建的数据库sid是chlaws
ORACLE_SID=chlaws
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
PATH=$ORALCE_HOME/bin:$PATH:.
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export ORACLE_BASE ORACLE_HOME ORACLE_SID ORA_NLS33 PATH LD_LIBRARY_PATH
2创建一个pfile:即initchlaws.ora
#从其中以后的数据库的spfile中导出一个sid等于chlaws的pfile
#操作:env|grep ORA 查看下sid,然后 在dbs目录中找到当前数据库使用的spfile
#在我机子上有个使用DBCA创建出来的SID等于ora9i的数据库,那么在dbs目录中有个spfileora9i.ora
#在shell中执行
strings spfileora9i.ora > initchlaws.ora
#然后对initchlaws.ora进行修改,将其中的ora9i替换成你要创建的数据库的sid
#这里,我就替换成chlaws,vi initchlaws.ora,在命令模式下,执行1,$s/ora9i/chlaws/g
#说明下在pfile中有个参数是undo_tablespace='UNDOTBS1',
#在下面的create database 命令里面的undo 表空间的名字必须就要是和这个参数的值一样
3.使用orapwd在shell下生成密码文件 dba账户的密码是admin,默认下sys是sysdba权限,该密码就是admin
orapwd file=orapwchlaws password=admin entries=5;
4建立相关文件夹 //sid=chlaws
在admin目录里面建chlaws文件夹,然后在chlaws里面创建五个文件夹bdump cdump create pfile udump
在oradata目录里面建立chlaws文件夹,然后在chlaws里面建立archive文件夹
5.连接数据库实例
sqlplus /nolog
conn /as sysdba
6.创建sid等chlaws的spfile
create spfile from pfile
7.将数据库置于未挂载状态
startup nomount
8.开始真正的创建数据库
#创建命令:--其中所处的时区time_zone可以查看v$timezone_names视图的TZNAME字段;
#这里将命令保存到sql脚本当中,我这里是在$ORACLE_HOME/chlawsdir/目录下的createchlawsdb.sql
#对于下面命令不懂得可以查看下oracle的帮助文件,好像有在线的,没有就下个对应版本的就是了
#在Administrator's Guide中的第二章节的 Creating an Oracle Database
create database chlaws
maxdatafiles 100
maxinstances 8
character set UTF8
national character set AL16UTF16
maxlogfiles 50
archivelog
logfile
group 1 ('$ORACLE_BASE/oradata/chlaws/redo01.log') size 50m ,
group 2 ('$ORACLE_BASE/oradata/chlaws/redo02.log') size 50m ,
group 3 ('$ORACLE_BASE/oradata/chlaws/redo03.log') size 50m
datafile '$ORACLE_BASE/oradata/chlaws/system01.dbf' size 200m
extent management local
default temporary tablespace temp
tempfile '$ORACLE_BASE/oradata/chlaws/temptbs01.dbf' size 100m extent management local
undo tablespace undotbs1 datafile '$ORACLE_BASE/oradata/chlaws/undotbs01.dbf' size 50m
set time_zone='Asia/Shanghai';
9.创建附加的表空间,说白了就是用户表空间
create tablespace users logging
datafile '/u01/oradata/chlaws/users01.dbf'
size 25m reuse autoextend on next 1m maxsize 100m
extent management local;
10.运行sql脚本建立数据字典视图
运行下面三个脚本,第三个不是必须的。
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: Creates the Product User Profile table and related procedures. Running this script will prevent a
warning message each time a user connects to SQL*Plus.
conn sys/admin as sysdba
@/u01/oracle/rdbms/admin/catalog.sql
@/u01/oracle/rdbms/admin/catproc.sql
@/u01/oracle/rdbms/admin/pupbld.sql
结尾:到这里一个叫做chlaws的数据库就创建成功了,自己可以创建个表来检测下
测试结果如下:
SQL> create table chlawstb(id integer,name char(10));
Table created.
SQL> insert into chlawstb values(0,'chlaws');
1 row created.
SQL> select * from chlawstb;
ID NAME
---------- ----------
0 chlaws
SQL>