Oracle如何手工创建数据库

45次阅读
没有评论

共计 3247 个字符,预计需要花费 9 分钟才能阅读完成。

这篇文章给大家分享的是有关 Oracle 如何手工创建数据库的内容。丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,一起跟随丸趣 TV 小编过来看看吧。

手工创建数据库步骤

1.  创建 instance 步骤

①准备参数文件 pfile/spfile(参考数据库软件安装 init 文件)

②启动 instance 实例

2.  创建 database 数据库

①准备 create database
语句

②执行 create database
语句

③执行后置脚本

④验证数据库创建结果

步骤开始:一、创建 instance 实例

– 根据 $ORACLE_HOME/dbs 目录下 init.ora 文件调整为 pfile 参数文件

$ cd $ORACLE_HOME/dbs

$ cat init.ora |grep -v ^# | grep -v ^$ initORCL.ora

其中,-v ^# 是去掉所有的注释

 -v ^$ 是去掉所有的空行

– 调整 pfile 参数文件的内容

$ vi initORCL.ora

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

control_files = (ora_control1, ora_control2)

compatible = 11.2.0


最后的结果如下:

db_name= ORCL

memory_target=1G

processes = 150

audit_file_dest= /u01/app/oracle/admin/ORCL/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

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

open_cursors=300

remote_login_passwordfile= EXCLUSIVE

undo_tablespace= UNDOTBS1

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

compatible = 11.2.0

— .bash_profile 文件添加以下内容

$ vi .bash_profile

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export ORACLE_SID=ORCL

export PATH=$ORACLE_HOME/bin:$PATH


使换将变量生效

$ . ./.bash_profile

或者

$ source .bash_profile


验证环境变量

$ echo $ORACLE_HOME

$ echo $ORACLE_SID

- 进入 ORACLE_BASE 目录

$ cd $ORACLE_BASE

- 创建目录(创建 pfile 中所有的目录)

$ mkdir -p admin/ORCL/adump

$ mkdir -p flash_recovery_area

$ mkdir -p oradata/ORCL


根据 pfile 参数文件生成 spfile

$ sqlplus / as sysdba

SQL create spfile from pfile;


启动到 nomount 状态

SQL startup nomount

二、准备 database 数据库

— 编写以下内容

$ vi create_db.sql

CREATE DATABASE ORCL

USER SYS IDENTIFIED BY oracle

USER SYSTEM IDENTIFIED BY oracle

LOGFILE GROUP 1 (/u01/app/oracle/oradata/ORCL/redo01.log) SIZE 100M BLOCKSIZE 512,

GROUP 2 (/u01/app/oracle/oradata/ORCL/redo02.log) SIZE 100M BLOCKSIZE 512,

GROUP 3 (/u01/app/oracle/oradata/ORCL/redo03.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/ORCL/system01.dbf  SIZE 325M REUSE

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

DEFAULT TABLESPACE users

DATAFILE  /u01/app/oracle/oradata/ORCL/users01.dbf

SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED

DEFAULT TEMPORARY TABLESPACE tempts1

TEMPFILE  /u01/app/oracle/oradata/ORCL/temp01.dbf

SIZE 20M REUSE

UNDO TABLESPACE undotbs1

DATAFILE  /u01/app/oracle/oradata/ORCL/undotbs01.dbf

SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

这里需要注意 undo 表空间的名字要和 spfile 中文件名字一样


需要调整的内容列表

1)修改数据库名字为 ORCL

2)修改 SYS 和 SYSTEM 用户的密码为 oracle

3)修改数据文件和日志文件的路径


执行上述脚本

SQL @/home/oracle/create_db.sql

– 执行后置脚本文件(SYS 用户)

SQL @?/rdbms/admin/catalog.sql
 – 数据字典,动态视图

SQL @?/rdbms/admin/catproc.sql
 –PL/SQL 存储过程相关代码

SQL @?/rdbms/admin/utlrp.sql
 – 编译对象

– 执行以下脚本(system 用户)

SQL @?/sqlplus/admin/pupbld.sql
 –SQL*Plus 相关脚本

验证数据库可用性

SQL select status from v$instance;

SQL select * from v$version;

感谢各位的阅读!关于“Oracle 如何手工创建数据库”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-24发表,共计3247字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)