1 . 安装数据库之前的预备工作。
首先必须确认你的机器配置,操作系统,以及你需要安装的Oracle数据库的版本。针对不同的机器、操作系统和oracle版本你可以参考以下网站。
www.oracle.com (oracle数据库的官方网站,英文要加强哦^-^)
在这个网站里面包含了你所需要的信息,不过在你Download的时候需要注册哦^-^
2 . 针对通过Windows下登陆Linux OR Unix下安装的用户来说。(假如你是在Windows下安装oracle数据库,有图形界面提供给你,真是一个不错的消息^-^)
我想大多数的人都在用putty 吧!我有是如此。用它就可以轻松的完成Windows与Linux OR Unix 互访。那么我们就可以通过它来完成我们的数据库搭建。
可能有人会问:“Linux下或Uinx下就没有图形界面安装吗?”回答是有的。但是需要你的系统支持,或需要Down XWindow 应用程序。但是这样也不行哦,因为可爱的putty可没有支持图形界面的工具提供给你哦^-^。所以你还要学习另外一个软件就是VNC。
什么?你不知道VNC?那就自己去www.baidu.com或www.Google.com上面去搜索吧。我个人喜欢这两个。也许大家会有自己的搜索器呢!至于VNC的使用就不用我教了吧!嘿嘿。。。。。。。。。。
由于上述原因,所以我决定在Linux或Unix下用字符界面安装oracle。(之前我没有安装过oracle,算是一个挑战吧 ^-^)
3 . 实际行动(以AIX机器为例)
Me 的机器是这样的:IBM AIX 5.3 1600s ,2G内存 ,给我使用的ORACLE空间5G 。(公司对我太好了)
So下载的版本就是Oracle Database 10g Release 2 (10.2.0.1.0) for AIX5L(最好是release版本)
注:由于给我的这台Server需要telnet登陆,所以Down下来的oracle 安装包没办法用putty传过去,所以只有想其他的办法。(原本以为字符界面的快,不用那么多步骤。可是。。。。。。。)
上网搜索一下,知道在Windows 下有一个强大的命令---------FTP。(介绍一下?)
如何开启ftp相信大家都会吧!(ftp 192.168.*.*) 所以只介绍如何传输哦。
FTP > bin
FTP > lcd $PATH (我的$PATH= D:\cyaln\study_source\oracle)
FTP > put 10gr2_aix5l64_database.cpio.gz
(注:1 . 这样传输过去的时候,文件将存放在/HOME/$ID目录下。
2 . 一定要有足够大的空间来存放该文件哦!我就因为目录空间不够的问题导致ftp 传输失败。)
FTP > by (传送成功以后一定要跟FTP说再见哦! ^-^)
这样,我们的AIX机器上就有了我们的oracle安装压缩包。(这也是工程一件哦^-^)
$gunzip 10gr2_aix5l64_database.cpio.gz
$cpio -idcmv <10gr2_aix5l64_database.cpio.gz
做完以上步骤就会生成一个Disk1的目录。
真正的实战开始了(注重注重。。。。。。。。。。。。。。。。。。。。。。。。。。。)
一、确认系统硬件环境
Oracle10g最低安装要求:
512M物理内存、MIN(RAM*2,2G) SWAP空间、400M /TMP空间、4G Oracle目录空间、64位体系结构
下面是确认过程:
1、确认内存大小(1G)
localhost> /usr/sbin/lsattr -E -l sys0 -a realmem
realmem 1048576 Amount of usable physical memory in Kbytes False
这里oracle10g安装文档写错了,将“sys0(数字0)”写成了“sysO(字母O)”。
2、确认SWAP空间,512M太小了,加到2G。
localhost> /usr/sbin/lsps -a
Page Space Physical Volume Volume Group Size %Used Active Auto Type
hd6 hdisk0 rootvg 512MB 12 yes yes lv
3、确认/TMP和Oracle目录空间(其中Oracle10g放在/data1下):
localhost> df -k
Filesystem 1024-blocks Free %Used Iused %Iused Mounted on
/dev/hd4 32768 14676 56% 2176 14% /
/dev/hd2 1933312 516400 74% 35398 8% /usr
/dev/hd9var 65536 43496 34% 623 4% /var
/dev/hd3 917504 691884 25% 1034 1% /tmp
/dev/hd1 10911744 4097144 63% 18636 1% /home
/proc - - - - - /proc
/dev/hd10opt 32768 23328 29% 362 5% /opt
/dev/lv00 2097152 937572 56% 708 1% /ptf
/dev/data1lv 13107200 10559980 20% 2735 1% /data1
4、确认系统结构
localhost> /usr/bin/getconf HARDWARE_BITMODE
64
5、我们可以通过下面的命令来确认系统CPU个数和主频:
# lsdev -C grep proc
proc0 Available 00-00 Processor
proc1 Available 00-01 Processor
# lsattr -E -l proc0
frequency 752010000 Processor Speed False
state enable Processor state False
type PowerPC_RS64-III Processor type False
# lsattr -E -l proc1
frequency 752010000 Processor Speed False
state enable Processor state False
type PowerPC_RS64-III Processor type False
二、确认系统软件环境
1、要求AIX必须是5.2 LEVEL 1以上(含LEVEL 1):
localhost> oslevel -r
5200-01
2、要求安装了这些FILESETS:
localhost> lslpp -l bos.adt.base bos.adt.lib bos.adt.libm
bos.perf.perfstat bos.perf.libperfstat bos.perf.proctools
Fileset Level State Description
----------------------------------------------------------------------------
Path: /usr/lib/objrepos
bos.adt.base 5.2.0.11 APPLIED Base Application Development
Toolkit
bos.adt.lib 5.2.0.10 APPLIED Base Application Development
Libraries
bos.adt.libm 5.2.0.13 APPLIED Base Application Development
Math Library
bos.perf.libperfstat 5.2.0.12 APPLIED Performance Statistics Library
Interface
bos.perf.perfstat 5.2.0.12 APPLIED Performance Statistics
Interface
Path: /etc/objrepos
bos.perf.perfstat 5.2.0.0 COMMITTED Performance Statistics
Interface
lslpp: 0504-132 Fileset bos.perf.proctools not installed.
可以看到bos.perf.proctools没有安装,用smitty安装上即可。现在查看确认:
localhost> lslpp -l bos.perf.proctools
Fileset Level State Description
----------------------------------------------------------------------------
Path: /usr/lib/objrepos
bos.perf.proctools 5.2.0.11 APPLIED Proc Filesystem Tools
3、要求安装了APARs(Authorized Problem Analysis Reports):
localhost> /usr/sbin/instfix -i -k "IY43980 IY44810 IY45462 IY45707
IY46214 IY46605 IY48525 IY51801"
All filesets for IY43980 were found.
All filesets for IY44810 were found.
All filesets for IY45462 were found.
All filesets for IY45707 were found.
All filesets for IY46214 were found.
All filesets for IY46605 were found.
There was no data for IY48525 in the fix database.
There was no data for IY51801 in the fix database.
可以看到IY48525和IY51801没有安装,我们可以从网上下载它们然后安装上,这里是下载地址:https://techsupport.services.ibm.com/server/aix.fdc
但实际上,这两个补丁是针对SDK1.4的, 假如不用1.4完全可以不理。
4、创建Oracle10g用户和组,并创建相关目录(这一步是最要害的)
注重哦,认真操作每一个步骤哦 ^-^ ^-^ ^-^ ^-^ ^-^
useradd - g oinstall –G dba –d /home/oracle –s /usr/bin/bash –m oracle
passwd oracle
完成以后:用oracle用户进行登陆修改 .profile
su - oracle
4.1.设置系统环境变量:(一般情况是在/HOME/ORACLE)
ORACLE_HOME=/home/oracle/prodUCt/10.2.0
ORACLE_BASE=/home/oracle
4.2.系统规划:(这里用TEST)
实例名称ORACLE_SID=test
数据库名称:test
4.3.手工创建如下目录:
/home/oracle/admin/test/cdump
/home/oracle/admin/test/bdump
/home/oracle/admin/test/udump
/home/oracle/admin/test/pfile
/home/oracle/oradata/test
附:我的.profile文件
if [ -s "$MAIL" ] # This is at Shell startup. In normal
then echo "$MAILMSG" # operation, the Shell checks
fi # periodically.
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
ORACLE_HOME=/home/oracle/product/10.2.0;
eXPort ORACLE_HOME
export ORACLE_BASE=/home/oracle
export ORACLE_SID=test
unset USERNAME
umask 022
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin;
export PATH
5 . 编辑Response 文件
这一步骤是字符界面装oracle的要害步骤
到oracle 10g的安装目录下编辑response文件
$su – oracle
$cd /$HOME/$ID/Disk1/response
可以看到oracle预备了6个response文件,实际上这些文件就是用来安装和配置oracle时的模板,分别是custom.rsp dbca.rsp emca.rsp enterprise.rsp netca.rsp standard.rsp在这里挑了一个简单的response文件 enterprise.rsp,也可以根据实际情况去选用编辑其他几个response文件。
$cp custom.rsp myinst.rsp
$vi myinst.rsp
在myinst.rsp的最前面有一段说明,应该仔细看看,非凡要注重它定义的几个数据变量格式的写法,如下:
Type Example
String "Sample Value"
Boolean True or False
Number 1000
StringList {"String value 1","String Value 2"}
其后都是安装oracle时所需要定义的变量,其值有三种情况,一是已经有默认值的,几乎可以不用管它。二是值等于的,这种变量是非图形界面安装10g所必需要指定的变量,一定要修改成合适的值,第三种变量的值等于,说明它的值是和别的变量值关联的,也可以不用管它。需要把第二类变量的值逐个修改。
更改情况如下,可根据实际情况修改其它变量的值:
ORACLE_HOME="/home/oracle/product/10.2.0"
ORACLE_HOME_NAME="TEST"
s_nameForDBAGrp="dba"
s_nameForOPERGrp="dba"
SHOW_DATABASE_CONFIGURATION_PAGE=false
b_createStarterDB=false (不创建数据库)
SHOW_DATABASE_OPTIONS_PAGE=false
s_dbCharacterSet="ZHS16GBK"
s_globalDBName="test"
s_dbSid="test"
SHOW_DATABASE_MANAGEMENT_PAGE=false
SHOW_DATABASE_FILE_STORAGE_OPTION_PAGE=false
SHOW_BACKUP_RECOVERY_OPTION_PAGE=false
SHOW_SCHEMA_PASSWordS_PAGE=false
改完后存盘退出
三、运行安装oracle
1、以root执行# ./rootpre.sh
2、转到oracle 10g安装介质目录下,用oracle用户运行runInstaller
$cd @/Disk1/
$./runInstaller –silent –responseFile @/Disk1/response/myinst.rsp
“@”表示:Disk的父目录路径
这样Oracle 10g就开始安装了
安装进程的步骤如下:
a.检测temp 和swap分区的大小
b.查系统补丁是否满足需要
c.到response文件中读取信息
d.copy 相关文件
e.link and setup
f.提示运行root.sh,根据提示,用root用户去运行root.sh就行了
一般出错的地方轻易在b、c步骤,假如是系统补丁没打全,则根据提示把系统补丁打好,假如是在c的地方出错,说明你的response文件信息有误,需要重新修改response文件。
至此,不起图形界面安装oracle 10g就完成了
四、后续工作
建数据库。
此次安装中并未建库,关于用脚本建库的方法,和以前版本的oracle类似,这里不再具体说明了。
我来补充一些内容吧~~~
我建立数据库的脚本:(create_db.sql)
create database '$DBName'
logfile
group 1 ('/home/oracle/oradata/'$DBName'/redo01.log') size 100M,
group 2 ('/home/oracle/oradata/'$DBName'/redo02.log') size 100M,
group 3 ('/home/oracle/oradata/'$DBName'/redo03.log') size 100M
maxlogfiles 5
maxlogmembers 5
maxloghistory 1
maxdatafiles 100
maxinstances 1
datafile '/home/oracle/oradata/'$DBName'/system01.dbf' size 256M
undo tablespace undotbs
datafile '/home/oracle/oradata/'$DBName'/undotbs01.dbf' size 200M autoextend on next 5M maxsize unlimited
sysaux datafile '/home/oracle/oradata/'$DBName'/sysaux01.dbf' size 100M
default temporary tablespace temp
tempfile '/home/oracle/oradata/'$DBName'/temp01.dbf' size 512M autoextend on next 5M maxsize unlimited
character set US7ASCII
national character set AL16UTF16;
有非凡的标记是需要注重的哦!! ^_^
在我的实践过程中发现了我有一个重要的步骤没有执行,那就是在用脚本建立数据库以后,需要执行两个重要的系统文件。(以下是网上查找的资料)
除了建立额外的资料表空间外,您还必须在数据库建立之后执行两个重要的指令文件:catelog.sql 与 cataproc.sql。这两个指令文件将在 Oracle9i 数据库内建立治理工作必备的视观表、同义字(synonyms)、以及 PL/SQL 套件(packages)。
1 catalog.sql:
本指令文件内容为:在数据字典数据表上建立相关视观表、动态效能视观表、以及存取各种视观表所用的同义字。此外,catalog.sql 也会将这些视观表的使用权限授权给数据库使用者。
2 catproc.sql:
本指令文件内包含执行 PL/SQL 程序所需的所有指令文件。