首页
学习
活动
专区
工具
TVP
发布

手工创建数据库

注:学习oracle的初期强烈手动创建数据库。这样会加深对数据库各个组件的理解以及数据库实例启动过程中所需要的各个组件。

实例启动三阶段:

1.nomount--->此阶段会读取参数文件即spfile或者pfile文件,分配内存启动后台进程。

2.mount--->此阶段会加载控制文件

3.startup--->此阶段会打开数据文件、日志文件

手工建库:

配置环境变量---谁都不愿意住毛坯房,起码的装修要弄好,不要到以后觉得这地方要加一个水龙头,那地方要加一个插座这时候再想着去加,那样的话会让自己很难受。

2.创建参数文件以便将数据库启动到nomount状态

Linux系统下:路径为--$ORACLE_HOME/dbs

vi initPROD1.ora---

db_name='PROD1'

memory_target=800M

processes = 150

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

audit_trail ='db'

db_block_size=8192

db_domain='us.oracle.com'

db_recovery_file_dest='/u01/app/oracle/fast_recovery_area'

db_recovery_file_dest_size=2G

diagnostic_dest='/u01/app/oracle'

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

open_cursors=300

remote_login_passwordfile='EXCLUSIVE'

undo_tablespace='UNDOTBS'

control_files=(/u01/app/oracle/oradata/PROD3/control1.ctl,/u01/app/oracle/oradata/PROD1/control2.ctl)

compatible ='11.2.0'

注:文件内容的路径要创建好

mkdir -p /u01/app/oracle/oradata/PROD1

mkdir -p /u01/app/oracle/admin/PROD1/adump

mkdir -p/u01/app/oracle/fast_recovery_area

orapwd file=orapwPROD1 password=oracle entries=30->创建密码文件

[oracle@edbjr2p2 dbs]$ sqlplus / as sysdba

Connected to an idle instance.

SYS@PROD1> create spfile from pfile;

File created.

SYS@PROD1> startup nomount;

ORACLE instance started.

Total System Global Area 836976640 bytes

Fixed Size 1348160 bytes

Variable Size 490737088 bytes

Database Buffers 339738624 bytes

Redo Buffers 5152768 bytes

数据库nomount状态,第一阶段结束。恭喜你已经迈出数据库启动的第一步了。

3. 创建数据库--->可以参考官方文档。

创建数据库实例语句:

Linux环境中执行:

[oracle@edbjr2p2 dbs]$ vi createdb.sql

CREATE DATABASEPROD1

USER SYS IDENTIFIED BYoracle

USER SYSTEM IDENTIFIED BYoracle

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

'/u01/app/oracle/oradata/PROD1/redo01b.log') SIZE 100M BLOCKSIZE 512,

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

'/u01/app/oracle/oradata/PROD1/redo02b.log') SIZE 100M BLOCKSIZE 512,

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

'/u01/app/oracle/oradata/PROD1/redo03b.log') SIZE 100M BLOCKSIZE 512

MAXLOGFILES 5

MAXLOGMEMBERS 5

MAXLOGHISTORY 1

MAXDATAFILES 100

CHARACTER SET US7ASCII

NATIONAL CHARACTER SET AL16UTF16

EXTENT MANAGEMENT LOCAL

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

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

DEFAULT TABLESPACE users

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

SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED

DEFAULT TEMPORARY TABLESPACEtemp

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

SIZE 20M REUSE

UNDO TABLESPACEundotbs

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

SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

执行语句之前确认一下路径是否存在。如不存在同上创建路径。

SYS@PROD1> @createdb.sql

Database created.

数据库实例执行完毕之后数据库会自动启动到open状态。恭喜你已经将数据库启动起来了。

4.装修数据库。

[oracle@edbjr2p2 dbs]$ vi 1.sql

@?/rdbms/admin/catalog.sql

@?/rdbms/admin/catproc.sql

conn system/oracle

@?/sqlplus/admin/pupbld.sql

SYS@PROD1> @1.sql

漫长的等待

恭喜你,数据库实例已创建完毕。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180605G1R6PP00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券