更多博文请关注:没有伞的孩子必须努力奔跑(www.xuchanggang.cn)sql
1.手工删除数据库:
删除oracle安装目录下的:admin flash_recovery_area oradata [共三个目录]
将/etc/oratab里的文件,注释掉
删除此文件:/u01/app/oracle/product/10.2.0/db_1/dbs/orapworcl
2.手动建数据库:
数据库
明确内容: ORACLE_BASE=/u01/app/oracle ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1/ ORACLE_SID=orcla sys和system等用户密码都为:oracle
(1).建立必要的相关目录【这里凡是系统不存在的目录,都建立】
安全
mkdir /u01/app/oracle/oradata/orcla # 创建存放数据库数据文件,控制文件,日志文件等文件的目录,与实例同名 mkdir /u01/app/oracle/admin/orcla # 存放实例相关配置参数的目录,与实例同名 mkdir /u01/app/oracle/admin/orcla/adump # 存放审计信息 mkdir /u01/app/oracle/admin/orcla/bdump # 存放的是数据库的各个后台迚程的跟踪信息 mkdir /u01/app/oracle/admin/orcla/cdump # 主要是 oracle 的内核存储记录存放位置 mkdir /u01/app/oracle/admin/orcla/udump # 存放和特定会话相关的跟踪信息
(2).建立初始化参数文件
bash
cd /u01/app/oracle/product/10.2.0/db_1/dbs 复制init.ora,将其更名为:initorcla.ora 修改 initorcla.ora 文件,内容以下: db_name=orcla # 指定数据库名称 db_block_size=8192 undo_management=auto undo_tablespace=undotbs sga_target=500m # 指定控制文件,审计文件,后台文件,内核存储,用户会话等文件的路径【注意更改数据库名称】 control_files=('/u01/app/oracle/oradata/orcla/control01.ctl','/u01/app/oracle/oradata/orcla/control02.ctl') audit_file_dest='/u01/app/oracle/admin/orcla/adump' background_dump_dest='/u01/app/oracle/admin/orcla/bdump' core_dump_dest='/u01/app/oracle/admin/orcla/cdump' user_dump_dest='/u01/app/oracle/admin/orcla/udump'
(3).设置环境变量 Oracle_sid
oracle
修改/home/oracle/.bash_profile 文件,修改以下内容。 export ORACLE_SID=orcla 执行以下命令,使刚才配置生效,也可退出oracle用户,从新进入 source /home/oracle/.bash_profile
(4).建立密码口令文件
app
cd /u01/app/oracle/product/10.2.0/db_1/dbs orapwd file=orapworcla password=oracle entries=10 force=y
(5).启动数据库到 nomount(实例)状态
ide
sqlplus / as sysdba startup nomount;
(6).建立建库脚本,名字为/tmp/createdb.sql -- 名字自定义【此脚本可在图形化界面下,制做数据库模板,会自动生成,若是没有,就本身写了,这里是自动生成的】
spa
CREATE DATABASE orcla # 建立数据库 USER SYS IDENTIFIED BY oracle USER SYSTEM IDENTIFIED BY oracle # 日志文件组,注意目录 LOGFILE GROUP 1 ('/u01/app/oracle/oradata/orcla/redo01a.log','/u01/app/oracle/oradata/orcla/redo01b.log') SIZE 300M, GROUP 2 ('/u01/app/oracle/oradata/orcla/redo02a.log','/u01/app/oracle/oradata/orcla/redo02b.log') SIZE 300M, GROUP 3 ('/u01/app/oracle/oradata/orcla/redo03a.log','/u01/app/oracle/oradata/orcla/redo03b.log') SIZE 300M MAXLOGFILES 20 MAXLOGMEMBERS 5 MAXLOGHISTORY 1 MAXDATAFILES 500 MAXINSTANCES 5 CHARACTER SET AL32UTF8 NATIONAL CHARACTER SET AL16UTF16 # 系统数据文件,注意目录 DATAFILE '/u01/app/oracle/oradata/orcla/system01.dbf' SIZE 500M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL # 系统附属表,注意目录 SYSAUX DATAFILE '/u01/app/oracle/oradata/orcla/sysaux01.dbf' SIZE 500M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED DEFAULT TABLESPACE users DATAFILE '/u01/app/oracle/oradata/orcla/users01.dbf' SIZE 500M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED # 临时表文件 DEFAULT TEMPORARY TABLESPACE temp TEMPFILE '/u01/app/oracle/oradata/orcla/temp01.dbf' SIZE 300M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED # 回滚文件,与参数文件名一致 UNDO TABLESPACE undotbs DATAFILE '/u01/app/oracle/oradata/orcla/undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED;
(7).执行建库脚本
日志
sqlplus / as sysdba SYS> @ /tmp/createdb.sql
(8).执行 catalog 脚步本建立数据字典:好比dba_users,dba_tablespaces
get
SYS> @ /u01/app/oracle/product/10.2.0/db_1/rdbms/admin/catalog;
(9).执行 catproc 建立 package 包:该脚本主要用于创建PL/SQL 功能的使用环境
SYS> @ /u01/app/oracle/product/10.2.0/db_1/rdbms/admin/catproc;
(10).切换到system用户,执行 pupbld:建立一些基于安全考虑的表
SYS> conn system/oracle Connected. SYSTEM>@ /u01/app/oracle/product/10.2.0/db_1/sqlplus/admin/pupbld.sql;
(11).由初始化参数文件建立 spfile 文件: # 出于之后的安全考虑,建立spfile文件
SYS> create spfile from pfile
# 此sql待定,用于建立scott数据
utlsmtp.sql
博文若有错误,请给我留言,或发邮件给我,谢谢