oracle手工创建数据库

简介:

1.       创建必要的相关目录

2.       创建初始化参数文件

3.       设置环境变量Oracle_sid 

4.       创建实例

5.       创建口令文件

6.       启动数据库到nomount(实例)状态

7.       执行建库脚本

8.       执行catalog脚本创建数据字典

9.       执行catproc创建package包

10.      执行pupbld

11.      由初始化参数文件创建spfile文件

12.      执行scott脚本创建scott模式

13.      用命令测试数据库创建是否完成

14.      配置EM,使得能够通过浏览器管理和控制数据库

Oracle的安装路径:C  创建的数据库名称:book 

book数据库的SYS用户初始密码:bookstore

需要配置EM资料库之后,才可以通过EM访问数据库(才可以出现DBConsole服务)。

1、打开命令行工具,创建必要的相关目录 

 

C:\>mkdir C:\oracle\product\10.2.0\admin\book

C:\>mkdir C:\oracle\product\10.2.0\admin\book\adump

C:\>mkdir C:\oracle\product\10.2.0\admin\book\bdump

C:\>mkdir C:\oracle\product\10.2.0\admin\book\cdump

C:\>mkdir C:\oracle\product\10.2.0\admin\book\dpdump

C:\>mkdir C:\oracle\product\10.2.0\admin\book\udump

C:\>mkdir C:\oracle\product\10.2.0\admin\book\pfile

C:\>mkdir C:\oracle\product\10.2.0\oradata\book

 

上面创建目录的过程也可以在Windows的图形界面中去创建。其中C:\oracle\product\10.2.0\admin\book目录下的几个子目录主要用于存放数据库运行过程中的跟踪信息。最重要的两上子目录是bdump和udump目录,bdump目录存放的是数据库运行过程中的各个后台进程的跟踪信息,当中alert文件是警告文件,其文件名称为alert_book.log,当数据库出现问题时,首先就可以去查看此文件以找出原因,手工创建过程中出现的各种问题往往也可以通过查看这个文件找到原因。Udump目录存放和特定会话相关的跟踪信息。C:\oracle\product\10.2.0\oradata\book目录存放各种数据库文件,包括控制文件、数据文件、重做日志文件。 

 

2、创建初始化参数文件 

 

数据库系统启动时须要用初始化参数文件的设置分配内存、启动必要的后台进程的。因此,初始化参数文件创建的是否正确、参数设置是否正确关系着整个建库的“命运”。 

 

可以拷贝现有的初始化参数文件并将其做适当的修改,没有必要用手工去一句一句地写出来,因为初始化参数文件的结构体系基本上都是一样的。在安装Oracle的时候,系统已经安装了一个名为orcl的启动数据库,于是可以从它那里得到一份初始化参数文件。找到C:\oracle\product\10.2.0\admin\orcl\pfile\init.ora文件,拷贝一份,粘贴到C:\oracle\product\10.2.0\db_1\database目录下,将其改名为:initbook.ora。并将其中的内容做如下更改:

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

 

audit_file_dest=C:\oracle\product\10.2.0/admin/book/adump

 

db_domain="" 

 

db_name=book 

 

control_files=("C:\oracle\product\10.21.0\oradata\book\control01.ctl","C:\oracle\product\10.2.0\oradata\book\control02.ctl", "C:\oracle\product\10.2.0\oradata\book\control03.ctl")

undo_management=AUTO 

 

undo_tablespace=UNDOTBS1 ――注意此处的“UNDOTBS1”要和建库脚步本中对应 

 

background_dump_dest=C:\oracle\product\10.2.0\admin\book\bdump

 

core_dump_dest=C:\oracle\product\10.2.0\admin\book\cdump

 

user_dump_dest=C:\oracle\product\10.1.0\admin\book\udump

 

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

 

C:\>set oracle_sid=book

 

设置环境变量的目地是在默认的情况下,指定命令行中所操作的数据库实例是book。 

 

4、创建实例(即后台控制服务) 

 

C:\>oradim–new –sid book 

 

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

 

5、创建口令文件 

 

C:\>orapwdfile=C:\oracle\product\10.2.0\db_1\database\pwdbook.orapassword=bookstore entries=2 

 

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

 

请注意,这里的命令要一行输入,中间不得换行,否则会出现不必要的错误。 

 

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

 

6、启动数据库到nomount(实例)状态 

 

C:\>sqlplus/nolog 

 

SQL*Plus:Release10.1.0.2.0 - Production on 星期三6月29 23:09:35 2005 

 

Copyright1982,2004,Oracle. All rights reserved. 

 

SQL>connectsys/bookstore as sysdba ---这里是用sys连接数据库 

 

已连接到空闲例程 

 

SQL>startupnomount 

 

ORACLE 例程已经启动。 

 

Total SystemGlobal Area 319888364bytes 

 

Fixed Size453612bytes 

 

Variable Size209715200bytes 

 

DatabaseBuffers 109051904bytes 

 

Redo Buffers667648bytes 

 

SQL> 

 

7、执行建库脚本 

 

执行建库脚本,首先要有建库的脚本。编辑好以下的内容后,将其保存为文件名任取而后缀名为(*.sql)的SQL脚本,这里保存到C盘根本录下且文件名称为book.sql。 

 

Create database book 

controlfile reuse

datafile 'c:\oracle\product\10.2.0\oradata\book\system01.dbf'size 300M reuse autoextendon next 10240K maxsize unlimited extent management local 

sysaux datafile  'c:\oracle\product\10.2.0\oradata\book\sysaux01.dbf'

size 120Mreuse autoextend on next 10240K maxsize unlimited 

default temporary tablespace temp 

tempfile 'c:\oracle\product\10.2.0\oradata\book\temp01.dbf'size 20M reuse autoextend onnext 640K maxsize unlimited 

undo tablespace "UNDOTBS1" 

datafile 'c:\oracle\product\10.2.0\oradata\book\undotbs01.dbf'size 200M reuse autoextendon next 5120K maxsize unlimited

logfile group 1  ('c:\oracle\product\10.2.0\oradata\book\redo01.log')  size 10240K, 

     group 2  ('c:\oracle\product\10.2.0\oradata\book\redo02.log')  size 10240K, 

     group 3  ('c:\oracle\product\10.2.0\oradata\book\redo03.log')  size 10240K

character set zhs16gbk;

 

接着就执行刚建的建库脚本: 

 

SQL>start C:\book.sql 

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

SQL>start C:\oracle\product\10.2.0\db_1\rdbms\admin\catalog.sql

cat*.sql 脚本

该类脚本主要用于创建数据字典视图。其中,脚本catalog.sql 和catproc.sql 是创建数据库后必须要运行的两个脚本。

脚本

脚本说明

catalog.sql

创建系统常用的数据字典视图和同义词

catproc.sql

运行服务器端所需要的PL/SQL脚本

(1) catalog.sql 

该脚本创建相对于系统基表的视图和系统动态性能视图以及他们的同义词。该脚本又同时运行创建其他对象的脚本,主要有:

基本PL/SQL环境,包括PL/SQL的声明:

- 数据类型

- 预定义例外

- 内建的过程和函数

- SQL操作等

审计

导入/导出

SQL*Loader

安装选项

(2)catproc.sql

该脚本主要用于建立PL/SQL功能的使用环境。此外,还创建几个PL/SQL包用于扩展RDBMS功能。该脚本同时还为下面的一些RDBMS功能创建另外的一些包和视图:

警告(Alerts)

管道(Pipes)

日志分析(LogMiner)

大对象(Large objects)

对象(Objects)

高级队列(Advanced queuing)

复制选项( Replication option)

其他的一些内建包和选项(Other built-ins and options)

 

9、执行catproc创建package 建表空间,回退段,数据文件等信息

 

SQL>start C:\oracle\product\10.2.0\db_1\rdbms\admin\catproc.sql

 

10、执行pupbld作用  PUPBLD.SQL的作用是为SQL*PLUS服务。当在SQL*PLUS中以普通用户身份连接和使用数据库时,工具本身需要使用PRODUCTPROFILE的表和视图,我们需要登录system用户执行该SQL。

 

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

SQL>connect system/manager 

 

SQL>start C:\oracle\product\10.2.0\db_1\sqlplus\admin\pupbld.sql

用以下语句将用户切换到SYS

Connect sys/bookstore as sysdba

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

SQL>create spfile from pfile; 

 

12、执行scott脚本创建scott方案 

 

SQL>start C:\oracle\product\10.2.0\db_1\rdbms\admin\scott.sql

 

13、用以下命令测试数据库创建是否完成:

SQL>select * from scott.emp;

如果能够看到雇员信息正确显示,就说明数据库建立已完成。

 

 

如果希望book数据库的文件结构和orcl一致,可以进行以下几步:

C:\oracle\product\10.2.0\db_1\database\spfilebook.ora文件移动到C:\oracle\product\10.2.0\db_1\dbs目录下;

C:\oracle\product\10.2.0\db_1\database\initbook.ora文件删除;

C:\oracle\product\10.2.0\db_1\database\initorcl.ora文件拷贝一份,粘贴到C:\oracle\product\10.2.0\db_1\database目录下,并将其改名为initbook.ora。打开该文件,把内容更改为:SPFILE='c:\oracle\product\10.2.0\db_1/dbs/spfilebook.ora'

 

14.配置EM,使得能够通过浏览器管理和控制数据库

重新配置DBCONSOLE,需要输入DBSNMP密码,但任何密码都会显示错误,需要预先修改。

sql>alter user dbsnmp identified by bookstore;

退出SQL*Plus,在DOS提示符下输入以下内容:

CDC:\oracle\product\10.2.0\db_1\bin

Setoracle_sid=book

emca –repos recreate 配置资料库,为book数据库分配portlist.ini文件中的端口号.

 

emca –config dbcontrol  db 配置数据库的 Database  Control

 

emctl status dbconsole


本文转自 chenming421  51CTO博客,原文链接:http://blog.51cto.com/wnqcmq/1093367

相关文章
|
7月前
|
Oracle 关系型数据库 Linux
【赵渝强老师】Oracle数据库配置助手:DBCA
Oracle数据库配置助手(DBCA)是用于创建和配置Oracle数据库的工具,支持图形界面和静默执行模式。本文介绍了使用DBCA在Linux环境下创建数据库的完整步骤,包括选择数据库操作类型、配置存储与网络选项、设置管理密码等,并提供了界面截图与视频讲解,帮助用户快速掌握数据库创建流程。
582 93
|
6月前
|
Oracle 关系型数据库 Linux
【赵渝强老师】使用NetManager创建Oracle数据库的监听器
Oracle NetManager是数据库网络配置工具,用于创建监听器、配置服务命名与网络连接,支持多数据库共享监听,确保客户端与服务器通信顺畅。
331 0
|
9月前
|
存储 Oracle 关系型数据库
服务器数据恢复—光纤存储上oracle数据库数据恢复案例
一台光纤服务器存储上有16块FC硬盘,上层部署了Oracle数据库。服务器存储前面板2个硬盘指示灯显示异常,存储映射到linux操作系统上的卷挂载不上,业务中断。 通过storage manager查看存储状态,发现逻辑卷状态失败。再查看物理磁盘状态,发现其中一块盘报告“警告”,硬盘指示灯显示异常的2块盘报告“失败”。 将当前存储的完整日志状态备份下来,解析备份出来的存储日志并获得了关于逻辑卷结构的部分信息。
|
7月前
|
SQL Oracle 关系型数据库
Oracle数据库创建表空间和索引的SQL语法示例
以上SQL语法提供了一种标准方式去组织Oracle数据库内部结构,并且通过合理使用可以显著改善查询速度及整体性能。需要注意,在实际应用过程当中应该根据具体业务需求、系统资源状况以及预期目标去合理规划并调整参数设置以达到最佳效果。
462 8
|
9月前
|
SQL Oracle 关系型数据库
比较MySQL和Oracle数据库系统,特别是在进行分页查询的方法上的不同
两者的性能差异将取决于数据量大小、索引优化、查询设计以及具体版本的数据库服务器。考虑硬件资源、数据库设计和具体需求对于实现优化的分页查询至关重要。开发者和数据库管理员需要根据自身使用的具体数据库系统版本和环境,选择最合适的分页机制,并进行必要的性能调优来满足应用需求。
417 11
|
9月前
|
Oracle 关系型数据库 数据库
数据库数据恢复—服务器异常断电导致Oracle数据库报错的数据恢复案例
Oracle数据库故障: 某公司一台服务器上部署Oracle数据库。服务器意外断电导致数据库报错,报错内容为“system01.dbf需要更多的恢复来保持一致性”。该Oracle数据库没有备份,仅有一些断断续续的归档日志。 Oracle数据库恢复流程: 1、检测数据库故障情况; 2、尝试挂起并修复数据库; 3、解析数据库文件; 4、导出并验证恢复的数据库文件。
|
9月前
|
存储 Oracle 关系型数据库
【赵渝强老师】Oracle RMAN的目录数据库
Oracle RMAN默认将备份元信息存储在控制文件中,但控制文件损坏或丢失会导致恢复失败,且备份增多会使控制文件无限增长。为解决这些问题,Oracle引入了RMAN目录数据库(Catalog Database),专门用于存储RMAN备份的元信息。使用目录数据库可提升备份管理效率,支持多数据库共享、长期备份历史记录存储,并可保存RMAN脚本。本文详细介绍了如何创建目录数据库、注册目标数据库及其操作步骤。
251 0
|
12月前
|
Oracle 安全 关系型数据库
【Oracle】使用Navicat Premium连接Oracle数据库两种方法
以上就是两种使用Navicat Premium连接Oracle数据库的方法介绍,希望对你有所帮助!
2341 28
|
10月前
|
存储 Oracle 关系型数据库
oracle数据恢复—oracle数据库执行错误truncate命令的数据恢复案例
oracle数据库误执行truncate命令导致数据丢失是一种常见情况。通常情况下,oracle数据库误操作删除数据只需要通过备份恢复数据即可。也会碰到一些特殊情况,例如数据库备份无法使用或者还原报错等。下面和大家分享一例oracle数据库误执行truncate命令导致数据丢失的数据库数据恢复过程。

推荐镜像

更多