Oracle11gR2 在 Linux CentOS 5.3,RHEL 5.4 上的安装 <转
Oracle11gR2 在 Linux CentOS 5.3,RHEL 5.4 上的安装 作者: Zinc Chen 邮箱: zinc.chen@live.cn 一. 安装操作系统 操作平台 : VMWARE 7.0.0 build-197124+CentOS-5.4-x86_64-bin-DVD.iso 数据库版本 : Oracle11gR2 针对 32/64 位 Linux ,请选用对应版本的
Oracle11gR2 在 Linux CentOS 5.3,RHEL 5.4 上的安装
作者: Zinc Chen 邮箱: zinc.chen@live.cn
一. 安装操作系统
操作平台 :
VMWARE 7.0.0 build-197124+CentOS-5.4-x86_64-bin-DVD.iso
数据库版本 :
Oracle11gR2 针对 32/64 位 Linux ,请选用对应版本的 Oracle
下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-linx8664soft-100572.html
http://download.oracle.com/otn/linux/oracle11g/R2/linux.x64_11gR2_database_1of2.zip
http://download.oracle.com/otn/linux/oracle11g/R2/linux.x64_11gR2_database_2of2.zip
辅助软件 :
SecureCRT( 用于远程执行命令 ) 、 winscp( 用于远程文件传输 )
要求内存不小于 1G ; / 更新:测试机不满足要求,但是在安装的时候可以选择忽略
在内存小于 4G , SWAP 应该是内存的 1.5 倍;
内存 4 到 16G , SWAP 和内存相同大小即可
内存超过 16G , SWAP 是 16G ;
( 我的虚拟机物理内存设置为 2G , SWAP 设置为 3G) ;
由于 11gR2 对于共享内存要求变大,因此系统共享内存应该大于 512* 进程数;
如果共享内存不足的话,会造成 ORA-845 或 ORA-1078 错误;
要求 /tmp 分区不少于 400M ,安装目录应大于 4G ;
4. 我的虚拟机配置情况:
宿主配置为四核心 Q9550, 内存 8G DDR2 800 的,主板 Intel G45 ,硬盘采用 320G*3 前段组 RAID0, 后段组 RAID5 ,操作系统为 Vista 64bit SP2
虚拟操作系统配置: CPU 双核心,内存 2048G ,硬盘 160G
硬盘分区情况如下:
SWAP 3072M
/boot 300M
/ 15G
/ora 15G
/oradata 90G
/orabak 30G
/更新:实际使用中,先划分前面的分区,然后根据硬盘剩余对后面的空间进行划分,建议采用 LVM2 对分区进行管理,这样可以在线调整分区大小,灵活性比较高。
5. 默认服务器开启了 SSH ,在配置防火墙的时候注意检查一下,这样可以使用 SecureCRT 连接进入控制,使用 FileZilla 传输文件;
6. 安装系统的时候,可以直接选择依赖包,以解决 Oracle 安装的时候依赖关系,当然也可以在安装完基本系统以后再补充安装依赖包,建议采用后者,以避免操作太多导致混乱;
7. VM 中安装的话,需要安装 VM 相关的驱动 ( 点击 VM->Install VMware Tools) :
进入光盘路径: mount /media/cdrom /dev/cdrom
cd /media/cdrom
安装 VMwareTools : rpm –ivh VMwareTools-7.8.6-185404.i386.rpm
初始化图形界面: /usr/bin/vmware-config-tools.pl
重新启动 X : ctrl+alt+backspace
弹出 VM 的驱动光盘,挂载默认的系统盘,后面要用
二.配置系统,准备安装
检查硬件情况 ( 虚拟机情况 ) :
[root@ora ~]# grep "model name" /proc/cpuinfo model name : Intel(R) Core(TM)2 Quad CPU Q9550 @ 2.83GHz model name : Intel(R) Core(TM)2 Quad CPU Q9550 @ 2.83GHz [root@ora ~]# grep MemTotal /proc/meminfo MemTotal: 2075560 kB [root@ora ~]# grep SwapTotal /proc/meminfo SwapTotal: 3113340 kB [root@ora ~]# free total used free shared buffers cached Mem: 2075560 1000572 1074988 0 59336 814732 -/+ buffers/cache: 126504 1949056 Swap: 3113340 0 3113340 [root@ora ~]# df -k /dev/shm 文件系统 1K- 块 已用 可用 已用 % 挂载点 tmpfs 1037780 0 1037780 0% /dev/shm [root@ora ~]# df -k /tmp 文件系统 1K- 块 已用 可用 已用 % 挂载点 /dev/sda5 9920592 3165436 6243088 34% / |
检查软件情况 (CentOS 5.3 的情况, RHEL 无需改动 ) :
[root@ora ~]# cat /proc/version Linux version 2.6.18-128.el5 (mockbuild@builder16.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)) #1 SMP Wed Jan 21 10:44:23 EST 2009 [root@ora ~]# uname -a Linux ora.libcms.net 2.6.18-128.el5 #1 SMP Wed Jan 21 10:44:23 EST 2009 i686 i686 i386 GNU/Linux [root@ora ~]# more /etc/issue CentOS release 5.3 (Final) Kernel \r on an \m [root@ora ~]# cat /etc/hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 ora.libcms.net ora localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6 |
将 CentOS 系统伪装成 RedHat
Vi /etc/redhat-release 修改为 : Red Hat Enterprise Linux Server release 5.3 (Tikanga) |
#cat /proc/partitions 查看现在分区
#cd /mnt 进入挂载目录
#mkdir cdrom 创建光盘挂载区
#mkdir usb 创建U盘挂载区
#mount /dev/sdb /mnt/usb 例如将sdb设备挂载到/mnt/usb目录下
#umount /mnt/usb 使用完毕后将设备卸载
linux的硬件设备在/dev目录下,光驱也是其中。
/dev/cdrom表示光驱,挂载光驱的方法如下(以root身份):
mkdir /mnt/cdrom
mount -t auto -o ro /dev/cdrom
/mnt/cdrom #不加参数也能自动挂上。
以下是操作的屏幕复制内容:
linux@cdyemail:/$ ls /mnt #查看mnt下面有没有cdrom目录 ,这个是随意的目录。
cdrom iso usb winc wind
linux@cdyemail:/$ mount /dev/cdrom /mnt/cdrom #挂载发现没有权限
mount: 只有 root 才能进行此操作
linux@cdyemail:/$ su #切换到root用户,也可以用sudo 来取得root权限。
密码:
root@cdyemail:/# mount -t auto -o ro /dev/cdrom /mnt/cdrom #-t auto类型自动, -o ro只读模式
root@cdyemail:/# ls -l /mnt/cdrom #查看光盘内容
root@cdyemail:/# umount /mnt/cdrom #删除挂载的光驱
root@cdyemail:/# eject /dev/cdrom #弹出光驱
root@cdyemail:/#
附:
对于iso镜像文件可以进行挂载
mount -t iso9660 -o loop iso文件 /mnt/iso
你想安装:gcc-4.1.2-46.SEL5_4.2.i386.rpm的软件包,需要先安装相关的软件包,这都有依赖性。 如果,你只想安装gcc-4.1.2-46.SEL5_4.2.i386的软件包的话,就多加一个 --nodeps 的参数就好了
如:rpm -ivh --nodeps gcc-4.1.2-46.SEL5_4.2.i386.rpm
这就无需依赖其他的安装包了
rpm -ivh gcc-c++-4.1.2-46.el5.x86_64.rpm --nodeps --force
安装系统的依赖包 ( 注意对应版本 , 安装系统的时候如果已经处理,这里就无需要安装了 )
// 下面是 redhat 5.4 64bit 版本的命令 cd /media/cdrom cd Server rpm -ivh binutils-2.17.50.0.6-12.el5.x86_64.rpm rpm -ivh compat-libstdc++-33-3.2.3-61.x86_64.rpm rpm -ivh compat-libstdc++-33-3.2.3-61.i386.rpm rpm -Uvh elfutils-libelf-devel-static-0.137-3.el5.x86_64.rpm --nodeps rpm -ivh elfutils-libelf-devel-0.137-3.el5.x86_64.rpm rpm -ivh elfutils-libelf-0.137-3.el5.x86_64.rpm rpm -Uvh elfutils-devel-static-0.137-3.el5.x86_64.rpm --nodeps rpm -ivh elfutils-libs-0.137-3.el5.x86_64.rpm rpm -ivh elfutils-devel-0.137-3.el5.x86_64.rpm rpm -ivh glibc-headers-2.5-42.x86_64.rpm rpm -ivh glibc-2.5-42.i686.rpm rpm -ivh glibc-devel-2.5-42.i386.rpm rpm -ivh glibc-2.5-42.x86_64.rpm rpm -ivh glibc-common-2.5-42.x86_64.rpm rpm -ivh glibc-devel-2.5-42.x86_64.rpm rpm -ivh gcc-4.1.2-46.el5.x86_64.rpm rpm -ivh gcc-c++-4.1.2-46.el5.x86_64.rpm rpm -ivh kernel-headers-2.6.18-164.el5.x86_64.rpm rpm -ivh ksh-20080202-14.el5.x86_64.rpm rpm -ivh libaio-0.3.106-3.2.i386.rpm rpm -ivh libaio-0.3.106-3.2.x86_64.rpm rpm -ivh libaio-devel-0.3.106-3.2.i386.rpm rpm -ivh libaio-devel-0.3.106-3.2.x86_64.rpm rpm -ivh libgcc-4.1.2-46.el5.i386.rpm rpm -ivh libgcc-4.1.2-46.el5.x86_64.rpm rpm -ivh libgomp-4.4.0-6.el5.x86_64.rpm rpm -ivh libstdc++-4.1.2-46.el5.x86_64.rpm rpm -ivh libstdc++-devel-4.1.2-46.el5.x86_64.rpm rpm -ivh make-3.81-3.el5.x86_64.rpm rpm -ivh sysstat-7.0.2-3.el5.x86_64.rpm rpm -ivh unixODBC-2.2.11-7.1.i386.rpm rpm -ivh unixODBC-devel-2.2.11-7.1.i386.rpm rpm -ivh unixODBC-2.2.11-7.1.x86_64.rpm rpm -ivh unixODBC-devel-2.2.11-7.1.x86_64.rpm |
增加必须要的用户组与用户
[root@ora ~]# groupadd oinstall [root@ora ~]# groupadd dba [root@ora ~]# adduser -g oinstall -G dba oracle [root@ora ~]# 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. [root@ora ~]# df -h [root@ora ~]# mkdir -p /ora/app/oracle/product/ [root@ora ~]# chown -R oracle:oinstall /ora [root@ora ~]# chmod -R 775 /ora [root@ora ~]# chown -R oracle:oinstall /oradata [root@ora ~]# chmod -R 775 /oradata [root@ora ~]# chown -R oracle:oinstall /orabak [root@ora ~]# chmod -R 775 /orabak |
修改内核参数
[root@ora ~]#vi /etc/sysctl.conf kernel.shmmni = 4096 # semaphores: semmsl, semmns, semopm, semmni kernel.sem = 250 32000 100 128 fs.file-max = 6815744 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 fs.aio-max-nr= 1048576 [root@ora ~]#/sbin/sysctl -p [root@ora ~]#/sbin/sysctl -a |
为 oracle 用户设置 Shell 限制
[root@ora ~]# vi /etc/security/limits.conf 增加: oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 vi /etc/pam.d/login file 增加: session required pam_limits.so\ vi /etc/profile 增加: if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi vi /etc/csh.login 增加: if ( $USER == "oracle" ) then limit maxproc 16384 limit descriptors 65536 endif |
修改用户的启动脚本
su oracle echo $SHELL cd /home/oracle vi .bash_profile 增加如下内容: ORACLE_BASE=/ora/app/oracle ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 ORACLE_HOME_LISTNER=$ORACLE_BASE/product/11.2.0/dbhome_1 ORACLE_SID=orcl PATH=$ORACLE_HOME/bin:$PATH export ORACLE_BASE ORACLE_HOME ORACLE_HOME_LISTNER ORACLE_SID PATH ORACLE_TERM=xterm export ORACLE_TERM TNS_ADMIN=$ORACLE_HOME/network/admin export TNS_ADMIN #set the user languages #NLS_LANG="SIMPLIFIED CHINESE_CHINA".GBK #LC_CTYPE=zh_CN.GBK #LC_ALL=zh_CN.UTF8 #LANG=zh_CN.GBK LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib CLASSPATH=$ORACLE_HOME/jdk/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib export NLS_LANG LC_CTYPE LC_ALL LANG LD_LIBRARY_PATH CLASSPATH umask 022 载入启动脚本: source .bash_profile |
上传 oracle 的安装文件到服务器,采用 SFTP 协议传输。
以 oracle 用户上传之 /ora 文件夹 [oracle@ora ora]$ unzip linux_11gR2_database_1of2.zip [oracle@ora ora]$ unzip linux_11gR2_database_2of2.zip |
二.安装 Oracle11gR2
cd /ora/database
./runInstaller 开始安装 .
选择高级安装 , 进行自定义安装
在 CentOS 的安装中 , 提示 pdksh 包找不到是正常现象, redhat5 以上的版本已经更名 pdksh 为 ksh 包了,前面我们已经安装了,所以可以忽略
在 CentOS 的安装中 , 会出现一个关于 oraInventory 目录的警告 , 点击 OK, 不用理会继续即可 , 在随后的窗口中将 /oraInventory 修改为 /ora/app/oraInventory
随后参数都是默认 , 在安装中会弹出一个要求执行
/ora/app/oraInventory/oraIinstRoot.sh 和 /ora/app/oracle/product/11.2.0/dbhome_1/root.sh 的提示框 , 可在命令行中 , 以 ROOT 用户执行这两个文件 , 进入 End of installtion 窗口 , 安装结束 .
[oracle@test database]$ ./runInstaller
正在启动 Oracle Universal Installer...
检查临时空间: 必须大于 120 MB。 实际为
117329 MB 通过
检查交换空间: 必须大于 150 MB。 实际为 1983 MB 通过
检查监视器: 监视器配置至少必须显示 256 种颜色
>>> 无法使用命令 /usr/bin/xdpyinfo 自动检查显示器颜色。请检查是否设置了 DISPLAY 变量。 未通过
未通过某些要求检查。必须先满足这些要求,
然后才能继续安装,那时将重新检查这些要求。
是否继续? (y/n) [n] y
原因:
当时是通过vnc登录的root,然后通过root切换到oracle用户的,注销通过oracle登录就可以!
三.连接测试
如果启动有问题lsnrctl: error while loading shared libraries: /home/oracle/app/oracle/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1: cannot restore segment prot after reloc: Permission denied
执行
semanage fcontext -a -t textrel_shlib_t
/ora/app/oracle/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1
restorecon -R -v
/ora/app/oracle/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1
启动监听器: lsnrctl start
登陆: sqlplus "/as sysdba"
启动数据库: startup
关闭数据库: shutdown
关闭监听器: lsnrctl stop
启动 EM : emctl start dbconsole
关闭 EM : emctl stop dbconsole
启动 iSQL*Plus : isqlplusctl start
关闭 iSQL*Plus : isqlplusctl stop
如果希望让服务器自动启动,那么需要修改 /etc/oratab 中:
orcl:/ora/app/oracle/product/11.2.0/dbhome_1:Y
四.添加系统服务
作为 root 用户创建一个叫做 /etc/init.d/dbora 的文件,包括下面的内容:
#!/bin/sh # description: Oracle auto start-stop script. # chkconfig: - 20 80 # # Set ORA_HOME to be equivalent to the $ORACLE_HOME # from which you wish to execute dbstart and dbshut; # # Set ORA_OWNER to the user id of the owner of the # Oracle database in ORA_HOME. ORA_HOME=/ora/app/oracle/product/11.2.0/dbhome_1
ORA_OWNER=oracle if [ ! -f $ORA_HOME/bin/dbstart ] then echo "Oracle startup: cannot start" exit fi case "$1" in 'start') # Start the Oracle databases: # The following command assumes that the oracle login # will not prompt the user for any values su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart $ORA_HOME" su - $ORA_OWNER -c "emctl start dbconsole" ;; 'stop') # Stop the Oracle databases: # The following command assumes that the oracle login # will not prompt the user for any values su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut $ORA_HOME" su - $ORA_OWNER -c "emctl stop dbconsole" ;; 'restart') $0 stop $0 start ;; esac |
修改权限为 750
chmod 750 /etc/init.d/dbora |
设置服务自动启动
chkconfig --level 345 dbora on |
如果你遇上: cannot restore segment prot after reloc: Permission denied, 应该是 SELinux 的问题,可以考虑把它关闭。
四.添加自动备份服务
作为 root 用户创建一个叫做 /orabak/backup.sh 的文件,包括下面的内容:
#!/bin/bash
source /home/oracle/.bash_profile # 初始化 Oracle 数据库
rq=$(date +%Y%m%d) # 把当天日期赋予变量 rq
rm /orabak/backup/full_$rq.dmp # 清空旧文件
exp system/springland file=/orabak/backup/full_$rq.dmp log=/orabak/backup/full_$rq.log full=y compress=y |
修改权限为 750
chmod 750 /orabak/backup.sh |
设置 Cron 计划自动执行
nano /orabak/backup.txt 30 23 * * * /orabak/backup.sh crontab –u root /orabak/backup.txt crontab –l /etc/init.d/crond restart |

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제









DeepSeek은 웹 버전과 공식 웹 사이트의 두 가지 액세스 방법을 제공하는 강력한 지능형 검색 및 분석 도구입니다. 웹 버전은 편리하고 효율적이며 설치없이 사용할 수 있습니다. 개인이든 회사 사용자이든, DeepSeek를 통해 대규모 데이터를 쉽게 얻고 분석하여 업무 효율성을 향상시키고 의사 결정을 지원하며 혁신을 촉진 할 수 있습니다.

Docker 컨테이너를 사용하여 사전 컴파일 된 패키지 (Windows 사용자의 경우)를 사용하여 소스 (숙련 된 개발자)를 컴파일하는 것을 포함하여 DeepSeek를 설치하는 방법에는 여러 가지가 있습니다. 공식 문서는 신중하게 문서를 작성하고 불필요한 문제를 피하기 위해 완전히 준비합니다.

Gate.io는 사용자가 설치 패키지를 다운로드하여 장치에 설치하여 사용할 수있는 인기있는 cryptocurrency 교환입니다. 설치 패키지를 얻는 단계는 다음과 같습니다. Gate.io의 공식 웹 사이트를 방문하고 "다운로드"를 클릭하고 해당 운영 체제 (Windows, Mac 또는 Linux)를 선택하고 컴퓨터에 설치 패키지를 다운로드하십시오. 설치 중에 항 바이러스 소프트웨어 또는 방화벽을 일시적으로 비활성화하여 원활한 설치를 보장하는 것이 좋습니다. 완료 후 사용자는 GATE.IO 계정을 만들려면 사용을 시작해야합니다.

Linux 터미널에서 Python 버전을 보려고 할 때 Linux 터미널에서 Python 버전을 볼 때 권한 문제에 대한 솔루션 ... Python을 입력하십시오 ...

Bitget은 스팟 거래, 계약 거래 및 파생 상품을 포함한 다양한 거래 서비스를 제공하는 Cryptocurrency 교환입니다. 2018 년에 설립 된이 교환은 싱가포르에 본사를두고 있으며 사용자에게 안전하고 안정적인 거래 플랫폼을 제공하기 위해 노력하고 있습니다. Bitget은 BTC/USDT, ETH/USDT 및 XRP/USDT를 포함한 다양한 거래 쌍을 제공합니다. 또한 Exchange는 보안 및 유동성으로 유명하며 프리미엄 주문 유형, 레버리지 거래 및 24/7 고객 지원과 같은 다양한 기능을 제공합니다.

세계 최고의 디지털 자산 거래소 인 Ouyi Okx는 이제 안전하고 편리한 거래 경험을 제공하기 위해 공식 설치 패키지를 시작했습니다. OUYI의 OKX 설치 패키지는 브라우저를 통해 액세스 할 필요가 없습니다. 설치 프로세스는 간단하고 이해하기 쉽습니다. 사용자는 최신 버전의 설치 패키지를 다운로드하고 설치를 단계별로 완료하면됩니다.

OKX라고도하는 Ouyi는 세계 최고의 암호 화폐 거래 플랫폼입니다. 이 기사는 OUYI의 공식 설치 패키지 용 다운로드 포털을 제공하여 사용자가 다른 장치에 OUYI 클라이언트를 설치할 수 있도록합니다. 이 설치 패키지는 Windows, Mac, Android 및 iOS 시스템을 지원합니다. 설치가 완료되면 사용자는 OUYI 계정에 등록하거나 로그인하고 암호 화폐 거래를 시작하며 플랫폼에서 제공하는 기타 서비스를 즐길 수 있습니다.

시스템이 다시 시작된 후 UnixSocket의 권한을 자동으로 설정하는 방법. 시스템이 다시 시작될 때마다 UnixSocket의 권한을 수정하려면 다음 명령을 실행해야합니다.
