详解Oracle手动创建数据库几大步骤
在这里我们将介绍Oracle手动创建数据库几大步骤,包括前期的准备工作,以及具体的实施。
Oracle手动创建数据库是本文介绍的重点,希望通过本文能帮助大家更好的利用Oracle。51CTO也向您推荐《Oracle数据库调试与性能优化》专题。
Oracle除自带的DBCA可以创建数据库以为,还有另外一种创建方法,就是Oracle手动创建数据库,也是作为DBA人员必须要掌握的。下面就介绍一下手动创建数据库的步骤:
手动创建数据库通常包含如下操作步骤:
1、确定新建数据库名称和实例名称;
2、确定数据库管理员的认证方式;
3、创建初始化参数文件;
4、创建实例;
5、连接并启动实例;
6、使用create database语句创建数据库;
7、创建附加的表空间;
8、运行脚本创建数据字典视图;
下面以创建一个名为“MYNEWDB”的数据库为例
1、确定数据库名称与实例名称;
- DB_NAME=MYNEWDB
- SID=MYNEWDB
2、确定数据库管理员的认证方式;
管理员的认证方式包括操作系统认证和口令认证两种,本例采用操作系统认证
3、创建初始化参数文件;
Oracle提供的初始化参数样本文件位于$ORACLE_HOME\admin\sample\pfile目录中的initsmpl.ora
我们采用修改样本的方式,创建参数文件名为:initMYNEWDB.ora,存放在D:\oracle\ora92
\database\initMYNEWDB.ora,主要内容设置如下:
#共享服务器设置
- dispatchers="(PROTOCOL=TCP)(SERVICE=MYNEWDBXDB)
#数据库实例名设置
- instance=MYNEWDB
#安全与审计设置
- remote_login_passwordfile=EXCLUSIVE
#排序区大小设置
- pga_aggregate_target=25165824
- sort_area_size=524288
#全局数据库名设置
- db_domain=""
- db_name=MYNEWDB
#控制文件设置
- control_files=("D:\oracle\oradata\MYNEWDB\CONTROL01.CTL",
- "D:\oracle\oradata\MYNEWDB\CONTROL02.CTL",
- "D:\oracle\oradata\MYNEWDB\CONTROL03.CTL")
#SGA区设置
- java_pool_size =33554432
- large_pool_size=8388608
- shared_pool_size=50331648
#游标与库缓存设置
- open_cursors=300
#回退段和撤销表空间设置
- undo_management=AUTO
- undo_retention=10800
- undo_tablespace=UNDOTBS
#诊断与跟踪信息设置
- background_dump_dest=D:\oracle\admin\MYNEWDB\bdump
- core_dump_dest=D:\oracle\admin\MYNEWDB\cdump
- timed_statistics=TRUE
- user_dump_dest=D:\oracle\admin\MYNEWDB\udump
#用户进程设置
processes=150
#缓冲区与数据库大小设置
- db_block_size=8192
- db_cache_size=25165824
- db_file_multiblock_read_count=16
4、创建实例
选择“程序-->运行”,输入“cmd”命令,打开DOS界面
(1)将环境变量ORACLE_SID设置为“MYNEWDB”
C:\SET ORACLE_SID=MYNEWDB
(2)利用ORADIM命令创建MYNEWDB数据库
C:\ORADMIN -NEW -SID MYNEWDB -INTPWD MYNEWDB -STARTMODE MANUAL -PFILE D:\oracle\ora92
\database
注意:ORADMIN是Oracle提供的一个对实例进行管理的工具,可以创建、修改、删除、启动和关闭一个
实例,执行C:\ORADMIN HELP命令可以查看该命令的使用情况
5、连接并启动实例
- C:\sqlplus /nolog
- SQL>connect sys/mynewdb as sysdba;
- SQL>startup nomount;
6、使用create database 语句创建数据库
- SQL>CREATE DATABASE MYNEWDB
- MAXINSTANCES 1
- MAXLOGHISTORY 1
- MAXLOGFILES 5
- MAXLOGMEMBERS 5
- MAXDATAFILES 100
- DATAFILE 'D:\oracle\oradata\mynewdb\system.dbf' size 50M
- UNDO TABLESPACE undotbs DATAFILE 'D:\oracle\oradata\mynewdb\undotbs.dbf' size 50M
- AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED
- DEFAULT TEMPORARY TABLESPACE tempts
- CHARACTER SET US7ASCII
- NATIONAL CHARACTER SET AL16UTF16
- LOGFILE GROUP 1 ('D:\oracle\oradata\mynewdb\redo01.log') size 100M,
- GROUP 2 ('D:\oracle\oradata\mynewdb\redo02.log') size 100M,
- GROUP 3 ('D:\oracle\oradata\mynewdb\redo03.log') size 100M;
在执行create database 语句的同时,自动执行$ORACLE_HOME\rdbms\admin\sql.bsq脚本,创建SYSTEM表空间和SYSTEM回退段、建立SYS和SYSTEM账号、建立数据字典基础表、建立数据字典索引、创建预定义角色等。
7、创建附加的表空间
用create database语句创建的数据库中只有SYSTEM、UNDOTBS和TEMPTBS三个表空间,还需要创建其他
一些额外的表空间
- SQL>create tablespace users
- datafile 'd:\oracle\oradata\mynewdb\users01.dbf' size 100M
- reuse autoextend on next 1280K maxsize unlitited
- extend management local;
- SQL>create tablespace index
- datafile 'd:\oracle\oradata\mynewdb\index01.dbf' size 100M
- reuse autoextend on next 1280K maxsize unlimited
- extend management local;
8、运行脚本创建数据字典视图
执行两个脚本语句:
----用于创建数据字典视图,包括V$动态性能视图和它们的同义词,同时将授予PUBLIC角色对这些同义
词的访问权限
- SQL>@D:\oracle\ora92\rdbms\admin\catalog.sql;
----用于建立对PL/SQL程序设计的支持
- SQL>@D:\oracle\ora92\rdbms\admin\catproc.sql;
9、创建服务器初始化参数文件
- SQL>create spfile from file='d:\oracle\ora92\database\initMYNEWDB.ora';
执行该语句将在$ORACLE_HOME\database 目录下创建名为spfileMYNEWDB.ora的服务器初始化参数文件
需要重启数据库
- SQL>shutdown immediate;
- SQL>connect sys/mynewdb as sysdba;
- SQL>startup
【编辑推荐】
出处:http://database.51cto.com/art/201002/184885.htm
详解Oracle手动创建数据库几大步骤的更多相关文章
- [转帖]详解oracle数据库唯一主键SYS_GUID()
详解oracle数据库唯一主键SYS_GUID() https://www.toutiao.com/i6728736163407856139/ 其实 需要注意 这里满不能截取 因为截取了 就不一定唯一 ...
- [转帖]万字详解Oracle架构、原理、进程,学会世间再无复杂架构
万字详解Oracle架构.原理.进程,学会世间再无复杂架构 http://www.itpub.net/2019/04/24/1694/ 里面的图特别好 数据和云 2019-04-24 09:11:59 ...
- 用一个开发案例详解Oracle临时表
用一个开发案例详解Oracle临时表 2016-11-14 bisal ITPUB  一.开发需求 最近有一个开发需求,大致需要先使用主表,或主表和几张子表关联查询出ID(主键)及一些主表字段 ...
- Mysql加锁过程详解(6)-数据库隔离级别(1)
Mysql加锁过程详解(1)-基本知识 Mysql加锁过程详解(2)-关于mysql 幻读理解 Mysql加锁过程详解(3)-关于mysql 幻读理解 Mysql加锁过程详解(4)-select fo ...
- Windows下Oracle 11g创建数据库
以前开发的时候用得比较多的是mysql和sql server,oracle用的比较少,用起来比较生疏,mysql和sql server用起来比较类似,就oracle的使用方式和他们不同,oracle在 ...
- Oracle11g手动创建数据库方法
Oracle11g手动创建数据库方法 参考网页http://www.th7.cn/db/Oracle/201311/36926.shtml 安装路径 我的安装路径是:E:\app\admin\prod ...
- Hadoop基础-Idea打包详解之手动添加依赖(SequenceFile的压缩编解码器案例)
Hadoop基础-Idea打包详解之手动添加依赖(SequenceFile的压缩编解码器案例) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.编辑配置文件(pml.xml)(我 ...
- [转帖]【Oracle】详解Oracle中NLS_LANG变量的使用
[Oracle]详解Oracle中NLS_LANG变量的使用 https://www.cnblogs.com/HDK2016/p/6880560.html NLS_LANG=LANGUAGE_TERR ...
- ABP创建数据库操作步骤
1 ABP创建数据库操作步骤 1.1 SimpleTaskSystem.Web项目中的Web.config文件修改数据库配置. <add name="Default" pro ...
随机推荐
- 项目管理工具- Maven
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3. ...
- Linux内核源码目录说明
Linux内核源代码位于/usr/src/linux目录下,其结构分布如图1.3所示,每一个目录或子目录可以看作一个模块,其目录之间的连线表示“子目录或子模块”的关系.下面是对每一个目录的简单描述. ...
- ConcurrentHashMap——浅谈实现原理及源码
本文整理自漫画:什么是ConcurrentHashMap? - 小灰的文章 - 知乎 .已获得作者授权. HashMap 在高并发下会出现链表环,从而导致程序出现死循环.高并发下避免HashMap 出 ...
- Installing VirtualBox DKMS in Kali 2.0
Kali linux is one of the mainly used operating system by the Ethical hackers and information securit ...
- git将多个commit合并成一个新的commit
问题: 有以下commit: 323udd ede234 6e7s6e 要合并第一个和第二个commit 方法有二: 方法一 使用git rebase -i hash-id,-i表示以交互模式进行co ...
- BloomFilter–大规模数据处理利器
转自: http://www.dbafree.net/?p=36 BloomFilter–大规模数据处理利器 Bloom Filter是由Bloom在1970年提出的一种多哈希函数映射的快速查找算法. ...
- BZOJ 2005: [Noi2010]能量采集(莫比乌斯反演)
http://www.lydsy.com/JudgeOnline/problem.php?id=2005 题意: 思路: 首先要知道一点是,某个坐标(x,y)与(0,0)之间的整数点的个数为gcd ...
- UVa 11538 象棋中的皇后
https://vjudge.net/problem/UVA-11538 题意: n×m的棋盘,有多少种方法放置两个相互攻击的皇后? 思路: 这两个皇后互相攻击的方式只有3种,在同一行,在同一列,或在 ...
- linux突然断电重启,配置文件丢失/程序无法打开/文件损坏
电脑突然断电,重新开机后发现有的程序无法正常启动,原因是配置文件损坏了.感觉奇怪,为什么在硬盘里的文件会内容丢失? 1.可能:写数据的过程被中断,只完成了一部分.可能会出现乱码(因为只写了几个字节,不 ...
- Rails 5 Test Prescriptions 第8章 Integration Testing with Capybara and Cucumber
Capybara: A complete reference is available atrubydoc.info. 集成测试就是把局部的程序组合起来测试. 端到端测试是一个特殊的集成测试,覆盖了 ...