oracle体系-13-手动创建数据库

手动创建一个名为emrep的数据库

第一步,编辑.bash_profile环境变量

[root@cuug ~]# su - oracle

[oracle@cuug ~]$ pwd
/home/oracle

[oracle@cuug ~]$cp .bash_profile .bash_profile.prod   ##备份

[oracle@cuug ~]$vi .bash_profile

ORACLE_BASE=/u01

ORACLE_HOME=$ORACLE_BASE/oracle

ORACLE_SID=emrep    ##修改数据库名称

PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH

第二步,建立必要的目录

[oracle@cuug ~]$mkdir -p /u01/admin/emrep/adump   ##创建admp审计文件夹

[oracle@cuug ~]$mkdir -p /u01/oradata/emrep   ##创建emrep数据库存放文件夹

第三步,编辑pfile, 指定基本参数

[oracle@cuug ~]$vi $ORACLE_HOME/dbs/initemrep.ora

db_name='EMREP'

memory_target=500m

control_files = ('/u01/oradata/emrep/control01.ctl','/u01/oradata/emrep/control02.ctl')

audit_file_dest='/u01/admin/emrep/adump'

db_block_size=8192

diagnostic_dest='/u01'

undo_tablespace='UNDOTBS1'

第四步, 建立口令文件、spfile

[oracle@cuug ~]$orapwd file=$ORACLE_HOME/dbs/orapwemrep password=oracle entries=5  

[oracle@cuug ~]$sqlplus / as sysdba

SYS@ emrep> startup nomount pfile=/u01/oracle/dbs/initemrep.ora   ##这里,我们可以看到登录进来的数据库名称变为了emrep

SYS@ emrep>create spfile from pfile;

SYS@ emrep> startup force nomount;

第五步, 建立数据库

SQL> CREATE DATABASE emrep

   USER SYS IDENTIFIED BY oracle   ##根据实际做出修改

   USER SYSTEM IDENTIFIED BY oracle  ##根据实际做出修改

   LOGFILE GROUP 1 '/u01/oradata/emrep/redo01.log' SIZE 30M,   ##根据实际做出修改

           GROUP 2  '/u01/oradata/emrep/redo02.log' SIZE 30M,  ##根据实际做出修改

           GROUP 3  '/u01/oradata/emrep/redo03.log' SIZE 30M  ##根据实际做出修改

   MAXLOGFILES 5

   MAXLOGMEMBERS 5

   MAXLOGHISTORY 1

   MAXDATAFILES 100

   CHARACTER SET AL32UTF8

   NATIONAL CHARACTER SET AL16UTF16

   EXTENT MANAGEMENT LOCAL

   DATAFILE '/u01/oradata/emrep/system01.dbf' SIZE 325M REUSE  ##根据实际做出修改

   SYSAUX DATAFILE '/u01/oradata/emrep/sysaux01.dbf' SIZE 325M REUSE  ##根据实际做出修改

   DEFAULT TABLESPACE users

      DATAFILE '/u01/oradata/emrep/users01.dbf'  ##根据实际做出修改

      SIZE 100M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED  ##根据实际做出修改

   DEFAULT TEMPORARY TABLESPACE temp1

      TEMPFILE '/u01/oradata/emrep/temp01.dbf'  ##根据实际做出修改

      SIZE 20M REUSE    ##根据实际做出修改

   UNDO TABLESPACE undotbs1

      DATAFILE '/u01/oradata/emrep/undotbs01.dbf'  ##根据实际做出修改

      SIZE 100M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;  ##根据实际做出修改

第六步,运行脚本,生成必要的数据字典和PLSQL包

[oracle@cuug emrep]$ sqlplus / as sysdba

SQL>startup

生成必要的数据字典

SQL> @?/rdbms/admin/catalog.sql    ##生成必要的数据字典

SQL> @?/rdbms/admin/catproc.sql  ##生成必要PLSQL包

SQL>conn system/oracle  ##必要的授权

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

至此,手工创建一个基本的数据库完毕

第七步,设定归档模式(可选)

SQL> archive log list;  ##此时,数据库的归档模式为No Archive Mode

[oracle@cuug ~]$mkdir -p /u01/arch2  ##此处指定了归档的目录为arch2,如不设置,默认/u01/arch

SQL> create pfile from spfile;  ##修改为启动数据库的参数为spfile

SQL> alter system set log_archive_dest_1='location=/u01/arch2';  ##归档操作

SQL> alter system set log_archive_format='arch_%t_%r_%s.log' scope=spfile;  ##归档操作

SQL> shutdown immedaite;

SQL> startup mount

SQL> alter database archivelog;  ##修改为自动归档

SQL> alter database open;

SQL> select * from dual;##检查emrep数据库工作正常

SQL>alter system switch logfile;  ##切换日志,目的是为了把归档日志刷出来

SQL>select name from v$archived_log;   ##查看归档日志

第八步,巡检数据库文件和当时创建是否一致(可选)

SQL> select current_scn from v$database;  ##查看scn

SQL> select name from v$controlfile;  ##查看控制文件

SQL> select name from v$datafile;   ##查看数据文件

SQL> select group#,member from v$logfile;  ##查看日志文件

第九步,删除emrep数据库

/u01/oradata/emprep/*  

/u01/oracle/dbs/rmrep的参数文件

/u01/admin/emrep/adump

猜你喜欢

转载自www.cnblogs.com/yqp-1/p/12301415.html