lastletter 发表于 2007-08-26 16:42

solaris10安装oracle10g及raid制作整理

SUN V890
系统做RAID1与RAID5,并安装调试ORACLE10G的操作整理了一下,共享给大家


V890共6块140G光纤硬盘,2颗1.5G的CPU,16G内存.
其中,前两块盘做RAID1,后四块盘做RAID5.并把ORACLE安装在RAID5盘上.操作如下:

RAID制作
以下以实力的方式介绍“引导盘镜像操作” (RAID1)
例子中操作系统分区定义如下:
c1t0d0s0 /
c1t0d0s1 swap
c1t0d0s3
c1t0d0s4
c1t0d0s5
c1t0d0s6 (metaDB*3)
c1t0d0s7 /export/home
用root用户登陆
运行以下命令:
# prtvtoc /dev/rdsk/c1t0d0s2 > boot-vtoc.tab
# fmthard -s boot-vtoc.tab 〉 /dev/rdsk/c1t1d0s2
以上命令将第2硬盘的文件分区表调整为和引导盘一致
c1t1d0s0 /
c1t1d0s1 swap
c1t1d0s3
c1t1d0s4
c1t1d0s5
c1t1d0s6 (metaDB*3)
c1t1d0s7 /export/home

运行以下命令:
# metadb -afc 3 c1t0d0s6 c1t1d0s6
# metainit -f d10 1 1 c1t0d0s0
# metainit d20 1 1 c1t1d0s0
# metainit -f d11 1 1 c1t0d0s1
# metainit d21 1 1 c1t1d0s1
# metainit -f d17 1 1 c1t0d0s7
# metainit d27 1 1 c1t1d0s7

# metainit d0 -m d10
# metainit d1 -m d11
# metainit d7 -m d17

# metaroot d0
# lockfs -fa

修改/etc/vfstab文件为如下:

#device device mount FS fsck mount mount
#to mount to fsck point type pass at boot options
#
#/dev/dsk/c1d0s2 /dev/rdsk/c1d0s2 /usr ufs 1 yes -
fd - /dev/fd fd - no -
/proc - /proc proc - no -
#/dev/dsk/c1t0d0s1       -       -       swap    -       no      -
/dev/md/dsk/d1-       -       swap    -       no      -
#/dev/dsk/c1t0d0s0       /dev/rdsk/c1t0d0s0      /       ufs   1       no      -
/dev/md/dsk/d0/dev/md/rdsk/d0 /       ufs   1       no      -
#/dev/dsk/c1t0d0s7       /dev/rdsk/c1t0d0s7      /export/home    ufs   2       yes   -
/dev/md/dsk/d7/dev/md/rdsk/d7 /export/home    ufs   2       yes   -
/devices      -       /devices      devfs   -       no      -
ctfs    -       /system/contract      ctfs    -       no      -
objfs   -       /system/objectobjfs   -       no      -
swap    -       /tmp    tmpfs   -       yes   -
至此,引导盘镜像操作的第一步完成

运行以下命令重新引导操作系统

# sync
# sync
# sync
# reboot

做数据同步
# metattach d0 d20
# metattach d1 d21
# metattach d7 d27
以上步骤执行时间较长
可使用命令查看进程
#metastat | grep %;date


RAID5制作方法:
分区大小:
C1t2d0s0 50G
C1t2d0s1 80G
C1t2d0s6 200M

C1t3d0s0 50G
C1t3d0s1 80G
C1t3d0s6 200M
……..
使四块盘的分区大小相同:
Prtvtoc /dev/rdsk/c1t2d0s2 > fmthard –s - /dev/rdsk/c1t3d0s0
Prtvtoc /dev/rdsk/c1t2d0s2 > fmthard –s - /dev/rdsk/c1t4d0s0
Prtvtoc /dev/rdsk/c1t2d0s2 > fmthard –s - /dev/rdsk/c1t5d0s0
建状态数据库:
Metainit –afc 5 c1t2d0s6 c1t3d0s6 c1t4d0s6 c1t5d0s6

同步:
Metainit d51 –r c1t2d0s0 c1t3d0s0 c1t4d0s0 c1t5d0s0
Metainit d52 –r c1t2d0s1 c1t3d0s1 c1t4d0s1 c1t5d0s1
查看进度:
Metastat | grep %;date
待同步完后。将/etc/vfstab文件修改如下:
bash-3.00# more /etc/vfstab
#device         device          mount         FS      fsck    mount   mount
#to mount       to fsck         point         type    pass    at boot options
#
fd      -       /dev/fd fd      -       no      -
/proc   -       /proc   proc    -       no      -
/dev/md/dsk/d1-       -       swap    -       no      -
/dev/md/dsk/d0/dev/md/rdsk/d0 /       ufs   1       no      -
/dev/md/dsk/d7/dev/md/rdsk/d7 /export/home    ufs   2       yes   -
/dev/md/dsk/d51 /dev/md/rdsk/d51      /data1ufs   2       yes   -
/dev/md/dsk/d52 /dev/md/rdsk/d52      /u01    ufs   2       yes   -
/devices      -       /devices      devfs   -       no      -
ctfs    -       /system/contract      ctfs    -       no      -
objfs   -       /system/objectobjfs   -       no      -
swap    -       /tmp    tmpfs   -       yes   -
bash-3.00#





Oracle10g的安装
以root用户身份登陆并配置系统参数
login: root
Password:
Last login: Fri Aug 24 19:54:08 on console
Sun Microsystems Inc.   SunOS 5.10      Generic January 2005
#
# cd /oracle10g-release2-10.2/sparc/server
# cat 10gr2_db_sol.cpio.gz | gzip -d - | cpio -idum
。。。

1。 创建Oracle Inventory group(oinstall), 用于管理Oracle产品清单:

# groupadd oinstall

2。创建Oracle OSDBA group (dba),用于Oracle database管理(SYSDBA权限):

# groupadd dba

3。创建Oracle OSOPER group (oper),用于有限的Oracle database管理(SYOPER权限):

# groupadd oper   

4。创建Oracle software owner用户(oracle), 属于Oracle Inventory和Oracle OSDBA组:

# useradd -g oinstall -G dba oracle

5。检查group和passwd文件,不对的修改下:

# vi /etc/group
。。。
oinstall::100:oracle
dba::101:oracle
oper::102:oracle

# vi /etc/passwd
。。。
oracle:100:100::/u01/app/oracle:/bin/sh

# passwd -r files oracle
New Password:
Re-enter new Password:
passwd: password successfully changed for oracle

6。检查nobody用户:

# id nobody
uid=60001(nobody) gid=60001(nobody)

7。改kernel参数:

将以下参数追加在/etc/system文件尾部
#vi /etc/system
set shmsys:shminfo_shmmax = 4294967296
set shmsys:shminfo_shmmin = 1
set shmsys:shminfo_shmmni = 200
set shmsys:shminfo_shmseg = 30
set semsys:seminfo_semmni = 100
set semsys:seminfo_semmsl = 510
set semsys:seminfo_semmns = 1520
set semsys:seminfo_semopm = 100
set semsys:seminfo_semvmx = 32767
set noexec_user_stack=1

重启服务器
#reboot
服务器启动后,使用命令prctl查看共享内存的大小
# prctl -n project.max-shm-memory -i project user.root
project: 1: user.root
NAME    PRIVILEGE       VALUE    FLAG   ACTION                     RECIPIENT
project.max-shm-memory
      privileged       400GB      -   deny                                 -
      system          16.0EB    max   deny                                 -


8。创建Oracle Base目录(需4GB):

Oracle Base目录,安装Oracle软件的起始目录,缺省/u01/app/oracle
Oracle Inventory目录,Oracle软件的产品清单目录,缺省/u01/app/oracle/oraInventory
Oracle Home目录,Oracle主目录,是Oracle Base的子目录,缺省/u01/app/oracle/product/10.2.0/db_1

# mkdir -p /u01/app/oracle
# chown -R oracle /u01/app/oracle
# chmod -R 775 /u01/app/oracle

# df -k /u01/app/oracle
Filesystem            kbytes    used   avail capacityMounted on
/dev/dsk/c2t0d0s7    20655529   20507 20428467   1#    /u01

9。创建Oracle Database和Recovery文件的目录:

Oracle Database文件的目录,需至少1.2GB,缺省是Oracle Base的子目录:

# mkdir -p /u01/app/oracle/oradata
# chown -R oracle /u01/app/oracle/oradata
# chmod 775 /u01/app/oracle/oradata

Recover文件的目录,是enable automated backup用recover文件(flash recover)的目录,需至少2.4GB:

# mkdir -p /u01/app/oracle/flash_recovery_area
# chown -R oracle /u01/app/oracle/flash_recovery_area
# chmod 775 /u01/app/oracle/flash_recovery_area


10。配置Oracle software owner用户(oracle)的环境变量:
以oracle用户身份登陆
$ su - oracle
$ vi .profile
#
# Copyright (c) 2001 by Sun Microsystems, Inc.
# All rights reserved.
#
# ident "@(#)local.profile      1.10    01/06/23 SMI"
stty istrip
PATH=/u01/app/oracle/product/10.2.0/db_1/bin:/usr/ccs/bin:/usr/jdk/instances/jdk1.5.0/bin:/usr/bin:/usr/sbin:/sbin:/usr/ucb:/etc:/usr/openwin/bin:/usr/sfw/bin:/opt/SUNWappserver/appserver/bin:.
export PATH

DISPLAY=127.0.0.1:0.0
JAVA_HOME=/usr/jdk/instances/jdk1.5.0
ORACLE_HOSTNAME=hpulib
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1
ORACLE_SID=ttdb
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
TEMP=/var/tmp
TMPDIR=/var/tmp
export DISPLAY JAVA_HOME ORACLE_HOSTNAME ORACLE_BASE ORACLE_HOME ORACLE_SID NLS_
LANGTEMP TMPDIR

---------------------------------------------------------------------------
-------------------------------------------------------------------------------
11.在oracle用户目录下,双击runInstaller文件,安装Oracle 10g Release 2:

正在启动 Oracle Universal Installer...

正在检查安装程序要求...

检查操作系统版本: 必须是5.8, 5.9 or 5.10。    实际为 5.10 通过

检查临时空间: 必须大于 250 MB。   实际为 28036 MB    通过
检查交换空间: 必须大于 500 MB。   实际为 23270 MB    通过
检查监视器: 监视器配置至少必须显示 256 种颜色。    实际为 16777216    通过

所有安装程序要求均已满足。

准备从以下地址启动 Oracle Universal Installer /var/tmp/OraInstall2005-12-30_04-50-22PM. 请稍候...$



期间需回答问题:
-------------------------------
基本安装:
Oracle主目录:/u01/app/oracle/product/10.2.0/db_1
安装类型:企业版(1.8GB)
Unix DBA组:oinstall
创建启动数据库(附加820MB)
全局数据库名:orcl
数据库口令(用于SYS,SYSTEM, SYSMAN, DBSNMP):
确认口令:
--------------------------------
输入产品清单目录:/u01/app/oracle/oraInventory
指定用户组名(产品清单):oinstall
--------------------------------
安装条件检查:
关于Solaris 8/9的内核参数没有配置(set noexec_user_stack=1)
如没设置,会警告

正在检查操作系统需求...
要求的结果: 5.8,5.9,5.10 之一
实际结果: 5.10
检查完成。此次检查的总体结果为: 通过

正在检查操作系统程序包需求...
要求的结果: SUNWbtool
实际结果: CCS tools bundled with SunOS(SUNWbtool)
检查完成。此次检查的总体结果为: 通过

检查内核参数
正在检查 BIT_SIZE=64; 已发现 BIT_SIZE=64。      通过
正在检查 noexec_user_stack=1; 已发现 noexec_user_stack=1。      通过
检查完成。此次检查的总体结果为: 通过

正在检查物理内存需求...
要求的结果: 922MB
实际结果: 8192MB
检查完成。此次检查的总体结果为: 通过

正在检查可用交换空间需求...
要求的结果: 8192MB
实际结果: 23146MB
检查完成。此次检查的总体结果为: 通过

正在验证 ORACLE_BASE 的位置 (如果已设置)...
检查完成。此次检查的总体结果为: 通过

正在检查 Oracle 主目录路径中的空格...
检查完成。此次检查的总体结果为: 通过

正在检查是否进行了正确的系统清除...
检查完成。此次检查的总体结果为: 通过

正在检查 Oracle 主目录的不兼容性...
实际结果: NEW_HOME
检查完成。此次检查的总体结果为: 通过

-----------------------------------------------------
选择创建数据库
--------------------------------------------
确定安装的Oracle 10g 10.2.0.1.0的选择概要
选择安装
-------------------------------------------
不退出安装界面,以root身份执行2个脚本:

# /u01/app/oracle/oraInventory/orainstRoot.sh
更改权限/u01/app/oracle/oraInventory 到 770.
更改组名/u01/app/oracle/oraInventory 到 oinstall.
脚本的执行已完成


# /u01/app/oracle/product/10.2.0/db_1/root.sh
Running Oracle10 root.sh script...

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1

Enter the full pathname of the local bin directory: :
Creating /usr/local/bin directory...
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /var/opt/oracle/oratab file...
Entries will be added to the /var/opt/oracle/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
eoffice-480:/u01/app/oracle/product/10.2.0/db_1 23 #
------------------------------------------
安装结束,选择退出:


12。装完后,启动Oracle Enterprise manager Database Control界面:

http://hpulib:1158/em











ORACLE数据库的启动与关闭

#------------------------------------------------------
# 启动Oracle监听和实例脚本
#------------------------------------------------------
login: oracle
Password:
Last login: Sat Aug 25 10:06:34 on console
Sun Microsystems Inc.   SunOS 5.10      Generic January 2005
$ bash
bash-3.00$ lsnrctl start
bash-3.00$ sqlplus
SQL*Plus: Release 10.2.0.1.0 - Production on Sat Aug 25 16:33:56 2007
Copyright (c) 1982, 2005, Oracle.All rights reserved.
Enter user-name: sys as sysdba
Enter password:
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
SQL> startup
SQL> quit
bash-3.00$

-----------------------------------------------------
# 启动Oracle监听和实例脚本
#------------------------------------------------------

bash-3.00$ sqlplus
SQL*Plus: Release 10.2.0.1.0 - Production on Sat Aug 25 16:33:56 2007
Copyright (c) 1982, 2005, Oracle.All rights reserved.
Enter user-name: sys as sysdba
Enter password:

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
SQL> shutdown immediate
SQL> quit
bash-3.00$ lsnrctl stop
bash-3.00$ exit
$ exit

zhujj116 发表于 2010-10-13 15:45

这个不错,呵呵

twinklezcf 发表于 2010-10-13 16:04

好久没有这么好的文档了..支持了

xinluxinchen 发表于 2011-01-20 19:39

为什么我按照以上步骤做了raid 1之后服务器老是重启?

michael1983 发表于 2011-01-20 19:58

楼上的,是什么机器?

xiongwcp 发表于 2011-01-23 14:06

好久没有这么好的文档了..支持了

happy_gaoxing 发表于 2011-01-23 17:59

RAID5,我还真没做过

raoyunjia 发表于 2014-04-29 20:03

通过solaris系统制作RAID1,我还是比较清楚。但是RAID5从来没有做过。对你帖子有点疑问
1. Metainit –afc 5 c1t2d0s6 c1t3d0s6 c1t4d0s6 c1t5d0s6这里afc后面的5 是什么含义?
2. 我记得RAID5并不是像RAID1一样。RAID1中,你把第2个磁盘的分区表调整为和第1个磁盘一样,我认可。但是为什么在RAID5制作中,使四块盘的分区大小相同的操作,我不理解,为什么要使4个盘分区一样?
Prtvtoc /dev/rdsk/c1t2d0s2 > fmthard –s - /dev/rdsk/c1t3d0s0
Prtvtoc /dev/rdsk/c1t2d0s2 > fmthard –s - /dev/rdsk/c1t4d0s0
Prtvtoc /dev/rdsk/c1t2d0s2 > fmthard –s - /dev/rdsk/c1t5d0s0

calcm 发表于 2014-04-30 11:04

本帖最后由 calcm 于 2014-04-30 11:20 编辑

回复 8# raoyunjia


    这也太能刨坟了,建议你看看man帮助。RAID5是要保持分区大小一致的。
还有原文中Metainit –afc 5 c1t2d0s6 c1t3d0s6 c1t4d0s6 c1t5d0s6是建db的,命令式metadb,他写错了
页: [1]
查看完整版本: solaris10安装oracle10g及raid制作整理