【手工建库】(二)在原有数据库的基础上再建立一个数据库

在原有数据库的基础上再建立一个数据库

(先决条件:当当前虚拟内存不够用时,将现有数据库关闭;如果不关库,则需要增加虚拟内存)

建库开始:
1.生成
pfile文件:

[oracle@book oracle]$ cd $ORACLE_HOME

[oracle@book dbhome_1]$ cd dbs

oracle@book dbs]$ ls

hc_PROD.dat  init.ora  initPROD.ora  lkPROD  orapwPROD  spfilePROD.ora

[oracle@book dbs]$ cat init.ora |grep -v ^#|grep -v ^$ > initEN.ora

[oracle@book dbs]$

[oracle@book dbs]$ ls

hc_PROD.dat  initEN.ora  init.ora  initPROD.ora  lkPROD  orapwPROD  spfilePROD.ora


2.编辑pfile文件:
[oracle@book dbs]$ vi initEN.ora

db_name='EN'

memory_target=900M

processes = 150

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

#audit_trail ='db'

db_block_size=8192

db_domain=''

#db_recovery_file_dest='/flash_recovery_area'

#db_recovery_file_dest_size=2G

#diagnostic_dest=''

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

open_cursors=300

remote_login_passwordfile='EXCLUSIVE'

undo_tablespace='UNDOTBS1'

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

compatible ='11.2.0'

 

3.根据pfile创建目录adump目录和控制文件目录:

[oracle@book oracle]$ mkdir -p /u01/app/oracle/admin/EN/adump

[oracle@book oradata]$ cd /u01/app/oracle/admin

[oracle@book admin]$ ls

EN  PROD

[oracle@book dbs]$ mkdir -p /u01/app/oracle/oradata/EN/

[oracle@book oradata]$ ls

EN  PROD

 

4.通过pfile创建spfile

--查看已存在的pfile文件iniEN.ora

[oracle@book dbs]$ ls

hc_PROD.dat  initEN.ora  init.ora  initPROD.ora  lkPROD  orapwPROD  spfilePROD.ora

--验证当前环境变量

[oracle@prod dbs]$ echo $ORACLE_SID

PROD

[oracle@book dbs]$ export ORACLE_SID=EN

[oracle@book dbs]$ echo $ORACLE_SID

EN

--通过pfile创建spfile

[oracle@book dbs]$ sqlplus / as sysdba

 

SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 14 17:59:42 2016

 

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

 

Connected to an idle instance.

 

SQL> create spfile from pfile;

 

File created.

 

SQL> !ls

hc_PROD.dat  initEN.ora  init.ora  initPROD.ora  lkPROD  orapwPROD  spfileEN.ora  spfilePROD.ora


——验证,数据库启动到
nomount(默认情况下,oracle会使用spfile启动数据库):

[oracle@book dbs]$ sqlplus / as sysdba

 

SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 14 18:01:50 2016

 

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

 

Connected to an idle instance.

 

SQL> startup nomount;

ORACLE instance started.

 

Total System Global Area  939495424 bytes

Fixed Size                  2258840 bytes

Variable Size             595593320 bytes

Database Buffers          335544320 bytes

Redo Buffers                6098944 bytes

SQL>

SQL> show parameter spfile

 

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

spfile                               string      /u01/app/oracle/product/11.2.0

                                                 /dbhome_1/dbs/spfileEN.ora

SQL> select status from v$instance ;

 

STATUS

------------

STARTED

 

5.编写创建数据库脚本:

Oracle11g官方文档:

Administrators Guide->2 Creating and Configuring an Oracle Database->Step 9: Issue the CREATE DATABASE Statement

1)修改数据库名称及相关口令

2)由于是测试环境,所以,可以将日志文件改为1个成员,把成员大小改为10M

3)修改users表空间大小及undo表空间大小

4)修改undo表空间的名称,要与pfile文件中的名称相同

[oracle@book admin]$ cd $ORACLE_HOME

[oracle@book dbhome_1]$ vi create.sql

create database EN  

   user sys identified by oracle

   user system identified by oracle

   logfile group 1 ('/u01/app/oracle/oradata/EN/redo01.log') size 10m blocksize 512,  

           group 2 ('/u01/app/oracle/oradata/EN/redo02.log') size 10m blocksize 512,  

           group 3 ('/u01/app/oracle/oradata/EN/redo03.log') size 10m 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/EN/system01.dbf' size 325m reuse 

   sysaux datafile '/u01/app/oracle/oradata/EN/sysaux01.dbf' size 325m reuse 

   default tablespace users

      datafile '/u01/app/oracle/oradata/EN/users01.dbf' 

      size 50m reuse autoextend on maxsize unlimited

   default temporary tablespace tempts1

      tempfile '/u01/app/oracle/oradata/EN/temp01.dbf' 

      size 20m reuse

   undo tablespace undotbs1

      datafile '/u01/app/oracle/oradata/EN/undotbs01.dbf' 

      size 50m reuse autoextend on maxsize unlimited;

~

"create.sql" [New] 25L, 2140C written                                                                              

[oracle@book dbhome_1]$

6.创建数据库(数据库此时的状态应该是nomount,直接在sqlplus下执行创建数据库脚本即可):

SQL> @?/create.sql或者@?/create(默认找 .sql,@执行脚本,?指$ORACLE_HOME.

或者直接在sql下执行如下:

SQL>create database EN                                                                    

   user sys identified by oracle                                                        

   user system identified by oracle                                                      

   logfile group 1 ('/u01/app/oracle/oradata/EN/redo01.log') size 10m blocksize 512, 

           group 2 ('/u01/app/oracle/oradata/EN/redo02.log') size 10m blocksize 512, 

           group 3 ('/u01/app/oracle/oradata/EN/redo03.log') size 10m 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/EN/system01.dbf' size 325m reuse                 

   sysaux datafile '/u01/app/oracle/oradata/EN/sysaux01.dbf' size 325m reuse          

   default tablespace users                                                             

      datafile '/u01/app/oracle/oradata/EN/users01.dbf'                               

      size 50m reuse autoextend on maxsize unlimited                                    

   default temporary tablespace tempts1                                                 

      tempfile '/u01/app/oracle/oradata/EN/temp01.dbf'                                

      size 20m reuse                                                                    

   undo tablespace undotbs1                                                             

      datafile '/u01/app/oracle/oradata/EN/undotbs01.dbf'                             

      size 50m reuse autoextend on maxsize unlimited;  

 

Database created.

 

--验证查看相关参数

SQL> select status from v$instance;

 

STATUS

------------

OPEN

SQL> show parameter control_files

 

NAME                                 TYPE        VALUE

------------------------------------ -----------

control_files                        string      /u01/app/oracle/oradata/EN/con

                                                 trol01.ctl, /u01/app/oracle/or

                                                 adata/EN/control02.ctl

SQL> show parameter undo  

 

NAME                                 TYPE        VALUE

------------------------------------ -----------

undo_management                      string      AUTO

undo_retention                       integer     900

undo_tablespace                      string      UNDOTBS1

SQL>

SQL> show parameter spfile

 

NAME      TYPE        VALUE

------------------------------------ -----------

spfile    string   /u01/app/oracle/product/11.2.0/dbhome_1/dbs/spfileEN.ora

                                              

7.创建字典表及工具包:

--必执行脚本

SQL> conn / as sysdba

SQL> @?/rdbms/admin/catalog.sql

SQL> @?/rdbms/admin/catproc.sql

SQL> conn system/oracle

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

--可选脚本

SQL> conn / as sysdba

SQL> @?/rdbms/admin/catblock.sql

SQL> @?/rdbms/admin/catoctk.sql

SQL> @?/rdbms/admin/owminst.plb

 

8.验证数据库可用性:

SQL> select * from v$version;

 

BANNER

---------------------------------------------------------------------

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

PL/SQL Release 11.2.0.4.0 - Production

CORE    11.2.0.4.0      Production

TNS for Linux: Version 11.2.0.4.0 - Production

NLSRTL Version 11.2.0.4.0 - Production

 

5 rows selected.

 

9.创建密码文件: 

[oracle@book dbs]$ ls

hc_EN.dat  hc_PROD.dat  initEN.ora  init.ora  initPROD.ora  lkEN  lkPROD  orapwPROD  spfileEN.ora spfilePROD.ora

——查看显示没有建密码文件,创建密码文件(作用:允许远程用密码方式以sysdba身份登陆数据库,密码文件可有可无

[oracle@book dbs]$ orapwd file=orapwEN password=oracle

[oracle@book dbs]$ ls

hc_EN.dat  hc_PROD.dat  initEN.ora  init.ora  initPROD.ora  lkEN  lkPROD  orapwEN  orapwPROD  spfileEN.ora  spfilePROD.ora

数据库手工建库完成!!!!!!!!!!

 

——验证查看

[oracle@book dbs]$ cd /u01/app/oracle/oradata/EN/

[oracle@book EN]$ ls

control01.ctl  control02.ctl  redo01.log  redo02.log  redo03.log  sysaux01.dbf  system01.dbf  temp01.dbf  undotbs01.dbf  users01.dbf

[oracle@book EN]$

[oracle@book ~]$ echo $ORACLE_SID

EN

[oracle@book ~]$ sqlplus / as sysdba

 

SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 14 18:56:45 2016

 

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

 

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

 

SQL> select status from v$instance;

 

STATUS

------------

OPEN

 

SQL> show parameter name

 

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

cell_offloadgroup_name               string

db_file_name_convert                 string

db_name                              string      EN

db_unique_name                       string      EN

global_names                         boolean     FALSE

instance_name                        string      EN

lock_name_space                      string

log_file_name_convert                string

processor_group_name                 string

service_names                        string      EN

结束!!!!!!!!!

请使用浏览器的分享功能分享到微信等