Oracle手动建库安装部署超详细教程

时间:2021-05-02

目录

  • 步骤1 指定SID
  • 步骤2 确定Oracle环境的环境变量
  • 步骤3 设置Oracle的口令认证方式
  • 步骤4 创建初始化参数文件
  • 步骤5 连接数据库实例
  • 步骤6 创建spfile文件
  • 步骤7 启动实例
  • 步骤8 使用CREATE DATABASE语句建库
  • 步骤9 创建额外的空间
  • 步骤10 执行脚本构建数据字典视图
  • 参考文献

手动创建PROD数据库

步骤1 指定SID

Oracle_SID是用于区别数据库实例的环境变量。

? 1 2 ORACLE_SID=prod export ORACLE_SID

步骤2 确定Oracle环境的环境变量

在操作系统平台下,Oracle_SID和ORACLE_HOME必须指定,建议指定PATH包含ORACLE_HOME/bin目录。环境变量的实际操作如下:

创建数据目录和审计目录:

? 1 2 3 [oracle@db1 oradata]$ mkdir -p /u01/app/oradata/prod [oracle@db1 oradata]$ mkdir -p $ORACLE_BASE/admin/prod/adump [oracle@db1 dbs]$ mkdir -p /u01/app/flash_recovery_area

环境变量配置:

? 1 2 3 4 5 6 7 8 9 ORACLE_BASE=/u01/app ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 #ORACLE_SID=oradb ORACLE_SID=prod export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH=$ORACLE_HOME/bin:$PATH export PATH alias sqlplus='rlwrap sqlplus' alias rman='rlwrap rman'

即时生效,验证ORACLE_SID是否是prod

? 1 2 3 [oracle@db1 ~]$ source .bash_profile [oracle@db1 ~]$ echo $ORACLE_SID prod

可选操作,部署glogin.sql和rlwrap

? 1 2 $ORACLE_HOME/sqlplus/admin/glogin.sql set sqlprompt <a rel="external nofollow" href="mailto:_user'@'_connect_identifier%3E">_user'@'_connect_identifier> </a>

rlwarp的配置,参考:rlwarp的使用

步骤3 设置Oracle的口令认证方式

创建Oracle的口令文件

? 1 2 [oracle@db1 ~]$ cd $ORACLE_HOME/dbs [oracle@db1 dbs]$ orapwd file=orapwPROD password=oracle entries=30

步骤4 创建初始化参数文件

官方文档的参考文件链接为:Oracle参数文件的例子

? 1 cd $ORACLE_HOME/dbs

官方的参数文件init.ora例子的具体内容如下:

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 db_name='ORCL' memory_target=1G processes = 150 audit_file_dest='<ORACLE_BASE>/admin/orcl/adump' audit_trail ='db' db_block_size=8192 db_domain='' db_recovery_file_dest='<ORACLE_BASE>/flash_recovery_area' db_recovery_file_dest_size=2G diagnostic_dest='<ORACLE_BASE>' dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)' open_cursors=300 remote_login_passwordfile='EXCLUSIVE' undo_tablespace='UNDOTBS1' # You may want to ensure that control files are created on separate physical # devices control_files = (ora_control1, ora_control2) compatible ='11.2.0'

通过vi命令中的

  • :%s#orcl#prod#gi替换里面的orcl的字符串。其中i命令不区分大小写。
  • :%s#ora_control1#/u01/app/oradata/prod/control01.ctl#g替换ora_control1的字符串。
  • :%s#ora_control2#/u01/app/oradata/prod/control02.ctl#g替换ora_control2的字符串。
  • :%s#<ORACLE_BASE>#/u01/app#g替换<ORACLE_BASE>的字符串。
  • :wq命令保存配置。

修改后,我个人的参数文件initprod.ora 如下:

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 db_name='prod' memory_target=1G processes = 150 audit_file_dest='/u01/app/admin/prod/adump' audit_trail ='db' db_block_size=8192 db_domain='' db_recovery_file_dest='/u01/app/flash_recovery_area' db_recovery_file_dest_size=2G diagnostic_dest='/u01/app' dispatchers='(PROTOCOL=TCP) (SERVICE=prodXDB)' open_cursors=300 remote_login_passwordfile='EXCLUSIVE' undo_tablespace='UNDOTBS1' # You may want to ensure that control files are created on separate physical # devices control_files = (/u01/app/oradata/prod/control01.ctl, /u01/app/oradata/prod/control02.ctl) compatible ='11.2.0'

步骤5 连接数据库实例

有命令文件,可以通过如下命令连接:

? 1 2 3 4 5 [oracle@db1 dbs]$ sqlplus /nolog @> connect sys as sysdba Enter password: Connected to an idle instance. SYS@prod>

OS认证登录方式,命令如下:

? 1 2 3 4 [oracle@db1 dbs]$ sqlplus /nolog @> conn /as sysdba Connected to an idle instance. SYS@prod>

步骤6 创建spfile文件

? 1 SYS@prod> CREATE SPFILE FROM PFILE;

步骤7 启动实例

? 1 STARTUP NOMOUNT

步骤8 使用CREATE DATABASE语句建库

官方给与建库的例句,你可以修改你自己所需的数据库的样子,如下:
前提:有数据库目录:/u01/app/oradata/prod

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 CREATE DATABASE prod USER SYS IDENTIFIED BY oracle USER SYSTEM IDENTIFIED BY oracle LOGFILE GROUP 1 ('/u01/app/oradata/prod/redo01a.log','/u01/app/oradata/prod/redo01b.log') SIZE 100M BLOCKSIZE 512, GROUP 2 ('/u01/app/oradata/prod/redo02a.log','/u01/app/oradata/prod/redo02b.log') SIZE 100M BLOCKSIZE 512, GROUP 3 ('/u01/app/oradata/prod/redo03a.log','/u01/app/oradata/prod/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/oradata/prod/system01.dbf' SIZE 325M REUSE SYSAUX DATAFILE '/u01/app/oradata/prod/sysaux01.dbf' SIZE 325M REUSE DEFAULT TABLESPACE users DATAFILE '/u01/app/oradata/prod/users01.dbf' SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED DEFAULT TEMPORARY TABLESPACE tempts1 TEMPFILE '/u01/app/oradata/prod/temp01.dbf' SIZE 20M REUSE UNDO TABLESPACE undotbs1 DATAFILE '/u01/app/oradata/prod/undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

执行语句如下:

? 1 2 3 4 [oracle@db1 ~]$ chmod 755 create_database.sql [oracle@db1 ~]$ sqlplus "/as sysdba" SYS@prod> @create_database.sql Database created.

步骤9 创建额外的空间

对于应用程序来说,应该有属于自己的表空间,对于我们这边的都是以ARP命名,如下:

? 1 2 3 4 5 6 7 8 9 CREATE TABLESPACE apps_arp LOGGING DATAFILE '/u01/app/oradata/prod/apps_arp01.dbf' SIZE 500M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL; -- create a tablespace for indexes, separate from user tablespace (optional) CREATE TABLESPACE indx_arp LOGGING DATAFILE '/u01/app/oradata/prod/indx_arp01.dbf' SIZE 100M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL;

步骤10 执行脚本构建数据字典视图

使用SYSDBA权限的用户,连接数据库如下:

? 1 2 3 4 [oracle@db1 ~]$ sqlplus /nolog @> conn /as sysdba Connected. SYS@prod>

执行如下语句:

? 1 2 3 @?/rdbms/admin/catalog.sql @?/rdbms/admin/catproc.sql @?/rdbms/admin/utlrp.sql

使用SYSTEM用户,执行如下语句:

? 1 2 3 4 [oracle@db1 ~]$ sqlplus /nolog @> conn system/oracle Connected. SYSTEM@prod> @?/sqlplus/admin/pupbld.sql

【可选操作】,如果需要scott用户用于数据库的实验,可以做如下操作:

? 1 2 3 4 [oracle@db1 ~]$ sqlplus /nolog @> conn / as sysdba Connected. SYS@prod> @?/rdbms/admin/utlsampl.sql

验证数据库,是否正常,如下:

? 1 2 3 4 5 6 [oracle@db1 ~]$ sqlplus "/as sysdba" SYS@prod> select INSTANCE_NAME,STATUS from v$instance; INSTANCE_NAME STATUS ---------------- ------------ prod OPEN

参考文献

官方文档:

位置为:【Oracle Database Administrator's Guide】

​ -->【Creating a Database with the CREATE DATABASE Statement】

到此这篇关于Oracle手动建库安装部署超详细教程的文章就介绍到这了,更多相关Oracle手动建库内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/zhangshengdong/p/14548140.html

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章