手工创建数据库

文字输入太麻烦了,详细见附件吧

==============================================

 

手工创建数据库

                                                By :wankun 2012-10-17

 

实验环境:

       Windows XP

       Oracle 10g

 

       创建数据库 SID byhand

1.      创建相关目录

 

创建初始化参数文件

       该文件最好使用拷贝创建。

       我这里使用原来数据库PLHK的初始化文件拷贝后修改。

文件路径  D:\oracle\product\10.2.0\admin\plhk\pfile\init.ora.82820121087 该文件为oracle10g创建的,不是默认的参数文件。将其中的所有的plhk代码改为byhand即可。保存文件到D:\oracle\product\10.2.0\db_1\database目录下。重命名为initbyhand.ora

其中的表空间啊之类的配置要和后面的一致。

设置环境变量 SID

创建oracle实例

创建实例(即后台控制服务)C:/>oradim new sid book oradim是创建实例的工具程序名称,-new表明执行新建实例,-delete表明执行删掉实例,-sid指定害例的名称。

创建口令文件

C:/>orapwd file=D:\oracle\product\10.2.0\db_1\database\pwdbyhand.ora password=orcl entries=8

Orapwd工具为设置sys用户密码的工具,password参数即为sys用户密码,entries为用户dba用户的个数上限。

启动数据库到nomount状态

 

执行数据库创建脚本(附件),创建数据库。

建库脚本也可以在生成测试数据库的时候最后一步选择上生成建库脚本,这样就可以直接用了。我们这里手动修改测试文件。

 

 

执行catalog脚步本创建数据字典

 

执行catproc创建package

       在执行该过程中有部分报ORA-00942错误,原因为“ TABLE OR VIEW DOES NOT EXISTS ”;

 

 

执行pupbld

在执行pupbld之前要把当前用户(sys)转换成system,即以system账户连接数据库。因为此数据库是刚建的,所以system的口令是系统默认的口令,即manager。你可以在数据库建好以后再来重新设置此账户的口令。

SQL>connectsystem/manager

SQL>start D:/oracle/product/10.1.0/db_1/sqlplus/admin/pupbld.sql

 

 

在该处会有很多错误,查看该脚本后感觉应该是在删除一些历史表

由初始化参数文件创建spfile文件

       这里需要在切换为sys用户

 

执行scott脚本创建scott模式

 

打开数据库

       测试时直接打开有问题,没办法,关闭数据库后重新打开,OK。

 

Scott用户登录进入,查看数据库是否正常。

这里scott用户的默认密码还是tiger,这时在创建scott模式的时候使用的默认密码。

 

安装完成

测试时,在安装数据库完成之后,发现监听器没有启动需要重新启动

       lsnrctl start

在命名服务中添加BYHAND的数据库配置。

       具体的配置路径在D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\文件夹下的listener.oratnsnames.ora两个文件。

附件:

-- 创建数据库脚本

create database byhand

datafile 'D:\oracle\product\10.2.0\oradata\byhand\system01.dbf' size 300M

       reuse autoextend on next 10M maxsize unlimited extent management local

sysaux datafile 'D:\oracle\product\10.2.0\oradata\byhand\sysaux01.dbf' size 120M

       reuse autoextend on next 10M maxsize unlimited

default temporary tablespace temp tempfile 'D:\oracle\product\10.2.0\oradata\byhand\temp01.dbf' size 100M

       reuse autoextend on next 1M maxsize unlimited

undo tablespace undotbs1 datafile 'D:\oracle\product\10.2.0\oradata\byhand\undotbs01.dbf' size 200M

       reuse autoextend on next 5M maxsize unlimited

logfile group 1 ('D:\oracle\product\10.2.0\oradata\byhand\redo01.log') size 10M ,

       group 2 ('D:\oracle\product\10.2.0\oradata\byhand\redo02.log') size 10M ,

       group 3 ('D:\oracle\product\10.2.0\oradata\byhand\redo03.log') size 10M ;

 

Linux下安装指导(未测试)

环境:

已经使用dbca创建了数据库orcl

oracle用户所属组为:oracle,dba

ORACLE_BASE=/home/oracle/oracle/

ORACLE_HOME=$ORACLE_BASE/db1

ORACLE_SID=test

ORACLE_OWNER=oracle

NLS_LANG="Simplified Chinese_china"

DB_HOME=/home/oracle/oradata

 

步骤:

 

1、创建pfile文件

使用sqlplus sys/orcl@orcl as sysdba 登陆orcl数据库环境,使用命令

create pfile from spfile; 创建pfile文件

再到系统下到$ORACLE_HOME/dbs/目录中使用命令

cp initorcl.ora inittest.ora

或者直接在系统下到$ORACLE_HOME/dbs/目录中使用命令

strings spfileorcl.ora >inittest.ora

完成后,修改inittest.ora文件,将orcl替换为test

 

2、创建密码文件

cd $ORACLE_HOME/dbs/

orapwd file=orapwtest password=test

 

3、创建目录

mkdir -p $ORACLE_BASE/admin/test

cd $ORACLE_BASE/admin/test

mkdir adump bdump cdump dpdump pfile

mkdir -p $DB_HOME/test

 

4、修改监听程序

vi $ORACLE_HOME/network/admin/tnsnames.ora

将其中ORCL部分复制粘贴,并且修改其名称为test

 

5、开始创建数据库

export ORACLE_SID=test

sqlplus /nolog

conn / as sysdba

spool $ORACLE_BASE/admin/$ORACLE_SID/create/createdb

startup nomount

 

 

create database test

LOGFILE

GROUP 1 ('$DB_HOME/test/redo01.log',

'$DB_HOME/test/redo01_1.log') size 100m reuse,

GROUP 2 ('$DB_HOME/test/redo02.log',

'$DB_HOME/test/redo02_1.log') size 100m reuse,

GROUP 3 ('$DB_HOME/test/redo03.log',

'$DB_HOME/test/redo03_1.log') size 100m reuse

MAXLOGFILES 50

MAXLOGMEMBERS 5

MAXLOGHISTORY 200

MAXDATAFILES 500

MAXINSTANCES 5

ARCHIVELOG

CHARACTER SET UTF8

NATIONAL CHARACTER SET UTF8

DATAFILE '$DB_HOME/test/system01.dbf' SIZE 1000M EXTENT MANAGEMENT LOCAL

SYSAUX DATAFILE '$DB_HOME/test/sysaux01.dbf' SIZE 1000M

UNDO TABLESPACE UNDOTBS1 DATAFILE '$DB_HOME/test/undo.dbf' SIZE 500M

DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE

'$DB_HOME/test/temp.dbf' SIZE 500M

;

 

等待一定时间,如果没有问题会显示数据库创建成功注意UNDO TABLESPACE UNDOTBS1中的名字,需要和inittest.ora中的名字一样。

 

@$ORACLE_HOME/rdbms/admin/catalog.sql;

@$ORACLE_HOME/rdbms/admin/catproc.sql;

@$ORACLE_HOME/rdbms/admin/catdbsyn.sql;

alter user system identified by test;

grant sysdba to system;

shutdown immediate;

startup;

spool off

exit

 

使用system用户登陆

sqlplus system/test

@$ORACLE_HOME/sqlplus/admin/pupbld.sql

exit

 

数据库创建完成。

 

如果遇到问题,可以查看日志

$ORACLE_BASE/admin/$ORACLE_SID/create/createdb

 

 

EMCA命令创建EM管理服务

 

猜你喜欢

转载自wankunde.iteye.com/blog/1837986