天地不仁,以万物为刍狗!
ORACLE**手册长篇连载--第一部分
上一篇 / 下一篇 2007-06-18 00:00:00 / 个人分类:oracle
1 安装
9TuA|1r8p5n.m^0
8R3Eq'Vd-D+A;f0所有参见内容都在附件01_install_02_create_03_init/下。
7O4U0X2i,dj9wf/@i0ITPUB个人空间!g vdA `!_#l
1.1 通用设置
0Osp(?t0ITPUB个人空间brq/R'~%ak-X\ k
文件系统swapITPUB个人空间 hjuU\"i W(|+|
ITPUB个人空间-o X3?g@Tn
创建文件系统时应考虑Oracle对swap的需要,大约每个oracle服务进程将占用10-20Mswap空间,通常操作系统建议2倍于内存的swap空间,数据库系统可能要求更多些。
j(L0n q R%|"n0ITPUB个人空间g[N EE1MgS
操作系统用户和环境变量ITPUB个人空间*P<o$?K;W:~r
KM5PKe b3U0Oracle文档要求为数据库系统的管理和使用建立3个或更多的组,但这个需求是可以忽略的,实践中并没有体现其必要性。为简化操作起见,只建立dba组,即拥有更新软件和管理最高权限(SYSDBA)的操作系统用户组,此组称为OSDBA,属于此组的用户可以SYSDBA身份登录进任何一个数据库实例,简单的,只建立一个用户,习惯上使用oracle的名称。
#a!P9}%C d[0ITPUB个人空间+{6[N6g/~x_+f/W
$ groupadd dba
Hs-Ix k1ms| kN C`0
2c3u)r(l?0Lq"@0$ useradd -g dba -d /home/oracle -m -s /bin/bash oracle
6@:lK$EK*\p0ITPUB个人空间/t ?b{)E7}
确定oracle 系统的根目录ORACLE_BASE,如/opt/oracle,所有的软件和配置都在这个目录下展开,虽然并非一定需要如此,但这是一个良好的习惯。同时确定软件安装的起始点ORACLE_HOME,通常在ORACLE_BASE下。
!F}0V1H]0
9]9r+] t6o"I$b)OPl0修改oracle用户的.profile,加入以下各行,或者修改/etc/profile,使每一个用户都获得环境变量设置
qr*]%V k"n|0
S,nV3rJd9z-\0umask 022ITPUB个人空间9c]+fS`5k h
h"N9Y'SQ:k;P-o){0ORACLE_BASE=/opt/oracleITPUB个人空间AB8N Ibe
5Iif] a"lc0ORACLE_HOME=$ORACLE_BASE/product/{版本号}(如8.0.5,8.1.7,9.2.0等)
~`)K;F E%i q+X&K)V0ITPUB个人空间[U z$K3\w6S
ORACLE_SID=oradb
)[B??(o F0ITPUB个人空间4o5IVuU5y]s!g1C
ORACLE_TERM=ansi #仅与Oracle8字符界面安装有关
|aG#u6rL0
'jJ2B9lHv x+MR0ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data #字符集支持ITPUB个人空间.{4^p2t1\L|&f
u|I0{%M+gR-y0NLS_LANG=American_America.{ZHS16CGB231280(Oracle8支持)|ZHS16GBK(Oracle8i支持)|ZHS16GB18030(Oracle9i支持)}
W#@Et@S+P*l#]0ITPUB个人空间v8w E6F!p2A^;_7g n
NLS_DATE_FORMAT=YYYYMMDDHH24MISSITPUB个人空间)R$C4~P3O`
ITPUB个人空间8i)x7w(^(^j.@C"E
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH #动态连接路径,Unixware中要确保/usr/ucb/lib在/usr/ccs/lib之后出现
3_c4EM0MHk nD0b d0
h"s0|x'Yx&}\el0TMPDIR=/tmp #安装中Oracle会在此目录下存储相当数量的文件,所以TMPDIR所在的磁盘分区要确保空闲空间的大小,至少在1G左右ITPUB个人空间0O&E Y6]*cw8C#N(NY
/c6v4O4p-Qg7UwH0PATH=$PATH:$ORACLE_HOME/bin
m0ah-lhjeg0
|m.YE]{Y0export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_TERM ORA_NLS33 NLS_LANG NLS_DATE_FORMAT LD_LIBRARY_PATH TMPDIRITPUB个人空间#^ ig5ut/Q8Y
ITPUB个人空间~T ] Hbc ]4FU-T
参见profile。
5Wh:VWU$|-~FSQC\0ITPUB个人空间&W/JZk&n8B1F
注意:ITPUB个人空间?8{9Nft1?
skqf/B6LG5~b0NLS_LANG=American_America.ZHS16CGB231280(ZHS16GBK)
'Q {Mg'Y~C+P^|:Vd*D0ITPUB个人空间HQowB(N
"American"指显示信息时所用的语言,窃以为凭大家的英语水平足够应付,如改为SIMPLIFIED CHINESE,在不带中文支持的终端上就没人能看懂了。ITPUB个人空间;Du1G&g'YLRq(g ~
ITPUB个人空间rj8`G@+@P
"America"指地区ITPUB个人空间%P#PZOKXdm
ITPUB个人空间jXm.\t(E+t9n
"ZHS16CGB231280"指Client工具使用的字符集,一般使用"ZHS16CGB231280",Oracle8i已支持到"ZHS16GBK"
Hia:e9Hs}G @0ITPUB个人空间)Dm-m3Z Jy*qh
NLS_DATE_FORMAT=YYYYMMDDHH24MISSITPUB个人空间#~5w*`(I-_2d9Hb hiG
5|9}W @6{nt0Oracle的date类型过于灵活,为统一时间格式,利于编程,应将时间的输入输出格式限定为14位字符串,如"20000101235959"ITPUB个人空间q-c7N3d'F%Y$C5J COc
Z0ui[/P*Ng0据oracle文档,此参数可按照session,操作系统用户环境,init.ora由高到低的优先级顺序设置,依次覆盖。ITPUB个人空间y~9Fx t7iK[O
0pOO_vW;x3J2G4O ws0相关系统表:ITPUB个人空间hG4|] @
]7E `y/QW't:y0v$nls_parameters v$nls_valid_valuesITPUB个人空间8s ]+CpPsfx
0cu(Y3k+D2XK4PvW#u5qu0X-Window
3W)~K?{1y#R;}Go0
8KOU!k%]kyR#m6Lr0Oracle 8的安装程序是光盘mount点/bin/orainst,使用字符界面,不用考虑X-Window。ITPUB个人空间o(tp;Y!|t
ITPUB个人空间8V:n+lAq cT qX,}
Oracle 8i和9i使用光盘mount点/runInstaller进行安装,它是用Java编写的图形界面,对中文处理有问题,所以应在进入X-Window前确保语言(LANG)和地域(LC_ALL,LC_TYPE,…)环境变量不是中文。
i[+u6j&b;M JI2E.B0I0ITPUB个人空间0E MG6i'K ^*O1C
LANG=C
,f-}{,gnbup0ITPUB个人空间2zz I i'Ci%nY
LC_ALL=C
!HW2g;t!fG;s0
-j |-Fb#^(fnT0安装选项
Q9dl|O9{+G `0ITPUB个人空间 G5He({3s7D v
Oracle 8i的主要软件包在安装选项Enterprise中,但并不包括proc,必须进行第二次安装,可选择安装选项Client中的programmer。
$GwmbT2EB"e,G~0ITPUB个人空间)HBl7w_2R2p[ D
Oracle 9i的主要软件包在安装选项Enterprise安装选项中,但并不包括proc,必须进行第二次安装,一定要选择安装选项Client中的Administrator。runInstaller的稳定性欠佳,建议每次安装结束后,先退出,再进行下一次安装。ITPUB个人空间4X T&M0y2A
*ro`+jjNTq01.2 UnixWare7
/fXrP'^j0ITPUB个人空间 qu,h*{u
1.2.1 Oracle 8ITPUB个人空间,d$dI jU:K/V
1~a@ M4J(y9bNU0确认操作系统的交换分区swap不少于350M
T;ImNgn$X0ITPUB个人空间)z_`"xUC t
认为该打的补丁统统打上,宁滥毋缺。UnixWare7.0.1必须打的补丁为ptf7033,ptf7051,ptf7052,ptf7068,ptf7096。ITPUB个人空间:S&qD2oYH S^V
&fV:[rZD6aC0将/etc/default/login中的ulimit设为大于2113674(稍大一点即可,太大会有问题)ITPUB个人空间;s dE,n1H|
~e]7S@/s:D`#][0将/etc/conf/node.d/async中的600改为666
ILwh)z,P0ITPUB个人空间0?/I)?7X1b
修改以下核心参数ITPUB个人空间R'I C u:[+E
Fj"M-Y8Rk$A0核心参数 必需值 解释
z d yqjQK,L0
rT;t I&I*t8q A0SHMMAX 2147483647 共享内存段最大尺寸ITPUB个人空间7{1x-bmi3T#Qfp
W!`%l;dC}0SHMMNI 100 系统共享内存段标识最大数目
:J7i*v&t
9TuA|1r8p5n.m^0
8R3Eq'Vd-D+A;f0所有参见内容都在附件01_install_02_create_03_init/下。
7O4U0X2i,dj9wf/@i0ITPUB个人空间!g vdA `!_#l
1.1 通用设置
0Osp(?t0ITPUB个人空间brq/R'~%ak-X\ k
文件系统swapITPUB个人空间 hjuU\"i W(|+|
ITPUB个人空间-o X3?g@Tn
创建文件系统时应考虑Oracle对swap的需要,大约每个oracle服务进程将占用10-20Mswap空间,通常操作系统建议2倍于内存的swap空间,数据库系统可能要求更多些。
j(L0n q R%|"n0ITPUB个人空间g[N EE1MgS
操作系统用户和环境变量ITPUB个人空间*P<o$?K;W:~r
KM5PKe b3U0Oracle文档要求为数据库系统的管理和使用建立3个或更多的组,但这个需求是可以忽略的,实践中并没有体现其必要性。为简化操作起见,只建立dba组,即拥有更新软件和管理最高权限(SYSDBA)的操作系统用户组,此组称为OSDBA,属于此组的用户可以SYSDBA身份登录进任何一个数据库实例,简单的,只建立一个用户,习惯上使用oracle的名称。
#a!P9}%C d[0ITPUB个人空间+{6[N6g/~x_+f/W
$ groupadd dba
Hs-Ix k1ms| kN C`0
2c3u)r(l?0Lq"@0$ useradd -g dba -d /home/oracle -m -s /bin/bash oracle
6@:lK$EK*\p0ITPUB个人空间/t ?b{)E7}
确定oracle 系统的根目录ORACLE_BASE,如/opt/oracle,所有的软件和配置都在这个目录下展开,虽然并非一定需要如此,但这是一个良好的习惯。同时确定软件安装的起始点ORACLE_HOME,通常在ORACLE_BASE下。
!F}0V1H]0
9]9r+] t6o"I$b)OPl0修改oracle用户的.profile,加入以下各行,或者修改/etc/profile,使每一个用户都获得环境变量设置
qr*]%V k"n|0
S,nV3rJd9z-\0umask 022ITPUB个人空间9c]+fS`5k h
h"N9Y'SQ:k;P-o){0ORACLE_BASE=/opt/oracleITPUB个人空间AB8N Ibe
5Iif] a"lc0ORACLE_HOME=$ORACLE_BASE/product/{版本号}(如8.0.5,8.1.7,9.2.0等)
~`)K;F E%i q+X&K)V0ITPUB个人空间[U z$K3\w6S
ORACLE_SID=oradb
)[B??(o F0ITPUB个人空间4o5IVuU5y]s!g1C
ORACLE_TERM=ansi #仅与Oracle8字符界面安装有关
|aG#u6rL0
'jJ2B9lHv x+MR0ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data #字符集支持ITPUB个人空间.{4^p2t1\L|&f
u|I0{%M+gR-y0NLS_LANG=American_America.{ZHS16CGB231280(Oracle8支持)|ZHS16GBK(Oracle8i支持)|ZHS16GB18030(Oracle9i支持)}
W#@Et@S+P*l#]0ITPUB个人空间v8w E6F!p2A^;_7g n
NLS_DATE_FORMAT=YYYYMMDDHH24MISSITPUB个人空间)R$C4~P3O`
ITPUB个人空间8i)x7w(^(^j.@C"E
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH #动态连接路径,Unixware中要确保/usr/ucb/lib在/usr/ccs/lib之后出现
3_c4EM0MHk nD0b d0
h"s0|x'Yx&}\el0TMPDIR=/tmp #安装中Oracle会在此目录下存储相当数量的文件,所以TMPDIR所在的磁盘分区要确保空闲空间的大小,至少在1G左右ITPUB个人空间0O&E Y6]*cw8C#N(NY
/c6v4O4p-Qg7UwH0PATH=$PATH:$ORACLE_HOME/bin
m0ah-lhjeg0
|m.YE]{Y0export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_TERM ORA_NLS33 NLS_LANG NLS_DATE_FORMAT LD_LIBRARY_PATH TMPDIRITPUB个人空间#^ ig5ut/Q8Y
ITPUB个人空间~T ] Hbc ]4FU-T
参见profile。
5Wh:VWU$|-~FSQC\0ITPUB个人空间&W/JZk&n8B1F
注意:ITPUB个人空间?8{9Nft1?
skqf/B6LG5~b0NLS_LANG=American_America.ZHS16CGB231280(ZHS16GBK)
'Q {Mg'Y~C+P^|:Vd*D0ITPUB个人空间HQowB(N
"American"指显示信息时所用的语言,窃以为凭大家的英语水平足够应付,如改为SIMPLIFIED CHINESE,在不带中文支持的终端上就没人能看懂了。ITPUB个人空间;Du1G&g'YLRq(g ~
ITPUB个人空间rj8`G@+@P
"America"指地区ITPUB个人空间%P#PZOKXdm
ITPUB个人空间jXm.\t(E+t9n
"ZHS16CGB231280"指Client工具使用的字符集,一般使用"ZHS16CGB231280",Oracle8i已支持到"ZHS16GBK"
Hia:e9Hs}G @0ITPUB个人空间)Dm-m3Z Jy*qh
NLS_DATE_FORMAT=YYYYMMDDHH24MISSITPUB个人空间#~5w*`(I-_2d9Hb hiG
5|9}W @6{nt0Oracle的date类型过于灵活,为统一时间格式,利于编程,应将时间的输入输出格式限定为14位字符串,如"20000101235959"ITPUB个人空间q-c7N3d'F%Y$C5J COc
Z0ui[/P*Ng0据oracle文档,此参数可按照session,操作系统用户环境,init.ora由高到低的优先级顺序设置,依次覆盖。ITPUB个人空间y~9Fx t7iK[O
0pOO_vW;x3J2G4O ws0相关系统表:ITPUB个人空间hG4|] @
]7E `y/QW't:y0v$nls_parameters v$nls_valid_valuesITPUB个人空间8s ]+CpPsfx
0cu(Y3k+D2XK4PvW#u5qu0X-Window
3W)~K?{1y#R;}Go0
8KOU!k%]kyR#m6Lr0Oracle 8的安装程序是光盘mount点/bin/orainst,使用字符界面,不用考虑X-Window。ITPUB个人空间o(tp;Y!|t
ITPUB个人空间8V:n+lAq cT qX,}
Oracle 8i和9i使用光盘mount点/runInstaller进行安装,它是用Java编写的图形界面,对中文处理有问题,所以应在进入X-Window前确保语言(LANG)和地域(LC_ALL,LC_TYPE,…)环境变量不是中文。
i[+u6j&b;M JI2E.B0I0ITPUB个人空间0E MG6i'K ^*O1C
LANG=C
,f-}{,gnbup0ITPUB个人空间2zz I i'Ci%nY
LC_ALL=C
!HW2g;t!fG;s0
-j |-Fb#^(fnT0安装选项
Q9dl|O9{+G `0ITPUB个人空间 G5He({3s7D v
Oracle 8i的主要软件包在安装选项Enterprise中,但并不包括proc,必须进行第二次安装,可选择安装选项Client中的programmer。
$GwmbT2EB"e,G~0ITPUB个人空间)HBl7w_2R2p[ D
Oracle 9i的主要软件包在安装选项Enterprise安装选项中,但并不包括proc,必须进行第二次安装,一定要选择安装选项Client中的Administrator。runInstaller的稳定性欠佳,建议每次安装结束后,先退出,再进行下一次安装。ITPUB个人空间4X T&M0y2A
*ro`+jjNTq01.2 UnixWare7
/fXrP'^j0ITPUB个人空间 qu,h*{u
1.2.1 Oracle 8ITPUB个人空间,d$dI jU:K/V
1~a@ M4J(y9bNU0确认操作系统的交换分区swap不少于350M
T;ImNgn$X0ITPUB个人空间)z_`"xUC t
认为该打的补丁统统打上,宁滥毋缺。UnixWare7.0.1必须打的补丁为ptf7033,ptf7051,ptf7052,ptf7068,ptf7096。ITPUB个人空间:S&qD2oYH S^V
&fV:[rZD6aC0将/etc/default/login中的ulimit设为大于2113674(稍大一点即可,太大会有问题)ITPUB个人空间;s dE,n1H|
~e]7S@/s:D`#][0将/etc/conf/node.d/async中的600改为666
ILwh)z,P0ITPUB个人空间0?/I)?7X1b
修改以下核心参数ITPUB个人空间R'I C u:[+E
Fj"M-Y8Rk$A0核心参数 必需值 解释
z d yqjQK,L0
rT;t I&I*t8q A0SHMMAX 2147483647 共享内存段最大尺寸ITPUB个人空间7{1x-bmi3T#Qfp
W!`%l;dC}0SHMMNI 100 系统共享内存段标识最大数目
:J7i*v&t