参考资料为:

【Oracle XE系列之三】使用OMF方式手工创建Oracle XE数据库 - 王立夫 - 博客园
http://www.cnblogs.com/opfo/p/5056122.html

环境:win7_64

以管理员打开cmd

1.创建数据库实例,实例名为ORCL

oradim -new -sid ORCL

错误:dim-00014:无法打开 Windows NT 服务控制管理器。OS-Error:(OS 5) 拒绝访问。

处理办法:以管理身份运行.

2.为了sys用户可以连入数据库执行操作,先创建数据库的密码文件,密码文件的名称必须为PWDsid.ora

orapwd password=oracle file=C:\oraclexe\app\oracle\product\11.2.0\server\database\PWDORCL.ora

自动生成PWDORCL.ora文件

3.创建下列目录,以存放数据文件和dump信息

#数据文件目录

C:\oraclexe\app\oracle\oradata\ORCL

#background dump目录

C:\oraclexe\app\oracle\oradata\ORCL\bdump

#core dump目录

C:\oraclexe\app\oracle\oradata\ORCL\cdump

#user dump目录

C:\oraclexe\app\oracle\oradata\ORCL\udump

4.修改listener.ora为下列信息,把此数据库注册在监听器中(可选)在C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN下

原有内容:

在最后一句的XE改成ORCL

5.为了可以访问数据库,修改tnsnames.ora为下列信息

在C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN下

原有内容:

改后:

即增加了下面的内容:

ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
)
)

记得在哪里看过,第一行前面不能有空格,即"ORCL="这个前面不能有空格.(参考资料把XE的删除了,我没删)

6.建立pfile文件C:\oraclexe\app\oracle\product\11.2.0\server\database\initORCL.ora,文件的内容如下:(注意文件名)

background_dump_dest='C:\oraclexe\app\oracle\oradata\ORCL\bdump'
compatible='11.2.0.1.0'
control_files='C:\oraclexe\app\oracle\oradata\ORCL\control01.ctl',C:\oraclexe\app\oracle\oradata\ORCL\control02.ctl'
core_dump_dest='C:\oraclexe\app\oracle\oradata\ORCL\cdump'
db_block_size=8192
db_name='ORCL'
db_recovery_file_dest='C:\oraclexe\app\oracle\fast_recovery_area'
db_recovery_file_dest_size=2147483648
pga_aggregate_target=41943040
processes=150
remote_login_passwordfile='EXCLUSIVE'
sga_max_size=167772160
sga_target=125829120
undo_management='AUTO'
undo_tablespace='undotbs1'
user_dump_dest='C:\oraclexe\app\oracle\oradata\ORCL\udump'
db_create_file_dest='C:\oraclexe\app\oracle\oradata\ORCL'
db_create_online_log_dest_1='C:\oraclexe\app\oracle\oradata\ORCL'

7.连入数据库,并创建spfile文件

以管理员打开cmd

set ORACLE_SID=ORCL

sqlplus.exe / as sysdba

create spfile from pfile;

8.启动数据库到nomount

startup nomount

9.创建creata database文件C:\oraclexe\app\oracle\admin\PF\Create\createdb.sql脚本,具体内容如下:

create database ORCL
user sys identified by oracle
user system identified by oracle
default temporary tablespace temp
undo tablespace undotbs1
character set utf8
national character set al16utf16;

执行createdb.sql

@C:\oraclexe\app\oracle\admin\ORCL\Create\createdb.sql

10.执行catalog.sql,创建数据库的数据字典视图

spool C:\oraclexe\catalog.log

@C:\oraclexe\app\oracle\product\11.2.0\server\RDBMS\ADMIN\catalog.sql

spool off

执行第二句的时候出现了一长串的内容,好像是因为已经建立了报错,可能是之前就有了,不明确有没有问题:

11.执行catproc.sql,创建执行PL/SQL程序所需的所有包

spool C:\oraclexe\catproc.log

@C:\oraclexe\app\oracle\product\11.2.0\server\RDBMS\ADMIN\catproc.sql

spool off

最后两步运行过程虽然有报错,但暂时无视,过后用看看有没有出现问题.(最后一步运行了好久)

到此数据库ORCL创建完毕,可以正常使用了。

需要注意的地方:
 (1)在11g中,如果system01.dbf这个文件用extent management local的话,必须创建一个temporary表空间。
 (2)11g必须创建sysaux01.dbf这个文件
 (3)如果以上步骤出现错误,而错误提示为乱码的话,可以退出SQLPLUS,然后设置环境变量set nls_lang=american_america.zhs16gbk(windows),然后再登录数据库。

总结:创建过程中出现了很多的问题和报错,出现报错后查看告警日志alert_pf,本例中路径是C:\oraclexe\app\oracle\oradata\ORCL\bdump,根据错误号可以google一下,能解决很多问题

以下不是必须的:

在服务里面看到出现OracleServiceORCL,但是是手动开启了,顺手改成自动开启了.

Oracle XE手动建立数据库实例的更多相关文章

  1. Oracle XE自带数据库创建的过程

    Oracle XE自带数据库如何创建的?XE.sql脚本定义实例究竟是怎样的?阅读下文,您可以找到这些问题的答案. Oracle XE自带数据库是如何创建的呢?这是很多人都提到过的问题,下面就为您详细 ...

  2. Oracle启动与关闭数据库实例

    Oracle数据库启动实例分为3个步骤: 启动实例 加载数据库 打开数据库 通用模式: STARTUP  [ nomount | mount | open | force ]  [resetrict] ...

  3. docker 实战---使用oracle xe作为开发数据库(六)

    oracle作为oltp的大佬,非常多行业应用都会用到它.那么在开发的过程中就不可避免的要使用oracle数据库,oracle数据库的版本号有好多,当中express版本号是免费的开发版.它的主要限制 ...

  4. 使用Oracle BBED修改Oracle11g数据库实例名称

    by 蔡建良 2019-2-19 数据库名称存在SYSTEM01.DBF表空间,所以先查出你要修改的数据库的DBID和DBNAME. 一. 查询数据库实例名称 加载ORCL实例数据库的SYSTEM01 ...

  5. windows xp 创建 Oracle(11G)数据库实例时写入系统日志失败解决方案

    1.查看Windows日志相关服务(Even Log),无异常: 2.清空事件管理器中“应用程序”和“系统节点”的内容,对这两个节点,分别在“属性”页面用增大“最大日志文件大小”的值,并选中“按需要改 ...

  6. PLSQL Developer12连接远程Oracle xe 11g

    目标: .学习使用docker下载oracle xe 11g .使用PLSQL连上启动运行oracle xe 11g容器服务 1.准备工作 Linux 安装docker 下载PLSQL Develop ...

  7. 详解Oracle手动创建数据库几大步骤

    在这里我们将介绍Oracle手动创建数据库几大步骤,包括前期的准备工作,以及具体的实施. Oracle手动创建数据库是本文介绍的重点,希望通过本文能帮助大家更好的利用Oracle.51CTO也向您推荐 ...

  8. 【Oracle XE系列之三】使用OMF方式手工创建Oracle XE数据库

    环境:win10_X64_Pro 1.创建数据库实例,实例名为PF C:\oraclexe\app\oracle\product\11.2.0\server\bin>oradim -new -s ...

  9. (转)Linux下Oracle启动、建立表空间、用户、授权、数据库导入导出

    Linux系列 启动1.启动数据库实例,分为两步:第一步,启动监听:第二步,启动数据库实例. 1.1进入到sqlplus启动实例 [oracle@redhat ~]$ su - oracle      ...

随机推荐

  1. JS阻止事件冒泡

    在使用JS事件的时候,外层元素事件有可能被里层元素的事件触发,例如点击里层元素外层也触发了点击,这种现象称为事件冒泡.(李昌辉) <div id="wai"> < ...

  2. 怎样在asp中产生10个0-99的随机数

    <% randomize for i=1 to 10 response.write cint(rnd*100) next %> randomize是随机初始化,使用rnd之前必须要先来一句 ...

  3. Atitit.log日志技术的最佳实践attilax总结

    Atitit.log日志技术的最佳实践attilax总结 1. 日志的意义与作用1 1.1. 日志系统是一种不可或缺的单元测试,跟踪调试工具1 2. 俩种实现[1]日志系统作为一种服务进程存在 [2] ...

  4. vue2.0 非父子组件如何通信

    1 利用父组件传递 A组件传递到父组件,再由父组件传递到B组件 2 利用新的vue实例 var bus = new Vue() // 触发组件 A 中的事件 bus.$emit('id-selecte ...

  5. 初探React,将我们的View标签化

    前言 我之前喜欢玩一款游戏:全民飞机大战,而且有点痴迷其中,如果你想站在游戏的第一阶梯,便需要不断的练技术练装备,但是腾讯的游戏一般而言是有点恶心的,他会不断的出新飞机.新装备.新宠物,所以,很多时候 ...

  6. JS实现文字截取(雾)

    今天在跳板群那里看到一个神奇的样式,效果: 感觉十分神奇,因为一开始以为他是只有一个P元素包着文字然后最后一个自动截取文字,而且最后一行还可以提前截取???这怎么做到的,然后想了一下css怎么做,好像 ...

  7. mac maven

    下载Maven 下载地址 : https://maven.apache.org/download.cgi 解压zip包到指定目录 例如: /Users/Walid/Desktop/develop/to ...

  8. Highchart基础教程-图表的主要组成

    一.Highchar图表的主要组成 1.图表标题(Title):图表包含标题和副表题(subTitle,可选). 2.坐标轴(Axis):包括x轴(xAxis)和y轴(yAxis).多个数据列可以共同 ...

  9. Extjs5 tabs实例

    <%@ page language= "java" contentType ="text/html; charset=UTF-8"     pageEnc ...

  10. xcache的使用与配置

    一.安装Xcache # wget http://xcache.lighttpd.net/pub/Releases/1.3.0/xcache-1.3.0.tar.gz # tar zxvf xcach ...