详细说明手工创建oracle数据库实例

简介:

手工建库比起使用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>

相关实践学习
数据库实验室挑战任务-初级任务
本场景介绍如何开通属于你的免费云数据库,在RDS-MySQL中完成对学生成绩的详情查询,执行指定类型SQL。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
12天前
|
SQL Oracle 关系型数据库
【Oracle】玩转Oracle数据库(一):装上去,飞起来!
【Oracle】玩转Oracle数据库(一):装上去,飞起来!
52 7
|
12天前
|
SQL Oracle 关系型数据库
【Oracle】玩转Oracle数据库(七):RMAN恢复管理器
【Oracle】玩转Oracle数据库(七):RMAN恢复管理器
39 5
|
4天前
|
存储 Oracle 关系型数据库
Oracle的模式与模式对象:数据库的“城市规划师”
【4月更文挑战第19天】在Oracle数据库中,模式是用户对象的集合,相当于数据库的城市规划,包含表、视图、索引等模式对象。模式对象是数据存储结构,如表用于存储数据,视图提供不同查看角度,索引加速数据定位。良好的模式与模式对象设计关乎数据效率、安全和稳定性。规划时需考虑业务需求、性能、安全和可扩展性,以构建高效数据库环境,支持企业业务发展。
|
12天前
|
存储 SQL Oracle
【Oracle】玩转Oracle数据库(二):体系结构、存储结构与各类参数
【Oracle】玩转Oracle数据库(二):体系结构、存储结构与各类参数
35 7
|
1月前
|
Oracle 关系型数据库 数据库
|
2月前
|
开发框架 Oracle 关系型数据库
ASP.NET实验室LIS系统源码 Oracle数据库
LIS是HIS的一个组成部分,通过与HIS的无缝连接可以共享HIS中的信息资源,使检验科能与门诊部、住院部、财务科和临床科室等全院各部门之间协同工作。 
37 4
|
1月前
|
关系型数据库 分布式数据库 数据库
PolarDB PostgreSQL版:Oracle兼容的高性能数据库
PolarDB PostgreSQL版是一款高性能的数据库,具有与Oracle兼容的特性。它采用了分布式架构,可以轻松处理大量的数据,同时还支持多种数据类型和函数,具有高可用性和可扩展性。它还提供了丰富的管理工具和性能优化功能,为企业提供了可靠的数据存储和处理解决方案。PolarDB PostgreSQL版在数据库领域具有很高的竞争力,可以满足各种企业的需求。
|
29天前
|
Oracle 关系型数据库 数据库
Oracle数据库基本概念理解(3)
Oracle数据库基本概念理解(3)
18 2
|
1月前
|
Oracle 关系型数据库 数据库
如何利用 Docker 安装 Oracle 数据库
【2月更文挑战第14天】
92 0
|
29天前
|
Oracle 关系型数据库 数据库
Oracle数据库基本概念理解(2)
Oracle数据库基本概念理解(2)
13 1

热门文章

最新文章

推荐镜像

更多