您的位置:首页 > 其它

<<OCM实验选讲>> 第二课 手工建库 实验

2014-03-08 20:44 531 查看
手工创建一个数据库,截图给出关键步骤。
设置环境变量

[oracle@localhost ~]$ cat PROD.env
export ORACLE_SID=PROD
export ORACLE_HOME=/home/oracle/oracle/product/10.2.0/db_1
export PATH=$PATH:$ORACLE_HOME/bin
[oracle@localhost ~]$

设置初始化参数
[oracle@localhost dbs]$ cat init.ora | egrep -v '(^#|^$)' > init$ORACLE_SID.ora
[oracle@localhost dbs]$ vim init$ORACLE_SID.ora
[oracle@localhost dbs]$ cat init$ORACLE_SID.ora
db_name=PROD
control_files = (/home/oracle/oracle/oradata/PROD/cntrl01.dbf, /home/oracle/oracle/oradata/PROD/cntrl02.dbf)
sga_target = 300M
undo_management = auto
undo_tablespace = undotbs

[oracle@localhost dbs]$

建立相关目录
[oracle@localhost ~]$ mkdir -p oracle/oradata/PROD/{a,b,c,u}dump
[oracle@localhost ~]$ ls -l oracle/oradata/PROD/{a,b,c,u}dump
oracle/oradata/PROD/adump:
total 0

oracle/oradata/PROD/bdump:
total 0

oracle/oradata/PROD/cdump:
total 0

oracle/oradata/PROD/udump:
total 0
[oracle@localhost ~]$

建立建库脚本
[oracle@localhost ~]$ cat createdb.sql
CREATE DATABASE PROD
user sys identified by oracle
user system identified by oracle
LOGFILE
GROUP 1 ('/home/oracle/oracle/oradata/PROD/log1.log') size 100M,
GROUP 2 ('/home/oracle/oracle/oradata/PROD/log2.log') size 100M,
GROUP 3 ('/home/oracle/oracle/oradata/PROD/log3.log') size 100M
MAXLOGFILES 5
MAXLOGmembers 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACTER SET AL32UTF8
NATIONAL CHARACTER SET AL16UTF16
DATAFILE '/home/oracle/oracle/oradata/PROD/system01.dbf' size 325M reuse extent management local
SYSAUX DATAFILE '/home/oracle/oracle/oradata/PROD/sysaux01.dbf' size 325M reuse
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE '/home/oracle/oracle/oradata/PROD/temp01.dbf' size 20M reuse
UNDO TABLESPACE undotbs DATAFILE '/home/oracle/oracle/oradata/PROD/undotbs01.dbf' size 200M reuse autoextend on maxsize unlimited;
[oracle@localhost ~]$

建立spfile并建库
SQL> startup nomount
ORACLE instance started.

Total System Global Area 314572800 bytes
Fixed Size 1219160 bytes
Variable Size 96470440 bytes
Database Buffers 213909504 bytes
Redo Buffers 2973696 bytes
SQL> create spfile from pfile;

File created.

SQL> @createdb.sql

Database created.

SQL>

编译数据字典和系统存储过程
SQL> select status from v$instance;

STATUS
------------
OPEN

SQL> desc dba_objects;
ERROR:
ORA-04043: object dba_objects does not exist

SQL>

SQL> @$ORACLE_HOME/rdbms/admin/catalog.sql;
DOC>######################################################################
DOC>######################################################################
DOC> The following statement will cause an "ORA-01722: invalid number"
DOC> error and terminate the SQLPLUS session if the user is not SYS.
DOC> Disconnect and reconnect with AS SYSDBA.
DOC>######################################################################
DOC>######################################################################
DOC>#

no rows selected

Package created.
...
Grant succeeded.

PL/SQL procedure successfully completed.

SQL> desc dba_objects
Name Null? Type
----------------------------------------- -------- ----------------------------
OWNER VARCHAR2(30)
OBJECT_NAME VARCHAR2(128)
SUBOBJECT_NAME VARCHAR2(30)
OBJECT_ID NUMBER
DATA_OBJECT_ID NUMBER
OBJECT_TYPE VARCHAR2(19)
CREATED DATE
LAST_DDL_TIME DATE
TIMESTAMP VARCHAR2(19)
STATUS VARCHAR2(7)
TEMPORARY VARCHAR2(1)
GENERATED VARCHAR2(1)
SECONDARY VARCHAR2(1)

SQL> desc dbms_output
ERROR:
ORA-04043: object dbms_output does not exist

SQL> @$ORACLE_HOME/rdbms/admin/catproc.sql
...
Package body created.

PL/SQL procedure successfully completed.

SQL> desc dbms_output
PROCEDURE DISABLE
PROCEDURE ENABLE
Argument Name Type In/Out Default?
------------------------------ ----------------------- ------ --------
BUFFER_SIZE NUMBER(38) IN DEFAULT
PROCEDURE GET_LINE
Argument Name Type In/Out Default?
------------------------------ ----------------------- ------ --------
LINE VARCHAR2 OUT
STATUS NUMBER(38) OUT
PROCEDURE GET_LINES
Argument Name Type In/Out Default?
------------------------------ ----------------------- ------ --------
LINES TABLE OF VARCHAR2(32767) OUT
NUMLINES NUMBER(38) IN/OUT
PROCEDURE GET_LINES
Argument Name Type In/Out Default?
------------------------------ ----------------------- ------ --------
LINES DBMSOUTPUT_LINESARRAY OUT
NUMLINES NUMBER(38) IN/OUT
PROCEDURE NEW_LINE
PROCEDURE PUT
Argument Name Type In/Out Default?
------------------------------ ----------------------- ------ --------
A VARCHAR2 IN
PROCEDURE PUT_LINE
Argument Name Type In/Out Default?
------------------------------ ----------------------- ------ --------
A VARCHAR2 IN

SQL>

至此一个基本的数据库就建立好了
[oracle@localhost ~]$ ps -ef | grep ora_
oracle 17701 1 0 00:54 ? 00:00:00 ora_pmon_PROD
oracle 17703 1 0 00:54 ? 00:00:00 ora_psp0_PROD
oracle 17705 1 0 00:54 ? 00:00:00 ora_mman_PROD
oracle 17707 1 0 00:54 ? 00:00:01 ora_dbw0_PROD
oracle 17709 1 2 00:54 ? 00:00:26 ora_lgwr_PROD
oracle 17711 1 0 00:54 ? 00:00:00 ora_ckpt_PROD
oracle 17713 1 0 00:54 ? 00:00:00 ora_smon_PROD
oracle 17715 1 0 00:54 ? 00:00:00 ora_reco_PROD
oracle 17717 1 0 00:54 ? 00:00:00 ora_mmon_PROD
oracle 17719 1 0 00:54 ? 00:00:00 ora_mmnl_PROD
oracle 17725 1 0 00:54 ? 00:00:00 ora_qmnc_PROD
oracle 17729 1 0 00:54 ? 00:00:00 ora_q000_PROD
oracle 17827 1 0 01:01 ? 00:00:00 ora_q001_PROD
oracle 17993 17966 0 01:11 pts/3 00:00:00 grep ora_
[oracle@localhost ~]$

参考文档:

Oracle® Database Administrator's Guide
10g Release 2 (10.2)
B14231-02
2 Creating an Oracle Database
file:///home/liao/win/wind/ocm/B19306_01/server.102/b14231/create.htm#sthref220



--EOF--
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: