手工建库比起使用DBCA建库来说,是比较麻烦的,但是如果我们学好了手工建库的话,就可以使我们更好地理解Oracle数据库的体系结构。手工建库须要经过几个步骤,每一个步骤都非常关键。它包括:
1、 创建必要的相关目录
2、 创建初始化参数文件
3、 设置环境变量Oracle_sid
4、 创建实例
5、 创建口令文件
6、 启动数据库到nomount(实例)状态
7、 执行建库脚本
8、 执行catalog脚步本创建数据字典
9、 执行catproc创建package包
10、 执行pupbld
11、 由初始化参数文件创建spfile文件
12、 执行scott脚本创建scott模式

通过手动创建oracle数据库,可以了解oracle数据库的结构和数据库运行机制,对理解oracle数据库有帮助
一、打开命令行工具,创建必要有相关目录
mkdir D:applenovoadmincwj

mkdir D:applenovoadmincwjadump

mkdir D:applenovoadmincwjdpdump

mkdir D:applenovoadmincwjpfile

mkdir D:applenovoflash_recovery_areacwj

mkdir D:applenovooradatacwj

上面创建目录的过程也可以在Windows的图形界面中去创建。其中D:applenovoadmincwj
目录下的几个子目录主要用于存放数据库运行过程中的跟踪信息。最重要的两上子目录是adump和dpdump目录,adump目录存放的是数据库动行过程中的各个后台进程的跟踪信息,当中alert文件是警告文件,其文件名称为alert_cwj.log,当数据库出现问题时,首先就可以去查看此文件以找出原因,手工创建过程中出现的各种问题往往也可以通过查看这个文件找到原因。Udump目录存放和特定会话相关的跟踪信息。D:applenovooradatacwj目录存放各种数据库文件,包括控制文件、数据文件、重做日志文件。
二、创建初始化参数文件
数据库系统启动时须要用初始化参数文件的设置分配内存、启动必要的后台进程的。因此,初始化参数文件创建的是否正确、参数设置是否正确关系着整个建库的“命运”。
创建初始化参数文件可以通过拷贝现在的初始化参数文件并将其做适当的修改即可,从而不必要用手工去一句一句地写出来,因为初始化参数文件的结构体系基本上都是一样的。在我们安装Oracle的时候,系统已经为我们安装了一个名为studyoracle的数据库,于是我们可以从它那里得到一份初始化参数文件。打开D:\app\lenovo\admin\studyoracle\pfile,找到init.ora.2182017155336文件,把它拷贝到D:\app\lenovo\admin\cwj\pfile下,并将其改名为initcwj.ora。接着用记事本的方式打开initcwj.ora,修改以下的内容:
##############################################################################
Copyright (c) 1991, 2001, 2002 by Oracle Corporation

NLS

nls_language="SIMPLIFIED CHINESE"
nls_territory="CHINA"

Shared Server

dispatchers="(PROTOCOL=TCP) (SERVICE=studyoracleXDB)"

Miscellaneous

compatible=11.2.0.0.0
db_unique_name=studyoracle
diagnostic_dest=D:applenovo
memory_target=3313500160

Security and Auditing

audit_file_dest=D:applenovoadmincwjadump
audit_trail=db
remote_login_passwordfile=EXCLUSIVE

Database Identification

db_domain=""
db_name=studyora

File Configuration

control_files=("D:applenovooradatacwjcontrol01.ctl",
"D:applenovoflash_recovery_areacwjcontrol02.ctl")
db_recovery_file_dest=D:applenovoflash_recovery_area
db_recovery_file_dest_size=4102029312

Cursors and Library Cache

open_cursors=300

System Managed Undo and Rollback Segments

undo_tablespace=UNDOTBS1

Processes and Sessions

processes=150

Cache and I/O

db_block_size=8192

三、打开命令行,设置环境变量oracle_sid

C:Userslenovo>oradim -new -sid cwj

oradim是创建实例的工具程序名称,-new表明执行新建实例,-delete表明执行删掉实例,-sid指定害例的名称。

五、创建口令文件
C:Userslenovo>orapwd file=D:applenovoproduct11.2.0dbhome_1databasePWDcwj.ora
password=manager entries=2


orapwd是创建口令文件的工肯程序各称,file参数指定口令文件所在的目录和文件名称,password参数指定sys用户的口令,entries参数指定数据库拥用DBA权限的用户的个数。


口令文件是专门存放sys用户的口令,因为sys用户要负责建库、启动数据库、关闭数据库等特殊任务,把以sys用户的口令单独存放于口令文件中,这样数据库末打开时也能进行口令验证

六、启动数据库到nomount(实例)状态
startup pfile='D:applenovoadmincwjpfileinitcwj.ora' nomount
C:Userslenovo>sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on 星期四 12月 20 10:19:53 2018

Copyright (c) 1982, 2010, Oracle. All rights reserved.

SQL> conn sys/manager as sysdba
SQL> startup pfile='D:applenovoadmincwjpfileinitcwj.ora' nomount
ORACLE 例程已经启动。

Total System Global Area 3307048960 bytes
Fixed Size 2180264 bytes
Variable Size 1811942232 bytes
Database Buffers 1476395008 bytes
Redo Buffers 16531456 bytes
SQL>
七、执行建库脚本
create database cwj
datafile
'D:\app\lenovo\oradata\cwj\system01.dbf' size 300m Autoextend on next 10m
maxsize unlimited
sysaux datafile
'D:\app\lenovo\oradata\cwj\sysaux01.dbf' size 300m Autoextend on next 10m
maxsize unlimited
undo tablespace UNDOTBS1 datafile
'D:\app\lenovo\oradata\cwj\undotbs01.dbf' size 50m
default temporary tablespace temp tempfile
'D:\app\lenovo\oradata\cwj\temp01.dbf' size 30m
logfile
group 1 ('D:applenovooradatacwjredo01.log') size 10240k,
group 2 ('D:applenovooradatacwjredo02.log') size 10240k,
group 3 ('D:applenovooradatacwjredo03.log') size 10240k
character set zhs16gbk;

SQL> create database cwj
2 datafile
3 'D:applenovooradatacwjsystem01.dbf' size 300m
4 Autoextend on next 10m maxsize unlimited
5 sysaux datafile
6 'D:applenovooradatacwjsysaux01.dbf' size 300m
7 Autoextend on next 10m maxsize unlimited
8 undo tablespace UNDOTBS1 datafile
9 'D:applenovooradatacwjundotbs01.dbf' size 50m
10 default temporary tablespace temp tempfile
11 'D:applenovooradatacwjtemp01.dbf' size 30m
12 logfile
13 group 1 ('D:applenovooradatacwjredo01.log') size 10240k,
14 group 2 ('D:applenovooradatacwjredo02.log') size 10240k,
15 group 3 ('D:applenovooradatacwjredo03.log') size 10240k
16 character set zhs16gbk;

数据库已创建。

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

start D:applenovoproduct11.2.0dbhome_1RDBMSADMINcatalog.sql

九、执行catproc创建package包

SQL>start D:applenovoproduct11.2.0dbhome_1RDBMSADMINcatproc.sql

十、执行pupbld


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

SQL>connect system/manager
SQL>start D:applenovoproduct11.2.0dbhome_1sqlplusadminpupbld.sql

十一、 由初始化参数文件创建spfile文件

SQL>create spfile from pfile='D:applenovoadmincwjpfileinitcwj.ora';

十二、 执行scott脚本创建scott模式

SQL>start D:applenovoproduct11.2.0dbhome_1RDBMSADMINscott.sql

十三、 把数据库打开到正常状态
SQL>alter database open;

从 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
断开

C:Userslenovo>set oracle_sid=sky

C:Userslenovo>sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期四 12月 20 11:04:57 2018

Copyright (c) 1982, 2010, Oracle. All rights reserved.

SQL> exit
从 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
断开

C:Userslenovo>conn sys/manager as sysdba
'conn' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

C:Userslenovo>sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on 星期四 12月 20 11:05:38 2018

Copyright (c) 1982, 2010, Oracle. All rights reserved.

SQL> conn sys/manager as sysdba
已连接。
SQL> alter database open;
alter database open
*
第 1 行出现错误:
ORA-01531: 实例已打开数据库

SQL> exit
从 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
断开

C:Userslenovo>lsnrctl status

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 20-12月-2018
11:06:05

Copyright (c) 1991, 2010, Oracle. All rights reserved.

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=lenovo-PC)(PORT=1521)))

LISTENER 的 STATUS

别名 LISTENER
版本 TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
启动日期 20-12月-2018 09:23:53
正常运行时间 0 天 1 小时 42 分 13 秒
跟踪级别 off
安全性 ON: Local OS Authentication
SNMP OFF
监听程序参数文件 D:applenovoproduct11.2.0dbhome_1networkadminlistener.ora
监听程序日志文件 d:applenovodiagtnslsnrlenovo-PClisteneralertlog.xml
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=lenovo-PC)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\.pipeEXTPROC1521ipc)))
服务摘要..
服务 "CLRExtProc" 包含 1 个实例。
实例 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 2 个处理程序...
服务 "sky" 包含 1 个实例。
实例 "sky", 状态 READY, 包含此服务的 1 个处理程序...
服务 "studyoracle" 包含 1 个实例。
实例 "studyoracle", 状态 READY, 包含此服务的 1 个处理程序...
服务 "studyoracleXDB" 包含 2 个实例。
实例 "sky", 状态 READY, 包含此服务的 1 个处理程序...
实例 "studyoracle", 状态 READY, 包含此服务的 1 个处理程序...
命令执行成功

C:Userslenovo>sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期四 12月 20 11:07:29 2018

Copyright (c) 1982, 2010, Oracle. All rights reserved.

连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select * from scott.emp;
EMPNO ENAME JOB MGR HIREDATE SAL COMM
---------- ---------- --------- ---------- -------------- ---------- ----------
DEPTNO 7369 SMITH CLERK 7902 17-12月-80 800 20 7499 ALLEN SALESMAN 7698 20-2月
-81 1600 300 30 7521 WARD SALESMAN 7698 22-2月 -81 1250 500 30 EMPNO ENAME JOB
MGR HIREDATE SAL COMM
---------- ---------- --------- ---------- -------------- ---------- ----------
DEPTNO 7566 JONES MANAGER 7839 02-4月 -81 2975 20 7654 MARTIN SALESMAN 7698
28-9月 -81 1250 1400 30 7698 BLAKE MANAGER 7839 01-5月 -81 2850 30 EMPNO ENAME
JOB MGR HIREDATE SAL COMM
---------- ---------- --------- ---------- -------------- ---------- ----------
DEPTNO 7782 CLARK MANAGER 7839 09-6月 -81 2450 10 7839 KING PRESIDENT
17-11月-81 5000 10 7844 TURNER SALESMAN 7698 08-9月 -81 1500 0 30 EMPNO ENAME
JOB MGR HIREDATE SAL COMM
---------- ---------- --------- ---------- -------------- ---------- ----------
DEPTNO 7900 JAMES CLERK 7698 03-12月-81 950 30 7902 FORD ANALYST 7566
03-12月-81 3000 20 7934 MILLER CLERK 7782 23-1月 -82 1300 10
已选择12行。

SQL> exit
从 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
断开

C:Userslenovo>sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期四 12月 20 11:07:51 2018

Copyright (c) 1982, 2010, Oracle. All rights reserved.

连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> show parameter instance_name;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string sky
SQL> alter user scott identified by tiger;

用户已更改。

SQL> alter user sys identified by sys;

用户已更改。

SQL>

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信