ORACLE7安装成功之后便建有一数据库ora7或or71,如果自己做应用开发,则可能
要重
建 数据库或建一新的数据库以满足自己的需要,而ORACLE重建数据库不但要用SQL命
令c
reate database创建,还要指定大量的参数,如控制文件、日志文件、参数文件、数
据库
实例名。 并且要建立相关的系统段、回滚段、用户段等,及其对应的数据文件。其
步骤
如下:
以oracle用户登录UNIX系统
SCOSYSV!LOGIN:oracle
备份后删除原数据库文件和控制文件
$cd ./dbs
$rm*.dbf
$rm*.ctl
$cd /*进入oracle用户目录*/
编辑文件.profile,在$ORACLE_HOME目录中(假设为/u/oracle)
$vi .profile
#插入以下各行,设置环境变量
ORACLE_HOME=/u/oracle;export ORACLE_HOME
TK2DEV=ANSI
#ORACLE_SID是库实例名,建议四个字母或数字
ORACLE_SID=olib
PATH=/usr/bin:/u/bin:/u/sbin:$ORACLE_HOME/bin
exprot TK2DEV
exprot ORACLE_SID
exprot PATH
:wq! 存盘退出
进入ORACLE_HOME/dbs目录设置参数文件
$cd ./dbs
编辑init$ORACLE_SID.ora文件
$cp init.ora initolib.ora #用原始的初始化文件设置
$cp init_0.ora initolib_0.ora #原始的初始化文件用于create database
$vi initolib_0.ora
#设置参数文件
#ifile=$ORACLE
_HOME/dbs/config
$ORACLE_SID.ora
ifile =/u/oracle/dbs/configolib.ora
rollback_segments =( ) #先设回滚段为空,在initolib.ora中为#(r01,r02,r03,r0
4
:qw!存盘退出
编辑config$ORACLE_SID.ora文件
$vi configolib.ora
# 设置控制文件
control_files=(/u/oracle/dbs/ctr1olib.ctl #三个控制文件最好
/u/oracle/dbs/ctr2olib.ctl,#放在不同目录或
/u/oracle/dbs/ctr3olib.ctl)#磁盘上
db_block_size=2048 #可自行确定
db_name=olib #设置数据库名
:wq! 存盘退出
编辑建库SQL命令文件
$cd ./dbs
$cp crora7.sql crolib.sql #用原始的SQL文件编辑
$cp cr2ora7.sql cr2olib.sql #用原始的SQL文件编辑
$vi crolib.sql
set termout on
set echo on
spool/u/oracle/dbs/crolib.lst /*输出到文件crilib.lst*/
connect internal /*dba连接到internal*/
/*用参数文件initolib_0.ora启动数据库实例,但不安装实例*/
startup nomount pfile=/u/oracle/dbs/initolib_0.ora
create database"olib" /*数据库名*/
maxinstances 1 /*可同时打开数据库实例的最大值*/
maxlogfiles 16 /*可建的日志文件组的最大值*/
datafile /*指定用于SYSTEM表空间的数据文件*/
`/u/oracle/dbs/systolib.dbf' size 25M
logfile /*指定日志文件,最好放在不同磁盘上*/
`/u/oracle/dbs/log1olib.dbf' size 500k,
`/u/oralce/dbs/log2olib.dbf' size 500k,
`/u/oracle/dbs/log3olib.dbf' size 500k;
disconnect
spool off
<EOF:>
编辑建数据字典与表空间SQL命令文件
$vi cr2olib.sql
…/*由于文件较大,未录。需要者请与作者联系*/
开始建库
重新以ORACLE用户登录,让.profile文件起作用.
$cd ./dbs /*进入/dbs目录*/
$sqldba mode=line /*以行命令方式启动DBA工具*/
SQLDBA>@CROLIB.SQL /*执行建库SQL命令文件/
SQLDBA>@CR2OLIB.SQL /*执行建数据字典SQL命令文件*/
SQLDBA>EXIT
$
此时已建立数据库olib,并建用户sys/change_on_install和sys-tem/manager
如需创建其他用户可以用system用户进入SQLDBA后
SQLDBA>CREATE USER MYUSER IDENTIFIED BY MYPAS-WORD
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP
QUOTA UNLIMITED ON USERS
QUOTA 5M ON SYSTEM
QUOTA 5M ON TEMP
;
再授予用户特权
SQLDBA>GRANT DBA TO MYUSER;
这样重建数据库的过程就全部完成,之后就可以建立表空间和自己设计的表进行开发
或
应用了。
如想用原命令$dbstart启动新的数据库只要修改文件oratab即可。
$vi /etc/oratab
olib :/u/oracle:Y /*第一个参数为数据库名,
第二个参数为$ORACLE_HOME路径,
第三个参数为自定义$ORACLE_SID库名,即第
一个参数的存在情况是Yes.
*/
:wq! /*存盘退出*/
这样就可用$dbstart启动了。
要重
建 数据库或建一新的数据库以满足自己的需要,而ORACLE重建数据库不但要用SQL命
令c
reate database创建,还要指定大量的参数,如控制文件、日志文件、参数文件、数
据库
实例名。 并且要建立相关的系统段、回滚段、用户段等,及其对应的数据文件。其
步骤
如下:
以oracle用户登录UNIX系统
SCOSYSV!LOGIN:oracle
备份后删除原数据库文件和控制文件
$cd ./dbs
$rm*.dbf
$rm*.ctl
$cd /*进入oracle用户目录*/
编辑文件.profile,在$ORACLE_HOME目录中(假设为/u/oracle)
$vi .profile
#插入以下各行,设置环境变量
ORACLE_HOME=/u/oracle;export ORACLE_HOME
TK2DEV=ANSI
#ORACLE_SID是库实例名,建议四个字母或数字
ORACLE_SID=olib
PATH=/usr/bin:/u/bin:/u/sbin:$ORACLE_HOME/bin
exprot TK2DEV
exprot ORACLE_SID
exprot PATH
:wq! 存盘退出
进入ORACLE_HOME/dbs目录设置参数文件
$cd ./dbs
编辑init$ORACLE_SID.ora文件
$cp init.ora initolib.ora #用原始的初始化文件设置
$cp init_0.ora initolib_0.ora #原始的初始化文件用于create database
$vi initolib_0.ora
#设置参数文件
#ifile=$ORACLE
_HOME/dbs/config
$ORACLE_SID.ora
ifile =/u/oracle/dbs/configolib.ora
rollback_segments =( ) #先设回滚段为空,在initolib.ora中为#(r01,r02,r03,r0
4
:qw!存盘退出
编辑config$ORACLE_SID.ora文件
$vi configolib.ora
# 设置控制文件
control_files=(/u/oracle/dbs/ctr1olib.ctl #三个控制文件最好
/u/oracle/dbs/ctr2olib.ctl,#放在不同目录或
/u/oracle/dbs/ctr3olib.ctl)#磁盘上
db_block_size=2048 #可自行确定
db_name=olib #设置数据库名
:wq! 存盘退出
编辑建库SQL命令文件
$cd ./dbs
$cp crora7.sql crolib.sql #用原始的SQL文件编辑
$cp cr2ora7.sql cr2olib.sql #用原始的SQL文件编辑
$vi crolib.sql
set termout on
set echo on
spool/u/oracle/dbs/crolib.lst /*输出到文件crilib.lst*/
connect internal /*dba连接到internal*/
/*用参数文件initolib_0.ora启动数据库实例,但不安装实例*/
startup nomount pfile=/u/oracle/dbs/initolib_0.ora
create database"olib" /*数据库名*/
maxinstances 1 /*可同时打开数据库实例的最大值*/
maxlogfiles 16 /*可建的日志文件组的最大值*/
datafile /*指定用于SYSTEM表空间的数据文件*/
`/u/oracle/dbs/systolib.dbf' size 25M
logfile /*指定日志文件,最好放在不同磁盘上*/
`/u/oracle/dbs/log1olib.dbf' size 500k,
`/u/oralce/dbs/log2olib.dbf' size 500k,
`/u/oracle/dbs/log3olib.dbf' size 500k;
disconnect
spool off
<EOF:>
编辑建数据字典与表空间SQL命令文件
$vi cr2olib.sql
…/*由于文件较大,未录。需要者请与作者联系*/
开始建库
重新以ORACLE用户登录,让.profile文件起作用.
$cd ./dbs /*进入/dbs目录*/
$sqldba mode=line /*以行命令方式启动DBA工具*/
SQLDBA>@CROLIB.SQL /*执行建库SQL命令文件/
SQLDBA>@CR2OLIB.SQL /*执行建数据字典SQL命令文件*/
SQLDBA>EXIT
$
此时已建立数据库olib,并建用户sys/change_on_install和sys-tem/manager
如需创建其他用户可以用system用户进入SQLDBA后
SQLDBA>CREATE USER MYUSER IDENTIFIED BY MYPAS-WORD
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP
QUOTA UNLIMITED ON USERS
QUOTA 5M ON SYSTEM
QUOTA 5M ON TEMP
;
再授予用户特权
SQLDBA>GRANT DBA TO MYUSER;
这样重建数据库的过程就全部完成,之后就可以建立表空间和自己设计的表进行开发
或
应用了。
如想用原命令$dbstart启动新的数据库只要修改文件oratab即可。
$vi /etc/oratab
olib :/u/oracle:Y /*第一个参数为数据库名,
第二个参数为$ORACLE_HOME路径,
第三个参数为自定义$ORACLE_SID库名,即第
一个参数的存在情况是Yes.
*/
:wq! /*存盘退出*/
这样就可用$dbstart启动了。