【手工建库】(一)手工建库

手工创建数据库概要步骤如下:
1.环境变量设置
2.创建所需目录
3.生成密码文件
4.创建pfile参数文件
5.生成spfile参数文件
6.执行创建数据库语句
7.执行catalog.sqlcatproc.sql脚本
8.最后的检查


一:手动建库前期准备:

1.1. 安装 linux 操作系统
安装过程,略
本测试环境采用的是 OEL 5.6
1.2. 安装 VMware Tools

安装过程,略

1.3. YUM 安装软件包

或者rpm –ivh方式分别安装包,参照:






安装完毕,请再root用户下创建oracle用户及设置密码,及创建用户组oinstallgroupadd

  Oinstall)。

 

 

[root@hong ~]# mount /dev/cdrom /mnt

mount: you must specify the filesystem type

挂载光盘

[root@hong ~]# mount /dev/cdrom /mnt

mount: block device /dev/cdrom is write-protected, mounting read-only

[root@hong ~]# vi /etc/yum.repos.d/public-yum-el5.repo

[oel5]

name = Enterprise Linux 5.6 DVD

baseurl=file:///mnt/Server/

gpgcheck=0

enabled=1

~

~

"/etc/yum.repos.d/public-yum-el5.repo" [New] 5L, 88C written

[root@hong ~]#

[root@hong ~]# yum install oracle-validated

Loaded plugins: rhnplugin, security

This system is not registered with ULN.

ULN support will be disabled.

oel5                                                                                                          | 1.1 kB     00:00    

oel5/primary                                                                                                  | 1.4 MB     00:00    

oel5                                                                                                                       3247/3247

Setting up Install Process

Resolving Dependencies

--> Running transaction check

---> Package oracle-validated.x86_64 0:1.1.0-7.el5 set to be updated

oel5/filelists                                                                                                | 3.1 MB     00:00    

--> Processing Dependency: gdb for package: oracle-validated

--> Processing Dependency: kernel-uek-headers for package: oracle-validated

--> Processing Dependency: /usr/lib/libaio.so for package: oracle-validated

--> Processing Dependency: glibc-headers for package: oracle-validated

--> Processing Dependency: unixODBC-devel for package: oracle-validated

--> Processing Dependency: sysstat for package: oracle-validated

--> Processing Dependency: /usr/lib64/libodbccr.so for package: oracle-validated

--> Processing Dependency: gcc-c++ for package: oracle-validated

--> Processing Dependency: libaio-devel for package: oracle-validated

--> Processing Dependency: gcc for package: oracle-validated

--> Processing Dependency: elfutils-libelf-devel for package: oracle-validated

--> Processing Dependency: compat-gcc-34-c++ for package: oracle-validated

--> Processing Dependency: /usr/lib/gcc/x86_64-redhat-linux/4.1.1/libstdc++.a for package: oracle-validated

--> Processing Dependency: /usr/lib/libodbc.so.1 for package: oracle-validated

--> Processing Dependency: compat-gcc-34 for package: oracle-validated

--> Processing Dependency: /usr/lib/libc.so for package: oracle-validated

--> Processing Dependency: /usr/lib64/libaio.so for package: oracle-validated

--> Processing Dependency: /usr/lib64/libc.so for package: oracle-validated

--> Processing Dependency: /usr/lib/libodbccr.so for package: oracle-validated

--> Processing Dependency: libXp.so.6 for package: oracle-validated

--> Processing Dependency: libdb-4.2.so()(64bit) for package: oracle-validated

--> Processing Dependency: libodbc.so.1()(64bit) for package: oracle-validated

--> Running transaction check

---> Package compat-db.x86_64 0:4.2.52-5.1 set to be updated

---> Package compat-gcc-34.x86_64 0:3.4.6-4.1 set to be updated

---> Package compat-gcc-34-c++.x86_64 0:3.4.6-4.1 set to be updated

---> Package elfutils-libelf-devel.x86_64 0:0.137-3.el5 set to be updated

--> Processing Dependency: elfutils-libelf-devel-static-x86_64 = 0.137-3.el5 for package: elfutils-libelf-devel

---> Package gcc.x86_64 0:4.1.2-50.el5 set to be updated

---> Package gcc-c++.x86_64 0:4.1.2-50.el5 set to be updated

---> Package gdb.x86_64 0:7.0.1-32.el5 set to be updated

---> Package glibc-devel.i386 0:2.5-58 set to be updated

---> Package glibc-devel.x86_64 0:2.5-58 set to be updated

---> Package glibc-headers.x86_64 0:2.5-58 set to be updated

---> Package kernel-uek-headers.x86_64 0:2.6.32-100.26.2.el5 set to be updated

---> Package libXp.i386 0:1.0.0-8.1.el5 set to be updated

---> Package libaio-devel.i386 0:0.3.106-5 set to be updated

---> Package libaio-devel.x86_64 0:0.3.106-5 set to be updated

---> Package libstdc++-devel.x86_64 0:4.1.2-50.el5 set to be updated

---> Package sysstat.x86_64 0:7.0.2-3.el5_5.1 set to be updated

---> Package unixODBC.i386 0:2.2.11-7.1 set to be updated

---> Package unixODBC.x86_64 0:2.2.11-7.1 set to be updated

---> Package unixODBC-devel.i386 0:2.2.11-7.1 set to be updated

---> Package unixODBC-devel.x86_64 0:2.2.11-7.1 set to be updated

--> Running transaction check

---> Package elfutils-libelf-devel-static.x86_64 0:0.137-3.el5 set to be updated

--> Finished Dependency Resolution

 

Dependencies Resolved

 

=====================================================================================================================================

 Package                                      Arch                   Version                              Repository            Size

=====================================================================================================================================

Installing:

 oracle-validated                             x86_64                 1.1.0-7.el5                          oel5                  23 k

Installing for dependencies:

 compat-db                                    x86_64                 4.2.52-5.1                           oel5                 1.6 M

 compat-gcc-34                                x86_64                 3.4.6-4.1                            oel5                 4.3 M

 compat-gcc-34-c++                            x86_64                 3.4.6-4.1                            oel5                  13 M

 elfutils-libelf-devel                        x86_64                 0.137-3.el5                          oel5                  24 k

 elfutils-libelf-devel-static                 x86_64                 0.137-3.el5                          oel5                  64 k

 gcc                                          x86_64                 4.1.2-50.el5                         oel5                 5.3 M

 gcc-c++                                      x86_64                 4.1.2-50.el5                         oel5                 3.8 M

 gdb                                          x86_64                 7.0.1-32.el5                         oel5                 2.4 M

 glibc-devel                                  i386                   2.5-58                               oel5                 2.0 M

 glibc-devel                                  x86_64                 2.5-58                               oel5                 2.4 M

 glibc-headers                                x86_64                 2.5-58                               oel5                 593 k

 kernel-uek-headers                           x86_64                 2.6.32-100.26.2.el5                  oel5                 709 k

 libXp                                        i386                   1.0.0-8.1.el5                        oel5                  22 k

 libaio-devel                                 i386                   0.3.106-5                            oel5                  12 k

 libaio-devel                                 x86_64                 0.3.106-5                            oel5                  11 k

 libstdc++-devel                              x86_64                 4.1.2-50.el5                         oel5                 2.8 M

 sysstat                                      x86_64                 7.0.2-3.el5_5.1                      oel5                 175 k

 unixODBC                                     i386                   2.2.11-7.1                           oel5                 830 k

 unixODBC                                     x86_64                 2.2.11-7.1                           oel5                 835 k

 unixODBC-devel                               i386                   2.2.11-7.1                           oel5                 743 k

 unixODBC-devel                               x86_64                 2.2.11-7.1                           oel5                 799 k

 

Transaction Summary

=====================================================================================================================================

Install      22 Package(s)

Upgrade       0 Package(s)

 

Total download size: 42 M

Is this ok [y/N]: y

Downloading Packages:

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

Total                                                                                                2.2 GB/s |  42 MB     00:00    

Running rpm_check_debug

Running Transaction Test

Finished Transaction Test

Transaction Test Succeeded

Running Transaction

  Installing     : unixODBC                                                                                                     1/22

  Installing     : compat-db                                                                                                    2/22

  Installing     : gdb                                                                                                          3/22

  Installing     : sysstat                                                                                                      4/22

  Installing     : kernel-uek-headers                                                                                           5/22

  Installing     : glibc-headers                                                                                                6/22

  Installing     : glibc-devel                                                                                                  7/22

  Installing     : compat-gcc-34                                                                                                8/22

  Installing     : libstdc++-devel                                                                                              9/22

  Installing     : glibc-devel                                                                                                 10/22

  Installing     : unixODBC-devel                                                                                              11/22

  Installing     : libaio-devel                                                                                                12/22

  Installing     : libaio-devel                                                                                                13/22

  Installing     : unixODBC                                                                                                    14/22

  Installing     : libXp                                                                                                       15/22

  Installing     : gcc                                                                                                         16/22

  Installing     : gcc-c++                                                                                                     17/22

  Installing     : compat-gcc-34-c++                                                                                           18/22

  Installing     : unixODBC-devel                                                                                              19/22

  Installing     : elfutils-libelf-devel                                                                                       20/22

  Installing     : oracle-validated                                                                                            21/22

  Installing     : elfutils-libelf-devel-static                                                                                22/22

 

Installed:

  oracle-validated.x86_64 0:1.1.0-7.el5                                                                                             

 

Dependency Installed:

  compat-db.x86_64 0:4.2.52-5.1                                      compat-gcc-34.x86_64 0:3.4.6-4.1                               

  compat-gcc-34-c++.x86_64 0:3.4.6-4.1                               elfutils-libelf-devel.x86_64 0:0.137-3.el5                      

  elfutils-libelf-devel-static.x86_64 0:0.137-3.el5                  gcc.x86_64 0:4.1.2-50.el5                                      

  gcc-c++.x86_64 0:4.1.2-50.el5                                      gdb.x86_64 0:7.0.1-32.el5                                       

  glibc-devel.i386 0:2.5-58                                          glibc-devel.x86_64 0:2.5-58                                    

  glibc-headers.x86_64 0:2.5-58                                      kernel-uek-headers.x86_64 0:2.6.32-100.26.2.el5                

  libXp.i386 0:1.0.0-8.1.el5                                         libaio-devel.i386 0:0.3.106-5                                  

  libaio-devel.x86_64 0:0.3.106-5                                    libstdc++-devel.x86_64 0:4.1.2-50.el5                          

  sysstat.x86_64 0:7.0.2-3.el5_5.1                                   unixODBC.i386 0:2.2.11-7.1                                     

  unixODBC.x86_64 0:2.2.11-7.1                                       unixODBC-devel.i386 0:2.2.11-7.1                               

  unixODBC-devel.x86_64 0:2.2.11-7.1                               

 

Complete!

 

1.4. 修改密码及创建目录和权限

1) 修改 oracle 用户的密码
注 我们使用 YUM 安装了相关的程序包的同时,也为我们创建了 Oracle 账户和相关的组,默认的密码
即为 oracle

[root@hong ~]# passwd oracle

Changing password for user oracle.

New UNIX password:

BAD PASSWORD: it is based on a dictionary word

Retype new UNIX password:

passwd: all authentication tokens updated successfully.

2) 创建相关目录并赋权

[root@hong ~]# mkdir /soft

[root@hong ~]# chown -R oracle:oinstall /soft

[root@hong ~]# chmod -R 755 /soft 

[root@hong ~]# mkdir -p /u01/app/oracle

[root@hong ~]# chown -R oracle:oinstall /u01

[root@hong ~]#  chmod -R 755 /u01

 

1.5. 设置 oracle 用户环境变量

[root@hong ~]# su - oracle

[oracle@hong ~]$ vi .bash_profile

# .bash_profile

 

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

        . ~/.bashrc

fi

 

# User specific environment and startup programs

 

PATH=$PATH:$HOME/bin

 

export PATH

 

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export ORACLE_SID=CAI

export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

~

".bash_profile" 18L, 389C written

[oracle@hong ~]$

修改完成,使其修改生效,如下:
[oracle@ocmu ~]$ . .bash_profile
[oracle@ocmu ~]$
或者
[oracle@ocmu ~]$ source .bash_profile
[oracle@ocmu ~]$
再或者注销重新登录

注:
ORACLE_BASE oracle 产品基目录
ORACLE_HOME:数据库产品目录通常情况下 HOME 目录是 BASE 的子目录
ORACLE_SID:操作系统和 oracle 实例关联的纽带
PATH:将安装后的 oracle 命令追加到执行搜索路径
LD_LIBRARY_PATH:动态库的位置

1.6. 上传 oracle 安装介质
oracle 安装介质上传到/soft 目录下,步骤略……


1.7. 安装软件
1) oracle 用户下,执行 oracle 安装命令后,检查通过后,启动图形界面(使用xsheel

[oracle@hong ~]$ cd /soft

[oracle@hong soft]$ ls

p13390677_112040_Linux-x86-64_1of7.zip  p13390677_112040_Linux-x86-64_2of7.zip

[oracle@hong soft]$ unzip p13390677_112040_Linux-x86-64_1of7.zip

[oracle@hong soft]$ unzip p13390677_112040_Linux-x86-64_2of7.zip

[oracle@hong soft]$ ls

Database p13390677_112040_Linux-x86-64_1of7.zip  p13390677_112040_Linux-x86-64_2of7.zip







软件安装完毕;

 

 二:开始手动建库

1.创建密码文件(作用:允许远程用密码方式以sysdba身份登陆数据库,密码文件可有可无)

--切换到存放密码文件的目录

oracle@hong soft]$ cd $ORACLE_HOME/dbs

[oracle@hong dbs]$ ls

init.ora

[oracle@hong dbs]$ orapwd file=orapwCAI password=oracle

[oracle@hong dbs]$ ls

init.ora  orapwCAI

 

2:生成pfile文件

oracle@hong ~]$ cd $ORACLE_HOME/dbs

[oracle@hong dbs]$ ls

init.ora  orapwCAI

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

db_name='ORCL'

memory_target=1G

processes = 150

audit_file_dest='/admin/orcl/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 = (ora_control1, ora_control2)

compatible ='11.2.0'

 

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

[oracle@hong dbs]$ ls

initCAI.ora  init.ora  orapwCAI

[oracle@hong dbs]$

查看:

[root@hong ~]# df -h

Filesystem            Size  Used Avail Use% Mounted on

/dev/sda2              39G  9.2G   28G  26% /

/dev/sda1              99M   22M   73M  23% /boot

tmpfs                 995M     0  995M   0% /dev/shm

/dev/sr0              3.6G  3.6G     0 100% /media/Oracle Linux Server dvd 20110119

/dev/sr0              3.6G  3.6G     0 100% /mnt

[root@hong ~]#

 

--编辑参数文件

[oracle@hong dbs]$ vi initCAI.ora

db_name='CAI'

memory_target=900M

processes = 150

audit_file_dest='/u01/app/oracle/admin/CAI/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/CAI/control01.ctl, /u01/app/oracle/oradata/CAI/control02.ctl)

compatible ='11.2.0'

~

"initCAI.ora" 16L, 527C written                                                                                   

[oracle@hong dbs]$

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

[oracle@hong ~]$ mkdir -p $ORACLE_BASE/admin/CAI/adump

[oracle@hong ~]$ mkdir -p $ORACLE_BASE/oradata/CAI/

4:通过pfile创建spfile

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

[oracle@hong CAI]$ cd $ORACLE_HOME/dbs

[oracle@hong dbs]$ ls

initCAI.ora  init.ora  orapwCAI

--验证当前环境变量

[oracle@hong dbs]$ echo $ORACLE_SID

CAI

[oracle@hong dbs]$

--通过pfile创建spfile

oracle@hong dbs]$ sqlplus / as sysdba

 

SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 14 20:44:36 2016

 

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

 

Connected to an idle instance.

 

SQL> create spfile from pfile;

 

File created.

 

SQL> !ls

initCAI.ora  init.ora  orapwCAI  spfileCAI.ora

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

[oracle@hong dbs]$ sqlplus / as sysdba

 

SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 14 20:48:55 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/spfileCAI.ora

SQL>

SQL> select status from v$instance;

 

STATUS

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

STARTED

6:编写创建数据库脚本

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@hong dbhome_1]$ vi createdb.sql

create database CAI

   user sys identified by oracle

   user system identified by oracle

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

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

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

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

   default tablespace users

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

      size 50m reuse autoextend on maxsize unlimited

   default temporary tablespace tempts1

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

      size 20m reuse

   undo tablespace undotbs1

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

      size 50m reuse autoextend on maxsize unlimited;

~

"createdb.sql" [New] 25L, 2089C written                                                                            

[oracle@hong dbhome_1]$

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

SQL> @?/createdb.sql

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/CAI/co

                                                 ntrol01.ctl, /u01/app/oracle/o

                                                 radata/CAI/control02.ctl

SQL>

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/spfileCAI.ora


8:创建字典表及工具包

--必执行脚本

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

 

9.验证数据库可用性:

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.

完成!!!!!!!!


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