当前位置:  数据库>oracle

Oracle 实例创建脚本

    来源: 互联网  发布时间:2017-06-08

    本文导语: 遥想刚入职时,一台服务器就挂了,所以就是在“危难”中有机会学习。在夜深人静时,我想去回忆一下Oracle实例的创建。一种方法,DBCA,图形界面,但是需要依赖xming或xmanager这类软件;另一种方法就是脚本创建Oracle数据库实...

遥想刚入职时,一台服务器就挂了,所以就是在“危难”中有机会学习。在夜深人静时,我想去回忆一下Oracle实例的创建。一种方法,DBCA,图形界面,但是需要依赖xming或xmanager这类软件;另一种方法就是脚本创建Oracle数据库实例。第一种方法简单,易上手,但是对初学者,不能学习到更多数据库知识;第二种方法用脚本就能更了然数据库的各种文件以及参数。本文只介绍脚本创建Oracle实例。

记得2010年,还是用Oracle10g,如今用11g,他们的差异在于dump 目录略不同。我们就高不就低,以Oracle 11g创建一个实例为例,一起看看有哪些点需要我们注意滴。

第一步:创建文件目录,并将文件目录授权给oracle用户,以webdb为实例名举例,进行如下操作,其中adump,dpdump,fast_recovery_area 是必须要有的(这几个目录11g跟10g略不同,需要注意),oradata/webdb和/tabdata/webdb的创建根据管理员习惯,一般oradata/webdb用来存储系统级别文件,如redolog,system file,undo file 等,tabdata/webdb用来放新增表空间文件(数据文件)。

mkdir -p /u00/app/oracle/admin/webdb/adump

mkdir -p /u00/app/oracle/admin/webdb/dpdump

mkdir -p /u00/app/oracle/fast_recovery_area/webdb

mkdir -p /u01/oradata/webdb

mkdir -p /u01/tabdata/webdb

chown oracle:oinstall /u00/app/oracle/admin/webdb/adump

chown oracle:oinstall /u00/app/oracle/admin/webdb/dpdump

chown oracle:oinstall /u00/app/oracle/fast_recovery_area/webdb

chown oracle:oinstall /u01/oradata/webdb

chown oracle:oinstall /u01/tabdata/webdb

 

第二步:export 实例名称

ORACLE_SID=webdb; export ORACLE_SID

 

第三步:手工在/etc/oratab文件下增加实例名称(这个文件很重要,详情后续会有文章介绍)

echo "webdb:$ORACLE_HOME:Y" >> /etc/oratab

 

第四步:手工在$ORACLE_HOME/dbs增加pfile 文件(此文件是实例参数值的重要文件)

 

vi $ORACLE_HOME/dbs/initwebdb.ora

文件内容如下:

webdb.__db_cache_size=679477248

webdb.__java_pool_size=4194304

webdb.__large_pool_size=4194304

webdb.__oracle_base='/u00/app/oracle'#ORACLE_BASE set from environment

webdb.__pga_aggregate_target=104857600

webdb.__sga_target=943718400

webdb.__shared_io_pool_size=0

webdb.__shared_pool_size=243269632

webdb.__streams_pool_size=0

*.audit_file_dest='/u00/app/oracle/admin/webdb/adump'

*.audit_trail='db'

*.compatible='11.2.0.0.0'

*.control_files='/u01/oradata/webdb/control01.ctl','/u00/app/oracle/fast_recovery_area/webdb/control02.ctl'

*.db_block_size=8192

*.db_domain='webex.com'

*.db_name='webdb'

*.db_recovery_file_dest='/u00/app/oracle/fast_recovery_area'

*.db_recovery_file_dest_size=2097152000

*.diagnostic_dest='/u00/app/oracle'

*.dispatchers='(PROTOCOL=TCP) (SERVICE=webdbXDB)'

*.open_cursors=500

*.pga_aggregate_target=104857600

*.processes=1000

*.remote_login_passwordfile='EXCLUSIVE'

*.sessions=1105

*.sga_target=943718400

*.undo_tablespace='UNDOTBS1'

 

第五步:手工orap生成密码

$ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/orapwwebdb password=dbpassword force=y

 

第六步:运行一些列脚本,直至数据库创建完毕。

(1)$ORACLE_HOME/bin/sqlplus /nolog

(2)sql>connect "SYS"/"password" as SYSDBA

//创建spfile基于刚给的pfile,为什么创建一个,这个很有用,万一pfile出错了,或者被意外更改,spfile的用途很大,后边有空来详细介绍下spfile跟pfile的使用,如果有spfile,oracle默认限度spfile,只有当spfile没有时,才读pfile。而且spfile是二进制,pfile就是普通的文件,可读可改。方便的同时也容易被误操作。

(3)sql>create spfile='$ORACLE_HOME/dbs/spfilewebdb.ora' from pfile='$ORACLE_HOME/dbs/initwebdb.ora';

(4)sql>startup nomount

(5)@createdb.sql

//createdb.sql脚本如下,其中包括redolog 大小,位置,以及系统文件等,尤其注意character set设置在这里,不要一失足,后面该很麻烦滴。关于这个字符集设置,小编也有血泪史,后面给大家介绍些诡异的手法。

CREATE DATABASE webdb

LOGFILE group 1 ('/u01/oradata/webdb/redo01.log' ) SIZE 51200K,

group 2 ('/u01/oradata/webdb/redo02.log' ) SIZE 51200K,

group 3 ('/u01/oradata/webdb/redo03.log' ) size 51200K

DATAFILE '/u01/oradata/webdb/system01.dbf' SIZE 200M autoextend on next 10M maxsize unlimited

sysaux datafile '/u01/oradata/webdb/sysaux01.dbf' size 100M autoextend on next 10M maxsize unlimited

character set WE8ISO8859P1

EXTENT MANAGEMENT LOCAL

undo tablespace UNDOTBS1

datafile '/u01/oradata/webdb/UNDOTBS01.dbf'

size 50M autoextend on next 5M maxsize UNLIMITED

default temporary tablespace temp

tempfile '/u01/oradata/webdb/temp01.dbf'

size 50M autoextend on next 640K maxsize UNLIMITED;

startup force;

ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;

ALTER SYSTEM SWITCH LOGFILE;

 

(6)@dic.sql

//运行数据字典dic.sql内容如下:

SET VERIFY OFF

connect "SYS"/"password" as SYSDBA

spool dic

@?/rdbms/admin/catalog.sql

@?/rdbms/admin/catproc.sql

@?/rdbms/admin/catblock.sql

@?/rdbms/admin/catoctk.sql

@?/rdbms/admin/owminst.plb

spool off

connect "SYSTEM"/"password"

spool pub

@?/sqlplus/admin/pupbld.sql

@?/sqlplus/admin/help/hlpbld.sql helpus.sql

spool off

(7)@ctab.sql

//ctab.sql 是创建表空间,语法格式如下。

connect "SYS"/"password" as SYSDBA

spool ctab

DROP TABLESPACE BACKUPINCLUDING CONTENTS AND DATAFILES;

 

CREATE TABLESPACE BACKUP DATAFILE

'/u01/tabdata/webdb/BACKUP.dbf' SIZE 1320M AUTOEXTEND ON NEXT 8K MAXSIZE UNLIMITED

LOGGING

ONLINE

PERMANENT

EXTENT MANAGEMENT LOCAL UNIFORM SIZE 512K

BLOCKSIZE 8K

SEGMENT SPACE MANAGEMENT AUTO

FLASHBACK ON;

(8)@cuser.sql

//cuser.sql是用来创建用户。

sqlplus / as sysdba

CREATE USER MAINT

IDENTIFIED BY password

DEFAULT TABLESPACE BACKUP

TEMPORARY TABLESPACE TEMP

PROFILE DEFAULT

ACCOUNT UNLOCK;

-- 2 Roles for MAINT

GRANT CONNECT TO MAINT;

GRANT RESOURCE TO MAINT;

ALTER USER MAINT DEFAULT ROLE ALL;

-- 1 System Privilege for WBXMAINT

GRANT UNLIMITED TABLESPACE TO MAINT;

==============================================================================

Done

基于以上步骤,就可以so easy且有所得滴创建一个instance。

还需要在listener 以及tns 文件上天剑才能进行网络连接。后面会给大家分享OracleDB连接方式时,再详细介绍。

希望对您有帮助,有什么可以帮您?请留言。

Oracle 11g 在RedHat Linux 5.8_x64平台的安装手册

Linux-6-64下安装Oracle 12C笔记

在CentOS 6.4下安装Oracle 11gR2(x64)

Oracle 11gR2 在VMWare虚拟机中安装步骤

Debian 下 安装 Oracle 11g XE R2


    
 
 

您可能感兴趣的文章:

  • linux环境下oracle条件导出数据的shell脚本怎么写
  • Oracle新手教程 手工创建数据库的全部脚本及说明
  • 杀掉oracle在线用户脚本分享
  • linux能够通过执行脚本添加oracle数据库的用户吗
  • linux下oracle的自启动脚本解析
  • 怎么写一个Shell来执行这样的功能,访问Oracle数据库,然后执行一个SQL脚本,生成一个文件。急!
  • oracle使用sql脚本生成csv文件案例学习
  • shell 执行oracle sql脚本的问题
  • Linux下Oracle归档日志自动清理脚本代码(sh)
  • 求教:shell 脚本怎么获取ORACLE存储过程的返回值?
  • Oracle 10g在Solaris 10下的自动运行脚本
  • Oracle 获得以百分号结尾的脚本有三种写法
  • Linux下用SHELL脚本执行带输入输出参数的ORACLE存储过程并得到结果
  • Linux oracle数据库自动备份自动压缩脚本代码
  • 高手帮忙solaris中oracle的启动脚本
  • Oracle 下导入txt的shell脚本以及配置
  • Linux下安装ORACLE 10g前的系统设置脚本
  • Oracle 数据库管理脚本命名规范
  • oracle 服务启动,关闭脚本(windows系统下)
  • 请教:如何在java程序里直接执行Oracle的sql脚本,谢谢先!在线等待,有参考意见即可加分。
  • Linux上建立第二个ORACLE实例分析
  • Linux操作系统下Oracle数据库多实例启动方式及修改内存
  • oracle的存储过程实例讲解
  • linux redhat5.6安装oracle11g在自动创建实例时停住不动,有图
  • oracle分页存储过程 oracle存储过程实例
  • C#连接Oracle数据库的实例方法
  • Oracle数据库实例两则
  • Oracle 删除归档日志实例
  • Oracle 10g for solaris准备工作和实例的删除
  • Oracle 11G 无法连接到数据库实例故障排除
  • Linux下设置Oracle 10g 服务以及实例自动启动
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • oracle 视图权限 oracle 创建视图权限不足
  • oracle 创建表空间步骤代码
  • Linux系统下创建第二个oracle数据库
  • oracle 创建数据库小知识
  • Oracle创建用户权限的过程
  • Oracle WebLogic Server 安装并创建域
  • Oracle 10g创建表空间和用户并指定权限
  • oracle 创建表空间详细介绍
  • 在RedHat Advance Server下安装Oracle9i R2不能创建数据库问题
  • 在oracle数据库里创建自增ID字段的步骤
  • oracle创建删除用户示例分享(oracle删除用户命令及授权)
  • Oracle使用配置文件创建口令管理策略
  • oracle命令行删除与创建用户的代码
  • oracle删除主键查看主键约束及创建联合主键
  • Oracle 10g表空间创建的完整步骤
  • Oracle创建主键自增表(sql语句实现)及触发器应用
  • Oracle 创建监控账户 提高工作效率
  • Oracle11.2 命令行手工最简创建数据库的过程
  • Oracle中手工创建数据库的全部脚本与说明
  • SQL语句创建Oracle Spatial的图层方法简介
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,