oralce手工建库

我的实验环境是redhat5.5 + oracle 11.2.0.1

第一步:设置ORACL_SID

编辑 /home/oracle/.bash_profile,添加如下内容

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=mydb
export PATH=$ORACLE_HOME/bin:$PATH
退出、保存,执行 source  /home/oracle/.bash_profile 使参数生效
 
第二步:进一步确认各项参数是否正确,特别是ORACLE_SID的值
[oracle@xsh ~]$ env |grep ORA
ORACLE_SID=mydb
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
 
第三步:创建密码文件
需要注意的是,密码文件在windowns和linux下存放路径及文件名都不一样:
windowns :存放路径是 $ORACLE_HOME/database   文件名为 PWD xxx.ora
linux:            存放路径是$ORACLE_HOME/dbs             文件名为orapw xxx.ora
上述的xxx为sid
创建密码文件
orapwd file=/u01/app/oracle/product/11.2.0/dbhome_1/dbs/orapwmydb  password=oracle entries=3 force=y
 
第四步:创建参数文件 pfile
一个简单的pfile只需要指定参数db_name 及控制文件的文件名即可

 1、建好目录

mkdir  /u01/app/oracle/database/pfile  --存放pfile

mkdir /u01/app/oracle/database/controfile --存放controfile

2、创建pfile

执行 vi  /u01/app/oracle/database/pfile/mydb.txt 添加如下内容

db_name=mydb
control_files='/u01/app/oracle/database/controfile/control01.ctl','/u01/app/oracle/database/controfile/control02.ctl'

退出、保存

 

第五步:连接实例,创建spfile

windowns下的spfile在$ORACLE_HOME/database

linux下的spfile在$ORACLE_HOME/dbs下

文件名相同,都是spfilexxx.ora  ,windowns下全是大写,linux下是小写。 

1、连接实例,创建spfile需要sysdba的权限

sqlplus  / as sysdba

 2、创建spfile

create spfile from pfile=‘/u01/app/oracle/database/pfile/mydb.txt’

 

第六步:重启实例

1、关闭实例

shutdown abort

2、将实例启动到nomount状态

startup nomount

 

第七步:创建数据库

需要注意如下几点:

1、sys、system账户的密码设置为与密码文件的password值一致,本例中该值是oracle

2、字符集CHARACTER设为ZHS16GBK;国家字符集设为 AL16UTF16

建库脚本如下

CREATE DATABASE mydb
   USER SYS IDENTIFIED BY oracle
   USER SYSTEM IDENTIFIED BY oracle
   LOGFILE GROUP 1 ('/u01/app/oracle/oradata/mydb/redo01.log') SIZE 50M,
           GROUP 2 ('/u01/app/oracle/oradata/mydb/redo02.log') SIZE 50M,
           GROUP 3 ('/u01/app/oracle/oradata/mydb/redo03.log') SIZE 50M
   MAXLOGFILES 20
   MAXLOGMEMBERS 5
   MAXLOGHISTORY 200
   MAXDATAFILES 100
   CHARACTER SET ZHS16GBK
   NATIONAL CHARACTER SET AL16UTF16
   EXTENT MANAGEMENT LOCAL
   DATAFILE '/u01/app/oracle/oradata/mydb/system01.dbf' SIZE 500M REUSE
   SYSAUX DATAFILE '/u01/app/oracle/oradata/mydb/sysaux01.dbf' SIZE 325M REUSE
   DEFAULT TEMPORARY TABLESPACE temp
      TEMPFILE '/u01/app/oracle/oradata/mydb/temp01.dbf'
      SIZE 20M REUSE
   UNDO TABLESPACE undotbs1
      DATAFILE '/u01/app/oracle/oradata/mydb/undotbs01.dbf'
      SIZE 200M REUSE;

执行完之后,此时数据库应该处于OPEN状态

3、执行如下3个脚本

@?/rdbms/admin/catalog.sql
@?/rdbms/admin/catproc.sql
@?/sqlplus/admin/pupbld.sql

@表示要执行后面的脚本,?=ORACLE_HOME;最后一个脚本需要用sysdba的身份执行,否则执行其他操作时会报错。

 

第八步:创建表空间、用户及授予权限

1、create tablespace users datafile '/u01/app/oracle/oradata/ocp/users01.dbf' size 50M;

创建表空间users 初始数据文件大小为50M

2、alter database default tablespace users;

将users设为数据库的默认表空间

3、create user xsh  identified by xsh default tablespace users temporary tablespace temp;

用户 xsh 密码 xsh; 默认表空间是users,临时表空间位temp

4、grant dba to xsh;

授予xsh dba的权限。

5、连接测试

SQL> conn xsh/xsh
Connected.

 

第九步:删除数据库

手工创建的数据库不能用dbca删除,可执行如下脚本删除【先关闭数据库】

startup mount exclusive

alter system enable restricted session;

drop database;

 

 

-----the end

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值