由于是自己自学Oracle,如果有问题,请大家指出,谢谢!

Oracle提供了DBCA来创建数据库,对于初学者来说使用DBCA创建数据库简化了很多工作和设置,直接在交互界面即可实现所有的功能。

然而对于实际的生产数据库来说,使用DBCA来创建不切实际,建议按实际需求规划来创建数据库。

Oracle数据库的创建不像SQL server,直接使用CREATE DATABASEDB_NAME(仅作临时,演示用)一条语句即可实现。

不管是SQL还是Oracle,对于创建生产型数据库都需要进行需求分析、规划、创建等步骤。

一、规划数据库
创建数据库的目的(高可用性、并发性、数据装载)
数据库的应用类型(OLAP,OLTP)
数据库存储结构的设计
数据库的名称、字符集
db_block 块的大小
数据库容量的初始大小及增幅
二、建库前需要确认的问题
(创建后不可修改) 可调整的设置,建议提前确定 其他注意事项

数据库字符集(建议使用AL32UTF8,该字符集支持XML)

SGA大小sga_max_size 文件存储方式(文件系统/RAW/ASM)
数据库的名称(SID) 日志缓冲区大小log_buffer日志缓冲区大小log_buffer 数据文件、日志文件大小、存储位置
数据块的大小 最大允许进程数 表空间的构成
三、创建数据库的方法
序号 方法 优点 缺点
1

使用DBCA创建数据库:

通过安装软件后自动调用DBCA来创建;

运行Oracle Database Configuration Assistant ;

命令行下输入dbca,手动调用DBCA创建(图型化界面,跨平台);

GUI方法使用方便; 建议不熟悉创建过程的DBA使用该方法 不过创建过程有些慢
2 用命令行的方式建立数据库; 可以熟悉创建指令,创建原理 配置简单,要求熟记命令行指令
3 通过运行自定义的批处理脚本(或create_ORACLE_SID.bat(create_ORACLE_SID.sql))来创建配置或删除数据库 - -

方法23具体实现:

2.用命令行的方式建立数据库;

CONNECT / AS SYSDBA
STARTUP PFILE= 'C:oracleadmininit_testorcl.ora' NOMOUNT;
CREATE DATABASE testOrcl DATAFILE '/u02/oracle/testOrcl/system01.dbf' SIZE 100M
LOGFILE GROUP1 ('/u01/oracle/testOrcl/redo1a.log',
'/u02/oracle/testOrcl/redo1b.log') SIZE 500K,
GROUP2 ('/u01/oracle/testOrcl/redo1a.log',
'/u02/oracle/testOrcl/redo1b.log') SIZE 500K
CHARACTER SET ZHS16CGB231280;

--将数据库直接从未建置状态转换到打开状态

ALTER DATABASE OPEN;

--删除数据库(Dropping a Database)

SPOOL C:DROP_DATABASE.BAT
SELECT 'DEL '||NAME 删除数据库相关数据文件 FROM V$DATAFILE;
SELECT 'DEL '||MEMBER 删除数据重构日志文件 FROM V$LOGFILE;
SPOOL OFF;

3.通过运行自定义的批处理脚本(或create_ORACLE_SID.bat(create_ORACLE_SID.sql))来创建配置或删除数据库。

--create_ORACLE_SID.bat

set ORACLE_SID= ORACLE_SID.
del C:ORACLE8IdatabasepwdORACLE_SID.ora
C:ORACLE8Ibinoradim -new -sid ORACLE_SID. -intpwd oracle -startmode manual
-pfile C:ORACLE8IadminORACLE_SIDpfileinit.ora
C:ORACLE8Ibinsvrmgrl @C:WINNTProfilesAdministratorLbORACLE_SIDrun.sql
C:ORACLE8Ibinsvrmgrl @C:WINNTProfilesAdministratorLbORACLE_SIDrun1.sql
C:ORACLE8Ibinoradim -edit -sid ORACLE_SID -startmode auto

--ORACLE_SIDrun.sql

spool C:ORACLE8IadminORACLE_SIDcreatecreatedb
set echo on
connect INTERNAL/oracle
startup nomount pfile=C:ORACLE8IadminORACLE_SIDpfileinit.ora
CREATE DATABASE ORACLE_SID
LOGFILE 'C:ORACLE8IoradataORACLE_SIDredo01.log' SIZE 1024K,
'C:ORACLE8IoradataORACLE_SIDredo02.log' SIZE 1024K
MAXLOGFILES 32
MAXLOGMEMBERS 2
MAXLOGHISTORY 1
DATAFILE 'C:ORACLE8IoradataORACLE_SIDsystem01.dbf' SIZE 50M REUSE
MAXDATAFILES 254
MAXINSTANCES 1
CHARACTER SET ZHT16BIG5
NATIONAL CHARACTER SET ZHT16BIG5;
spool off

--ORACLE_SIDrun1.sql

spool C:ORACLE8IadminORACLE_SIDcreatecreatedb1
set echo on
connect INTERNAL/oracle
ALTER DATABASE DATAFILE 'C:ORACLE8IoradataORACLE_SIDsystem01.dbf' AUTOEXTEND ON;
CREATE ROLLBACK SEGMENT SYSROL TABLESPACE "SYSTEM" STORAGE (INITIAL 100K NEXT 100K);
ALTER ROLLBACK SEGMENT "SYSROL" ONLINE;

另外我要说的是,新建全局数据库后:

sys的口令是:change_on_install

system的口令是:manager

第一次启动的服务器有:

OracleOraHome90Agent

OracleOraHome90TNSListener

OracleService(你数据库名字:例如你建立的数据库和SID名为:NEW,那这里就是NEW)

         由于自己还是oracle小白,因此使用第一种方法创建数据库,下面将详述其过程:

1.【开始】/【程序】/【Oracle - OraDb10g_home1】/【配置和移植工具】/【Database Configuration Assistant】双击

或者打开命令提示符(运行中输入CMD打开 ),输入dbca,回车。

2.出现DBCA欢迎界面,点击下一步。

3.选择创建数据库,点击下一步。

4.选择一般用途或事务处理,下一步。

5.输入数据库名称,默认全局和SID 是一样的,为mydb,点击下一步。

6.配置EM,这里你可以去掉勾,不去配置。点下一步。

7.设置用户口令,可根据自己需求新选择,使用不同管理口令还是所有账户使用同一管理口令。

8.我选择所有账户使用同一管理口令,密码设为了123,点击下一步,出现以下提示,

可以忽略,点击是。

9.此后一直“下一步”即可。

字符集改为了AL32UTF8,可以根据需要修改

10.勾选生成数据库创建脚本,点击完成。

11.确认即可,生成脚本文件。

12.确定后,继续创建数据库。

由于Enterprise Manager配置出错,如何解决该类问题。其实报错已经说明是因为监听程序未启动,

1).可直接打开NET Configuration Assistant进行监听程序配置。

2).重新配置EM

Oracle 11g数据库的创建的更多相关文章

  1. oracle 11g 数据库恢复技术 ---02 控制文件

    oracle 11g 数据库恢复技术 ---02 控制文件 SYS@ orcl >show parameter control_file NAME TYPE VALUE ------------ ...

  2. 在Windows 10上安装Oracle 11g数据库出现的问题及解决

    在Windows 10上安装Oracle 11g数据库,并且很多次出现过:当安装的进度条进行到快要结束的时候弹出一个提示框.如下: [Java(TM)2 Platform Standard Editi ...

  3. 完美完全卸载Oracle 11g数据库

    Oracle 11g可在开始菜单中卸载,然后同时需要删除注册表中相关内容. 操作系统:windows10专业版. 卸载步骤: 1.停用oracle服务:进入计算机管理,在服务中,找到oracle开头的 ...

  4. PL/SQL Developer工具包和InstantClient连接Oracle 11g数据库

    一.前言 PLSQL Developer是Oracle数据库开发工具,很牛也很好用,PLSQL Developer功能很强大,可以做为集成调试器,有SQL窗口,命令窗口,对象浏览器和性能优化等功能. ...

  5. 在Windows10系统下安装Oracle 11g数据库

    在Windows10系统下安装Oracle 11g数据库 https://blog.csdn.net/wei1992_6/article/details/60054727

  6. Windows下Oracle 11g安装以及创建数据库

    安装数据库 事实上Oracle安装 1.安装准备 Oracle的安装包下载以后是两个压缩包,同时选中两个压缩包右击进行解压 2.解压完成如下图所示 3.双击 setup.exe 文件进行安装,会弹出以 ...

  7. Oracle 11g数据库详细安装步骤图解

    1.先到Oracle官网上下载11g oracle Database 11g 第 2 版 (11.2.0.1.0) 标准版.标准版 1 以及企业版 适用于 Microsoft Windows (x64 ...

  8. Windows系统安装Oracle 11g 数据库

    一.下载 http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html以下两网址来源此官方下载页 ...

  9. Windows系统安装Oracle 11g数据库

    一.下载 http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html以下两网址来源此官方下载页 ...

随机推荐

  1. 在Markdown中写注释

    概述 下面是我整理的在Markdown中写注释的几种方法,供自己开发时参考,相信对其他人也有用. html标签 既然Markdown内嵌html语法,那么就可以用可以用隐藏的html标签. 注意:需要 ...

  2. JAVA学习路线——匹马行天下

  3. C#基础-gc算法

    众所周知,c++是需要程序员手动管理内存的,然而手动释放内存很容易被程序员遗漏,从而导致资源浪费或内存泄露.为解决这个问题,垃圾回收器诞生了,代替程序员自动管理内存的释放.至于gc算法则是垃圾回收器清 ...

  4. CUDA driver version is insufficient for CUDA runtime version 解决

    配置ubuntu17.1+CUDA9.2的caffe环境,CUDA sample编译完成,执行到./deviceQuery时报错:CUDA driver version is insufficient ...

  5. @pathvariable和@RequestParam的区别

    @PathVariable 获取的是请求路径url中的值: (http://xxx.xxx.com/get_10.html,侧重于请求的URL路径里面的{xx}变量 ) //获取url中某部分的值 @ ...

  6. 微服务开发有道之把项目迁移到Kubernetes上的5个小技巧

    我们将在本文中提供5个诀窍帮你将项目迁移到Kubernetes上,这些诀窍来源于过去12个月中OpenFaas社区的经验.下文的内容与Kubernetes 1.8兼容,并且已经应用于OpenFaaS ...

  7. websphere静态文件转发出错问题 SimpleFileServlet

    ERROR DESCRIPTION: Using a RequestDispatcher to explicitly forward to the WebContainer's SimpleFileS ...

  8. html css 其他常用 onclick跳转

    opacity: 0.5. 0-1 透明度 cursor: pointer;手指 clear:both 清楚浮动 我是医生不是人 文本内容超出框word-wrap:break-word; word-b ...

  9. Spring Boot + Spring Cloud 实现权限管理系统 后端篇(二十一):服务网关(Zuul)

    在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 技术背景 前面我们通过Ribbon或Feign实现了微服务之间的调用和负载均衡 ...

  10. mysql查找一个字段属于哪个表

    查询mid字段存在于哪个表中 SELECT TABLE_SCHEMA,TABLE_NAME FROM information_schema.`COLUMNS` WHERE COLUMN_NAME='m ...