温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Oracle如何手工创建数据库

发布时间:2021-11-09 13:58:09 来源:亿速云 阅读:197 作者:小新 栏目:关系型数据库

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

手工创建数据库步骤

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如何手工创建数据库”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI