返回顶部
首页 > 资讯 > 数据库 >Oracle如何实现手工建库
  • 953
分享到

Oracle如何实现手工建库

2024-04-02 19:04:59 953人浏览 安东尼
摘要

这篇文章主要为大家展示了“oracle如何实现手工建库”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Oracle如何实现手工建库”这篇文章吧。 可参考官方文档

这篇文章主要为大家展示了“oracle如何实现手工建库”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Oracle如何实现手工建库”这篇文章吧。

可参考官方文档操作

管理员指南
创建并配置数据库

使用建库语句创建数据库
 

1-14 为官方文档手工建库步骤,9为建库语句

步骤1:指定实例标识符(SID)

步骤2:确保设置了所需的环境变量

第3步:选择数据库管理员身份验证方法

第4步:创建初始化参数文件

步骤5 :(仅限windows)创建一个实例

第6步:连接到实例

第7步:创建一个服务器参数文件

第8步:启动实例

第9步:发出CREATE DATABASE语句

第10步:创建附加的表空间

第11步:运行脚本来构建数据字典视图

步骤12 :(可选)运行脚本以安装其他选项

步骤13:备份数据库。

步骤14 :(可选)启用自动实例启动

1、创建必备的文件路径

下面介绍下这几个文件路径的作用。 
adump:存放审计信息 
bdump:bdump目录存放的是数据库动行过程中的各个后台进程的跟踪信息,当中alert文件是警告文件,其文件名称为alert_book.log,当数据库出现问题时,首先就可以去查看此文件以找出原因,手工创建过程中出现的各种问题往往也可以通过查看这个文件找到原因。 
cdump:数据库遇到异常时用于存放异常信息。 
create:不详 
pfile:存放初始化参数文件。 
scripts:不详 
udump:放置sql trace之后的session的trace文件。 
(2) 在oradata文件夹下创建TESTDB文件夹 

(3)在flash_recovery_area文件夹下创建TESDB文件夹

[oracle@ENMOEDU oracle]$ cd /u01/app/oracle/

[oracle@ENMOEDU oracle]$ mkdir -p admin/TESTDB/audmp

[oracle@ENMOEDU oracle]$ mkdir -p flash_recovery_area

2、创建初始化参数文件pfile

方法一:从其他库拷贝一个pfile参数文件,修改内容和文件名为本次使用。见下initorcl.ora

orcl.__db_cache_size=855638016
orcl.__java_pool_size=16777216
orcl.__large_pool_size=16777216
orcl.__oracle_base='E:\app\Administrator'#ORACLE_BASE set from environment
orcl.__pga_aggregate_target=1191182336
orcl.__sga_target=2248146944
orcl.__shared_io_pool_size=0
orcl.__shared_pool_size=1325400064
orcl.__streams_pool_size=0
*.audit_file_dest='E:\app\Administrator\admin\orcl\adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='E:\APP\ADMINISTRATOR\ORADATA\ORCL\CONTROL01.CTL','E:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\CONTROL02.CTL'#Restore Controlfile
*.db_block_size=8192
*.db_domain=''
*.db_name='orcl'
*.db_recovery_file_dest_size=4102029312
*.db_recovery_file_dest=''
*.diagnostic_dest='E:\app\Administrator'
*.dispatchers='(PROTOCOL=tcp) (SERVICE=orclXDB)'
*.log_arcHive_dest='E:\log'
*.log_archive_fORMat='arch_%t_%s_%r.log'
*.memory_target=3435134976
*.open_cursors=300
*.processes=150
*.remote_login_passWordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'

方法二:根据安装软件自带init.ora来创建pfile文件并调整
我们根据Oracle安装软件$ORACLE_HOME/dbs

(E:\app\Administrator\product\11.2.0\dbhome_1\dbs)目录下自带的init.ora来定制我们需要的pfile。
(1)拷贝init.ora到“E:\app\Administrator\product\11.2.0\dbhome_1\database”路径下,并在更名为“initTESTDB.ora”。 

(2)编辑“initTESTDB.ora”文件。 

[oracle@ENMOEDU dbs]$ vi initTESTDB.ora 

diagnostic_dest='/u01/app/oracle'

db_name='TESTDB'

memory_target=1G

processes = 150

audit_file_dest='/u01/app/oracle/admin/TESTDB/adump'

audit_trail ='db'

db_block_size=8192

db_domain=''

db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'

db_recovery_file_dest_size=2G

diagnostic_dest='/u01/app/oracle'

open_cursors=300

remote_login_passwordfile='EXCLUSIVE'

undo_tablespace='UNDOTBS1'

control_files = (/u01/app/oracle/oradata/TESTDB/control01.ctl,/u01/app/oracle/oradata/TESTDB/control02.ctl)

compatible ='11.2.0'

基础模板如下:

db_name='ORCL'

memory_target=1G

processes = 150

audit_file_dest='/admin/orcl/adump'

audit_trail ='db'

db_block_size=8192

db_domain=''

db_recovery_file_dest='/flash_recovery_area'

db_recovery_file_dest_size=2G

diagnostic_dest=''

dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'

open_cursors=300

remote_login_passwordfile='EXCLUSIVE'

undo_tablespace='UNDOTBS1'

control_files = (ora_control1, ora_control2)

compatible ='11.2.0'

3、设置oracle启动的实例名称

set ORACLE_SID=TESTDB 

4、创建库实例

CMD命令行中输入命令:oradim -new -sid TESTDB 

5、创建密码文件

Oracle的口令文件的作用是存放所有以sysdba或者sysoper权限连接数据库的用户的口令。 
打开CMD命令,输入命令行: 
orapwd file=E:\app\SANMSUNG\product\11.2.0\dbhome_1\database\PWDTESTDB.ora password=oracle  entries=30

注意,entries参数指定数据库拥用DBA权限的用户的个数,该参数可由用户指定。

6、启动数据库到nomount状态

sqlplus / as sysdba

startup nomount

7、执行建库语句

以下语句可以拷贝到CMD命令行执行,也可以复制到文本文件中用@执行。 


CREATE DATABASE TESTDBCREATE DATABASE testdb
USER SYS IDENTIFIED BY oracle
USER SYSTEM IDENTIFIED BY oracle
LOGFILE GROUP 1 ('E:\oracle\oradata\testdb\redo01.log') SIZE 100M,
GROUP 2 ('E:\oracle\oradata\testdb\redo02.log') SIZE 100M,
GROUP 3 ('E:\oracle\oradata\testdb\redo03.log') SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACER SET zhs16gbk
NATIONL CHARACTER SET AL16UTF16
EXTENT MANAGEMENT LOCAL  
DATAFIE 'E:\oracle\oradata\testdb\system01.dbf' SIZE 500M REUSE 
SYSUX DATAFILE 'E:\oracle\oradata\testdb\sysaux01dbf' SIZE 500M REUSE
DEFAULT TABLESPACE users
      DATAFILE 'E:\oracle\oradata\testdb\users01.dbf'
      SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED 
DEFAULT TEMPORARY TABLESPACE temp
      TEMPFILE 'E:\oracle\oradata\testdb\temp01.dbf'
      SIZE 20M REUSE autoextend on maxsize unlimited  
UNDO TABLESPACE undotbs1
      DATAFILE 'E:\oracle\oradata\testdb\undotbs01.dbf'
      SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

7.1借助官方文档编写建库语句

查看官方文档参考:http://blog.csdn.net/huangyanlong/article/details/43925909

CREATE DATABASE mynewdb

   USER SYS IDENTIFIED BY sys_password

   USER SYSTEM IDENTIFIED BY system_password

   LOGFILE GROUP 1 ('/u01/logs/my/redo01a.log','/u02/logs/my/redo01b.log') SIZE 100M BLOCKSIZE 512,

           GROUP 2 ('/u01/logs/my/redo02a.log','/u02/logs/my/redo02b.log') SIZE 100M BLOCKSIZE 512,

           GROUP 3 ('/u01/logs/my/redo03a.log','/u02/logs/my/redo03b.log') SIZE 100M BLOCKSIZE 512

   MAXLOGFILES 5

   MAXLOGMEMBERS 5

   MAXLOGHISTORY 1

   MAXDATAFILES 100

   CHARACTER SET AL32UTF8

   NATIONAL CHARACTER SET AL16UTF16

   EXTENT MANAGEMENT LOCAL

   DATAFILE '/u01/app/oracle/oradata/mynewdb/system01.dbf' SIZE 325M REUSE

   SYSAUX DATAFILE '/u01/app/oracle/oradata/mynewdb/sysaux01.dbf' SIZE 325M REUSE

   DEFAULT TABLESPACE users

      DATAFILE '/u01/app/oracle/oradata/mynewdb/users01.dbf'

      SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED

   DEFAULT TEMPORARY TABLESPACE tempts1

      TEMPFILE '/u01/app/oracle/oradata/mynewdb/temp01.dbf'

      SIZE 20M REUSE

   UNDO TABLESPACE undotbs

      DATAFILE '/u01/app/oracle/oradata/mynewdb/undotbs01.dbf'

      SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

--依据实际修改脚本,删除掉一些没必要的设置

--将日志组成员进行多元化

--修改路径信息

CREATE DATABASE HYL

   LOGFILE GROUP 1 ('/u01/app/oracle/oradata/HYL/disk1/redo01a.log',

'/u01/app/oracle/oradata/HYL/disk2/redo01b.log')

SIZE 100M BLOCKSIZE 512,          

GROUP 2 ('/u01/app/oracle/oradata/HYL/disk1/redo02a.log',

'/u01/app/oracle/oradata/HYL/disk2/redo02b.log')

SIZE 100M BLOCKSIZE 512,          

GROUP 3 ('/u01/app/oracle/oradata/HYL/disk1/redo03a.log',

'/u01/app/oracle/oradata/HYL/disk2/redo03b.log')

SIZE 100M BLOCKSIZE 512  

CHARACTER SET zhs16gbk

   NATIONAL CHARACTER SET AL16UTF16  

EXTENT MANAGEMENT LOCAL

   DATAFILE '/u01/app/oracle/oradata/HYL/disk3/system01.dbf' SIZE 325M REUSE

   SYSAUX DATAFILE '/u01/app/oracle/oradata/HYL/sysaux01.dbf' SIZE 325M REUSE  

DEFAULT TABLESPACE users

      DATAFILE '/u01/app/oracle/oradata/HYL/disk3/users01.dbf'

      SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED 

DEFAULT TEMPORARY TABLESPACE tempts1

      TEMPFILE '/u01/app/oracle/oradata/HYL/disk4/temp01.dbf'

      SIZE 20M REUSE  

UNDO TABLESPACE undotbs

      DATAFILE '/u01/app/oracle/oradata/HYL/disk5/undotbs01.dbf'

      SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

--将以上脚本放在oracle目录下,然后执行

$cd /u01/app/oracle/

$vi createDB.sql

SQL> @/u01/app/oracle/createDB.sql

7.2设置数据文件和临时文件为自动扩展

(1)获得所有数据文件和临时文件信息
SQL> col name for a60
SQL> select file#,name from v$datafile uNIOn select file#,name from v$tempfile;

     FILE# NAME
---------- ------------------------------------------------------------
         1 /u01/app/oracle/oradata/secooler/dfile/system01.dbf
         1 /u01/app/oracle/oradata/secooler/dfile/temp01.dbf
         2 /u01/app/oracle/oradata/secooler/dfile/undotbs01.dbf
         3 /u01/app/oracle/oradata/secooler/dfile/sysaux01.dbf
         4 /u01/app/oracle/oradata/secooler/dfile/tbs_1.dbf

(2)将其调整为自动扩展
SQL> alter database datafile 1 autoextend on;
SQL> alter database datafile 2 autoextend on;
SQL> alter database datafile 3 autoextend on;
SQL> alter database datafile 4 autoextend on;
SQL> alter database tempfile 1 autoextend on;

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

在CMD命令行下执行:

或SQL> @?/rdbms/admin/catalog.sql  

@E:\app\SANMSUNG\product\11.2.0\dbhome_1\RDBMS\ADMIN\catalog.sql

需约5分钟,作用:创建数据字典

9、执行catproc创建package包

在CMD命令行下执行:

或SQL> @?/rdbms/admin/catproc.sql  

@E:\app\SANMSUNG\product\11.2.0\dbhome_1\RDBMS\ADMIN\catproc.sql

需约10分钟,跑完这两个脚本后库已经建完了,作用:创建存储过程和包

10、执行pupbld

在执行pupbld前,先将用户切换为system。 

SQL> connect system/oracle

或SQL> @?/sqlplus/admin/pupbld.sql 

SQL> E:\app\SANMSUNG\product\11.2.0\dbhome_1\sqlplus\admin\pupbld.sql

1分钟,以system用户 运行此脚本, 作用:设置sqlplus的一些包,让其它用户可以登录sqlplus

11、由pfile创建spfile

spfile的创建需要dba权限。 

SQL> con sys as sysdba

create spfile from pfile;

SQL> connect system/oracle

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

这个环节可以省去,当然如果需要练习环境则这个环节最好不要省去。 
在CMD命令行中输入:@E:\app\SANMSUNG\product\11.2.0\dbhome_1\RDBMS\ADMIN\scott.sql

13、把数据库打开到正常状态

重启数据库并验证是否建库成功。 
shutdown immediate
startup
select instance_name,status from v$instance;

以上是“Oracle如何实现手工建库”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网数据库频道!

您可能感兴趣的文档:

--结束END--

本文标题: Oracle如何实现手工建库

本文链接: https://lsjlt.com/news/65067.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Oracle如何实现手工建库
    这篇文章主要为大家展示了“Oracle如何实现手工建库”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Oracle如何实现手工建库”这篇文章吧。 可参考官方文档...
    99+
    2024-04-02
  • Oracle 12c如何实现手工建库而非CDB及CDB创建
    这篇文章给大家分享的是有关Oracle 12c如何实现手工建库而非CDB及CDB创建的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。相信大家应该都知道,对于Oracle数据库的创建...
    99+
    2024-04-02
  • ORACLE手工建库
    手动建库:找到官方文档,打开主索引找到管理--create database停止现有的数据库,释放内存 1.设置环境变量--ORACLE_SID2.建立密码文件3.建立文本的参数文件4.建立二进制参数文件5...
    99+
    2024-04-02
  • Oracle如何手工创建数据库
    这篇文章给大家分享的是有关Oracle如何手工创建数据库的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。手工创建数据库步骤1. 创建instance步骤①准备参数文件pf...
    99+
    2024-04-02
  • oracle 11g如何进行手工建库
    这篇文章给大家介绍oracle 11g如何进行手工建库,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。工作环境: ORE 6.5手工建库是作为dba必须掌握的一个基本技能,它使清楚的认识oracle的目录结构、oracl...
    99+
    2023-06-06
  • oracle 11g 手工建库
    创建密码文件cd $ORACLE_HOME/dbsorapwd file=orapwogg02 password=oracle entries=5mkdir -p $ORACLE_BASE/flash_re...
    99+
    2024-04-02
  • Oracle手工建库教程
    系统环境:操作系统: RedHat EL6Oracle:  Oracle 10g and Oracle 11g   手工建库相对来说很容易实现,本案例是从10g和11g,通过手...
    99+
    2024-04-02
  • oracle如何手动建库
    这篇文章将为大家详细讲解有关oracle如何手动建库,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 1、-- 查看服务器 ORA 环境变量情况[oracle@orast...
    99+
    2024-04-02
  • 如何手工创建数据库
    这篇文章给大家分享的是有关如何手工创建数据库的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Refer Doc:Administrator’s Guide->2 Creati...
    99+
    2024-04-02
  • 手工创建Oracle 11g数据库
    配置Oracle环境变量 1、编辑.bash_profile [oracle@FDB ~]$ vi ~/.bash_profile 2、使配置文件生效 [oracle@FDB ~]$ . .bas...
    99+
    2024-04-02
  • oracle中如何实现静默安装和手动建库
    这篇文章主要介绍oracle中如何实现静默安装和手动建库,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1 之前都是复制粘贴参数! 这次了解了两个关于内存的参数介绍shmall 是全部...
    99+
    2024-04-02
  • Oracle 10g AND Oracle 11g手工建库案例--Oracle 11g
    Oracle 10g AND Oracle 11g手工建库案例--Oracle 11g系统环境:操作系统: RedHat EL6Oracle:  Oracle 10g and Oracle 11g...
    99+
    2024-04-02
  • Oracle 19c RAC 手工建库的搭建过程
    数据库环境: 数据库版本(RU):  19.10 GRID_HOME:       /u01/app/19.0.0/grid ORACLE_HOME:     /u01/a...
    99+
    2024-04-02
  • oracle 手工删库
    今天因为插入中文是乱码,发现字符集不是ZHS16GBK,所以准备删除了重新建SYS@icsdb >alter database close;alter database close*第 1 行出现错误...
    99+
    2024-04-02
  • 手工搭建Servlet实现
    目录前言手工搭建一个Servlet下载Tomcat编译程序启动Tomcat读取日志前言 在初学Java web的时候,就曾听到过这样一种说法: java Web的演变过程大概可以分...
    99+
    2024-04-02
  • oracle手工删除库
    无法使用图形界面时,我们需要手动删除数据库一、手动删除文件系统数据库   1.停止监听,防止有新的连接产生,同时,在数据库配置了em的,也需要停止     ...
    99+
    2024-04-02
  • oracle 11g中如何手工热备数据库
    这篇文章主要介绍了oracle 11g中如何手工热备数据库,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。查看数据库是否处于归档模式,开启数据...
    99+
    2024-04-02
  • 怎样手工方式建立 ORACLE数据库
    这篇文章将为大家详细讲解有关怎样手工方式建立 ORACLE数据库,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。通过dbca方式创建Oracle数据库是最常见的方法,除此之外如果对数据库的创建...
    99+
    2023-06-06
  • 如何手工创建SQL Profile
    本篇内容介绍了“如何手工创建SQL Profile”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!手工创建S...
    99+
    2024-04-02
  • oracle手工建库后rman无法启用该怎么办
    oracle手工建库后rman无法启用该怎么办,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。oracle手工建库后rman无法启用,报RMAN-04015错误解...
    99+
    2023-06-06
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作