各版本Linux下安装实验ORACLE+10gR2+ASM+升级到10.2.0.5+单实例
来源:互联网 发布:java执行sql脚本文件 编辑:程序博客网 时间:2024/05/14 11:18
各版本Linux下安装实验ORACLE+10gR2+ASM+升级到10.2.0.5+单实例
目录...2
操作系统版本选择...3
操作系统要求...4
1.RHELAS 4.4
2.RHEL5.8
数据库安装准备...12
操作系统配置...12
数据库环境变量配置...12
数据库安装...13
安装database软件...13
安装database 10.2.0.5补丁集(升级oracle软件)...13
安装数据库PSU(包含了CPU补丁)补丁...14
创建数据库监听进程...14
利用裸设备配置ASM磁盘组...15
创建数据库...16
附录...17
1.不重启识别新添加的磁盘...17
操作系统版本选择
1) RHEL 3.4 or later
2) RHEL AS 4
3) RHEL5
4) SLES9 with SP2 or later
5) SLES10 2.6.16.21-0.8 (or later)
6) SLES11 2.6.27.19-5 or greater
7) Asianux 2.0
操作系统要求
1.RHEL AS 4
所需要的磁盘空间
1.2G Database
1.5 to 3.5G Install
所需要的最小内存
1GB
所需要的SWAP大小
如果内存为1024MB to 2048Mb
then 1.5 times RAM
elseif RAM > 2048MB and < 8192MB
then match RAM
else RAM > 8192MB
then 0.75 times RAM
因此,根据内存大小来检测,使用命令free –m查看
tmp临时目录需求
400Mb
需要安装的软件包
binutils-2.15.92.0.2-10.EL4
binutils-2.15.92.0.2-13.0.0.0.2.x86_64
compat-db-4.1.25-9
control-center-2.8.0-12
gcc-3.4.3-9.EL4
gcc-c++-3.4.3-9.EL4
glibc-2.3.4-2
glibc-common-2.3.4-2
gnome-libs-1.4.1.2.90-44.1
libstdc++-3.4.3-9.EL4
libstdc++-devel-3.4.3-9.EL4
make-3.80-5
检查所需软件包是否已经安装:
# rpm -q binutils compat-db control-center gcc gcc-c++ glibc glibc-common gnome-libs libstdc++ libstdc++-devel make
安装所需软件包命令
# yum install -y binutils compat-db control-center gcc gcc-c++ glibc glibc-common gnome-libs libstdc++ libstdc++-devel make
1) 配置内核参数, 以下参数需大于或等于所列参考值(/etc/sysctl.conf
)
修改命令:
#cat> /etc/sysctl.conf << EOF
net.ipv4.ip_forward= 0
net.ipv4.conf.default.rp_filter= 1
net.ipv4.conf.default.accept_source_route= 0
kernel.sysrq= 0
kernel.core_uses_pid= 1
net.ipv4.tcp_syncookies= 1
kernel.msgmnb= 65536
kernel.msgmax= 65536
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 101365
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 2097152
net.core.rmem_max = 2097152
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
EOF
#sysctl-p
参数解释:
kernel.shmall
是指在任意时刻,系统中可以分配的所有共享内存段的总和的最大值,kernel.shmall>=
kernel.shmmax/pagesize ,此处为最小值的4倍
kernel.shmmax
最大共享内存设置为物理内存大小,也可以根据实际情况设置为其一半
kernel.shmmni = 4096
最小内存大小,也是pagesize大小,为4K,可以通过命令getconf PAGE_SIZE来查看
kernel.sem
等号右边四个分别是semmsl,semmns,semopm,semmni的值
file-max
该参数表示文件句柄的最大数量,用于指定每个进程可以打开的最大文件数量
net.ipv4.ip_local_port_range
表示用于向外连接的端口范围
net.core.rmem_default
表示接收套接字缓冲区大小
net.core.rmem_max
最大socket读buffer,可参考的优化值:873200
net.core.wmem_default
表示发送套接字缓冲区大小
net.core.wmem_max
最大socket写buffer,可参考的优化值:873200
2)
配置oracle帐户shell限制
a
)添加以下内容到/etc/security/limits.conf
修改命令:
#cat >>/etc/security/limits.conf << EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
最后输入EOF后回车即可。
参数解释:
oracle
设置需要被限制的用户名
soft
soft 指的是当前系统生效的设置值
hard
hard 表明系统中所能设定的最大值,soft 的限制不能比hard限制高
nproc
进程的最大数目
nofile
打开文件的最大数目
b)
添加以下内容到/etc/pam.d/login
修改命令:
cat >> /etc/pam.d/login<< EOF
session required /lib/security/pam_limits.so
EOF
解释:
要使 limits.conf 文件配置生效,必须要确保 pam_limits.so 文件被加入到启动文件中。查看/etc/pam.d/login 文件中有:
session required /lib/security/pam_limits.so
c
)添加以下内容到/etc/profile,
提高 Oracle 用户的 shell 限制
修改命令:
#
cat >> /etc/profile << EOF
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
EOF
使其生效
# source /etc/profile
2.RHEL5
所需要的磁盘空间
1.2G Database
1.5 to 3.5G Install
所需要的最小内存
1GB
所需要的SWAP大小
如果内存为1024MB to 2048Mb
then 1.5 times RAM
elseif RAM > 2048MB and < 8192MB
then match RAM
else RAM > 8192MB
then 0.75 times RAM
因此,根据内存大小来检测,使用命令free –m查看
tmp临时目录需求
400Mb
需要安装的软件包
compat-libstdc++-33-3.2.3-61.x86_64
elfutils-libelf-devel-0.137-3.el5
gcc-c++-4.1.2-55.el5
libstdc++-devel-4.1.2-55.el5
libstdc++-devel-4.1.2-55.el5
glibc-headers-2.5-123
glibc-devel-2.5-123
glibc-devel-2.5-123
libaio-devel-0.3.106-5
libgomp-4.4.7-1.el5
libgomp-4.4.7-1.el5
gcc-4.1.2-55.el5
libXp-1.0.0-8.1.el5
libXp-1.0.0-8.1.el5
sysstat-7.0.2-13.el5
检查所需软件包是否已经安装:
# rpm -q compat-libstdc++-33-3.2.3-61.x86_64 gcc-c++ libstdc++-devel glibc-headers glibc-devel libgomp gcc libXp sysstat
安装所需软件包命令
# yum install -y compat-libstdc++-33-3.2.3-61.x86_64 gcc-c++ libstdc++-devel glibc-headers glibc-devel libgomp gcc libXp sysstat
1)配置内核参数, 以下参数需大于或等于所列参考值(/etc/sysctl.conf
)
修改命令:
#cat >> /etc/sysctl.conf << EOF
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 101365
net.ipv4.ip_local_port_range = 900065500
net.core.rmem_default = 2097152
net.core.rmem_max = 2097152
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
EOF
#sysctl -p
参数解释:
kernel.shmall
是指在任意时刻,系统中可以分配的所有共享内存段的总和的最大值,kernel.shmall >= kernel.shmmax/pagesize ,此处为最小值的4倍
kernel.shmmax
#设置为物理内存大小,也可以根据实际情况设置为其一半
kernel.shmmni = 4096
最小内存大小,也是pagesize大小,为4K,可以通过命令getconf PAGE_SIZE来查看
kernel.sem
等号右边四个分别是semmsl,semmns,semopm,semmni的值
file-max
该参数表示文件句柄的最大数量,用于指定每个进程可以打开的最大文件数量
net.ipv4.ip_local_port_range
表示用于向外连接的端口范围
net.core.rmem_default
表示接收套接字缓冲区大小
net.core.rmem_max
最大socket读buffer,可参考的优化值:873200
net.core.wmem_default
表示发送套接字缓冲区大小
net.core.wmem_max
最大socket写buffer,可参考的优化值:873200
3) 配置oracle帐户shell限制
a)
添加以下内容到/etc/security/limits.conf
修改命令:
#cat >> /etc/security/limits.conf << EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
最后输入EOF后回车即可。
参数解释:
oracle
设置需要被限制的用户名
soft
soft 指的是当前系统生效的设置值
hard
hard 表明系统中所能设定的最大值,soft 的限制不能比hard限制高
nproc
进程的最大数目
nofile
打开文件的最大数目
b)
添加以下内容到/etc/pam.d/login
修改命令:
cat >> /etc/pam.d/login<< EOF
session required /lib/security/pam_limits.so
EOF
解释:
要使 limits.conf 文件配置生效,必须要确保 pam_limits.so 文件被加入到启动文件中。查看/etc/pam.d/login 文件中有:
session required /lib/security/pam_limits.so
c
)添加以下内容到/etc/profile,
提高 Oracle 用户的 shell 限制
修改命令:
#
cat >> /etc/profile << EOF
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
EOF
使其生效
# source /etc/profile
数据库安装准备
以下所涉及的主机名,IP地址,数据库名称等均为了让更直接的了解所做出的例子,在实际安装时再根据客户要求进行调整。
操作系统配置
1) 增加dba组和oracle用户
#groupadd dba
#useradd oracle -g dba
#passwd oracle(设置ORACLE用户密码)
2) 更改/etc/hosts文件,配制主机名等(以下假设主机名,网络IP地址等如下)
192.168.1.11 rhel4 rhel4.oracle.com
192.168.1.12 rhel5 rhel5.oracle.com
3) 建立软件安装目录,并将其owner和group设置为oracle和dba
# mkdir -p /app/oracle
# chown -R oracle:dba/app
4) 检查必要的包,检验一下包的安装情况
数据库环境变量配置
配置oracle环境变量
修改oracle用户$ORACLE_HOME的.bash_profile文件,增加如下内容:
export ORACLE_BASE=/app/oracle
exportORACLE_HOME=$ORACLE_BASE/product/10.2/db_1
export ORACLE_SID=****
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
exportPATH=$ORACLE_HOME/bin:$PATH
数据库安装
安装database软件
下载并解压10201_database_linux_x86_64.cpio.gz文件:
(1)$gunzip-v 10201_database_linux_x86_64.cpio.gz
(2)$cpio -idmv < 10201_database_linux_x86_64.cpio
$cd database/
运行$./runInstaller
屏幕名称
回应
欢迎使用
单击 下一步
选择安装类型
选择 定制
指定主目录详细信息
按如下所示设置名称和路径:
名称: OraDb10g_home1
路径: /app/oracle/product/10.2/db_1
可用产品组件
选择相关组件
产品特定的先决性检查
检查通过
特权操作系统组
OSDBA组:dba
OSOPER组: dba
创建数据库
仅安装数据库软件
概要
选择安装
执行配置脚本
安装完成时,将提示您运行 root.sh 脚本。需要记住的是,要依次执行脚本。
安装结束
安装结束时,退出 OUI。
安装database10.2.0.5补丁集(升级oracle软件)
下载并(oracle用户)解压p8202632_10205_Linux-x86-64.zip
$ unzip p8202632_10205_Linux-x86-64.zip
进入解压目录:
$ cdDisk1/
$ ./runInstaller
选定database软件安装的目录($ORACLE_HOME)
安装步骤只需确定即可
屏幕名称
回应
欢迎使用
单击 下一步
指定主目录详细信息
按如下所示设置名称和路径:
名称: OraDb10g_home1
路径: /app/oracle/product/10.2/db_1
产品特定的先决性检查
检查通过,如果没有满足的需要修改后再重新检验
安装过程
和一般安装oracle软件大同小异,等待安装完成即可
执行配置脚本
以root用户执行脚本(如果有覆盖的情况出现,覆盖即可)
安装结束
安装结束时,退出 OUI,oracle软件的升级成功。
安装数据库PSU(包含了CPU补丁)补丁
1.先安装高版本的OPatch工具:
$ cd$ORACLE_HOME
$ tar -zcvfopatch_10.2.0.4.9.tar OPatch/
从MOS下载针对10g的最新版本OPatch,上传到目录中
解压下载好的OPatch包到ORACLE_HOME目录下:
$ unzipp6880880_102000_Linux-x86-64.zip -d $ORACLE_HOME
重新查看OPatch版本:
$ /app/oracle/product/10.2/db_1/OPatch/opatchversion
2.打PSU补丁
下载并解压p16619894_10205_Linux-x86-64.zip
$ unzipp16619894_10205_Linux-x86-64.zip
停止数据库实例、ASM实例及监听器等
$ cd 16619894/
$ /app/oracle/product/10.2/db_1/OPatch/opatchapply
创建数据库监听进程
运行netca
屏幕名称
回应
欢迎使用
选择 监听程序配置
监听程序配置,监听程序
后续屏幕现在与其他常规监听器配置的相似。您只需接受后续 6 个屏幕的默认参数即可:
选择:添加
监听程序名:LISTENER
选定的协议:TCP
端口号:1521
是否配置另外一个:否
监听程序配置完成:下一步
您将返回到此“欢迎使用”屏幕。
欢迎使用
选择 命名方法配置
命名方法配置,请选择命名方法
后续屏幕是:
选择的命名方法: 本地命名
命名方法配置完成:下一步
您将返回到此“欢迎使用”屏幕。
欢迎使用
选择 完成,退出NETCA
利用裸设备配置ASM磁盘组
1) 在redhat5中,配置裸设备(根据实际环境配置)
分区:fdisk /dev/sdb(多个盘依次执行)
2) 分区完毕后添加裸设备的配置:
# vi /etc/udev/rules.d/60-raw.rules 添加下面的内容到文件中
# 加载裸设备,多个依次可加
ACTION=="add",KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", KERNEL=="sdc1",RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add", KERNEL=="sdd1",RUN+="/bin/raw /dev/raw/raw3 %N"
#设置raw[1-4]设备的用户和权限信息
ACTION=="add",KERNEL=="raw[1-4]",OWNER="oracle",GROUP="dba",MODE="660
3) 重启服务
#start_udev
4)查看raw设备
#ls -lrt /dev/raw或者 raw –aq
4) 执行脚本添加集群同步服务CSS:
#/app/oracle/product/10.2.0/db_1/bin/localconfigadd
5) 执行dbca命令
选择最后一个选项“Configure Automatic Storage Management”,然后进行磁盘组的配置
冗余机制有normal :两个磁盘组,hight:三个磁盘组,external:外部冗余:一个磁盘组
6) 配置完成后,访问实例,验证ASM是否配置成功
$ export ORACLE_SID=+ASM
$ sqlplus / as sysdba
SQL> select instance_name from v$instance;
INSTANCE_NAME
------------------------------------------------
+ASM
查看ASM磁盘组
SQL> desc v$asm_diskgroup
会看到该视图的信息。
创建数据库
启动dbca
屏幕名称
回应
欢迎使用
选择 create database
操作
选择 创建数据库
数据库模版
选择 一般用途
数据库标识
选择:
全局数据库名:orcl
SID 前缀: orcl
管理选项
保留此处的默认选项,即“使用 Enterprise Manager 配置数据库”。
数据库身份证明
选择 所有帐户使用同一口令oracle。输入口令(两次)并确保此口令不是以数字开头。
存储选项
选择 ASM。
数据库文件所在位置
选择使用默认值,即使用 Oracle 管理的文件
恢复配置
这里没有选择 指定快速恢复区
选择 启用归档,同时配置归档路径
数据库内容
选择 默认值
初始化参数
内存:选择 典型,百分比为 40%
调整大小:进程 选择 800
字符集:数据库字符集选择 默认的ZHS16GBK,国家字符集选择 默认的AL16UTF16
连接模式:选择 专用服务器模式
数据库存储
修改所有的存储路径
创建选项
保留默认选项创建数据库,并单击 完成 以启动数据库创建过程。
在“概要”屏幕上单击 确定。
创建数据库结束
在数据库创建结束时,退出 DBCA。
退出 DBCA 时,将弹出另一对话框,指示它正在启动所有 Oracle 实例以及服务。这可能需要几分钟的时间才能完成。完成时,所有窗口和对话框将关闭。
执行modified.sql、utlrp.sql脚本
cd$ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT/ AS SYSDBA
SQL> STARTUP
SQL>@catbundle.sql psu apply #加载modified.sql到数据库中
SQL>@utlrp.sql #重新编译数据库不可用对象
SQL> QUIT
附录
1.不重启识别新添加的磁盘
确定主机总线号,磁盘是有总线连接着的
# ls/sys/class/scsi_host/
host0 host1 host2
重新扫描SCSI总线来添加设备,因为添加的是SCSI磁盘,所以扫描的是SCSI总线
# echo "- --" > /sys/class/scsi_host/host1/scan
验证是否识别成功
# fdisk –l
- 各版本Linux下安装实验ORACLE+10gR2+ASM+升级到10.2.0.5+单实例
- oracle 10gR2 RAC+ASM恢复到单实例
- 安装oracle 11gR2单实例+ASM
- 11GR2单实例安装(ASM)
- 11gR2单实例安装ASM
- 安装11gR2 ASM单实例步骤
- linux-5.5 下oracle-10gR2 安装实验笔记
- Oracle 11gR2 ASM 单实例安装 DBCA 建库报错: ORA-12547: TNS:lost contact
- oracle 10gR2 创建ASM实例
- oracle 10gR2 删除asm实例
- oracle 11gR2 单实例安装
- Linux 平台 Oracle 单实例 从10.2.0.1 升级到10.2.0.5.4 步骤
- Linux 平台 Oracle 单实例 从10.2.0.1 升级到10.2.0.5.4 步骤
- Linux 平台 Oracle 单实例 从10.2.0.1 升级到10.2.0.5.4 步骤
- Linux 平台 Oracle 单实例 从10.2.0.1 升级到10.2.0.5.4 步骤
- oracle 10.2.0.4 rac(ASM) 恢复到单实例文件系统
- Oracle ASM+11gR2安装
- RHEL6+oracle11gR2+ASM+升级到11.2.0.4.8+单实例安装
- 青春
- 排序算法——希尔排序
- 如何创建数据库表之间的关联关系
- cdev_add alloc_chrdev_region 系列函数
- Java 的 ArrayList 的底层数据结构
- 各版本Linux下安装实验ORACLE+10gR2+ASM+升级到10.2.0.5+单实例
- 在Linux上安装Memcached服务【启动Memcached服务可能报错:libiconv.so.2: cannot open shared object file详情见文章】
- POJ 1860 Currency Exchange(Bellman-Ford)
- 第8周 项目 3 - 顺序串算法
- CentOS7伪分布式下 hive安装过程中遇到的问题及解决办法
- 第八周项目4字符串加密
- mysql表and字段注释添加
- TCP协议中的三次握手和四次挥手(图解)
- linux命令---top命令