在Linux系统上面安装Oracle10g(1

2024-04-02 09:18

本文主要是介绍在Linux系统上面安装Oracle10g(1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关于在linux上面安装Oracle10g,网上资料很多,但很多说的比较简略,笔者根据自己的安装经历,详细记录说明,供大家参考。
 
用户和用户组创建
资料建议在安装oracle时创建两个 unix 用户组oinstall组、dba组和一个运行时的oracle 用户。具体命令如下
#addgroup oinstall
#addgroup dba
#useradd -g oinstall -G dba -p passwd -d /home/oracle -s /bin/bash oracle
在部分linux系统下面,上面的useradd命令创建用户后,用户不能登陆,提示密码错误,需要用root用户修改密码并允许用户登陆,如果不熟悉命令行操作,可以在图形界面进行设置,或者删除这个oracle用户,重新用useradd -g oinstall -G dba -d /home/oracle -s /bin/bash oracle命令创建。我个人习惯用useradd oracle建立以后再修改有关参数。如果oracle用户已经存在,可以直接利用 usermod -g oinstall -G dba oracle 命令设置组。
在很多资料上说到要创建nobody用户和nobody组,这个主要是Web服务器Apache运行所需要的,最好也检查一下是否有nobody用户和nobody组,如果没有则执行以下操作创建nobody用户和nobody组:
#addgroup nobody
#usermod -g nobody nobody
 
创建工作目录
有很多文档,建议您将oracle安装到一个独立的分区上面。比如:/opt。请您根据您的需要选择合适自己的安装目录。在本文档中,实际Oracle的安装目录为/opt/oracle/ora10g。确保有至少3.0G 的可用空间。
#mkdir -p /opt/oracle
#chown -R oracle:oinstall /opt/oracle
#chmod -R 775 /opt/oracle
上面的命令生成了oracle的运行时路径,并且授写权限给oracle用户,执行权限给dba组。部分资料上说到要创建/opt/oracle/ora10g目录并授权,实际安装证明没有必要,在安装时根据图形界面的提示,输入/opt/oracle/ora10g,系统会自动建立该目录并进行必要的授权。
 
设置内核参数
1、 修改sysctl.conf文件的内容
添加如下的行到/etc/sysctl.conf中:
kernel.shmmax = 3147483648
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
注:shmmax(最大共享内存)是一个很重要参数,根据您的机器的内存来设定。如果您设置不合适的话,在创建数据库到约86%的时候就会挂掉。
上面这些参数不同的文档有不同的参数,实际安装时,在oracle进行系统检测时会说明希望具体的参数值是什么,这时候只要按照oracle推荐参数值设置,一般都可以正常安装完毕,否则就会有些步骤失败,最后不能正确完成安装。
 
2、 修改limits.conf文件的内容
添加下面的行到/etc/security/limits.conf,以修改系统的资源限制:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
 
3、 让参数修改生效
修改了以上文件后,必须让其生效,可以重启系统,或者切换到root用户下用以下的方式改变内核运行参数:
#sysctl –p
在root用户执行sysctl命令时,有时会找不到该命令,可以去 /sbin目录下面执行该命令,有些系统在执行时必须用 ./sysctl –p 这种格式,可以尝试一下,只要显示运行成功即可,这时会显示上面在 /etc/sysctl.conf 文件输入的那些内容。
 
创建程序链接
#ln -s /usr/bin/awk /bin/awk
#ln -s /usr/bin/rpm /bin/rpm
#ln -s /usr/bin/basename /bin/basename
部分文档中说到要创建程序连接,但考虑到/usr/bin和/bin路径一般都设置在用户工作路径中,个人认为并没有必要。但实际证明,在oracle安装脚本文件中,很多命令是/bin/..形式的开头的,所以要检查这些命令是否能够全路径执行,否则就要创建有关的程序链接,不然部分脚本就不能正常完成。在RHEL4上可以不用创建,但在Ubuntu7.04上就必须创建。
 
安装其它配套软件包
在linux上安装oracle,下面这些软件包必须安装,具体可以利用rpm –q命令进行查询,查询必须输入软件数字版本号之前的全名称,如果没有就从安装盘中拷贝这些文件过来安装,所有一般要把全部rpm拷贝到一个软件目录,以便随时安装。
这些文件应该是oracle安装程序负责检查的,对没有安装的应该提醒用户安装,这可以说是oracle安装程序的一个缺陷。
在安装前可以用以下命令查询一个模块是否已经安装,或者删除一个模块:
rpm –q 模块名称 #查询一个模块是否已经安装
rpm –e 模块名称 #删除一个模块
如果没有安装可以,用以下命令安装或升级一个模块,要保证有关的文件拷贝已经存在:
rpm –ivh 模块文件名称 #安装一个模块
rpm –Uvh 模块文件名称 #升级一个模块
 
在RHEL3和RHEL4上安装oracle,下面这些软件包必须安装:
binutils-2.15.92.0.2-10.EL4
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
pdksh-5.2.14-30
sysstat-5.0.5-1
xscreensaver-4.18-5.rhel4.2
openmotif21-2.1.30-11.RHEL4.2(在安装Oracle demos时需要)
 
在SUSE Linux Enterprise Server 9.0上安装oracle,下面这些软件包必须安装:
binutils-2.15.90.0.1.1-32.5
gcc-3.3.3-43.24
gcc-c++-3.3.3-43.24
glibc-2.3.3-98.28
gnome-libs-1.4.1.7-671.1
libstdc++-3.3.3-43.24
libstdc++-devel-3.3.3-43.24
make-3.80-184.1
pdksh-5.2.14-780.1
sysstat-5.0.1-35.1
xscreensaver-4.16-2.6
 
设置Oracle用户环境
整个oracle环境的设置可以在安装完成以后再进行,很多资料上都是先设置再安装,实际上不做任何设置,直接安装也是可以正常安装完毕的,当然java部分的设置要在oracle安装前进行,否则不能找到正确的JRE环境,安装程序就不能启动。
环境设置需要以oracle用户或root登录,修改oracle用户的 .bash_profile文件和 .bashrc文件,并让用户变量生效,在安装时提供缺省的一些提示参数。对于不熟悉vi操作的用户,可以用gedit进行操作。
 
1、 修改oracle用户的.bash_profile文件的内容
修改~/.bash_profile 文件,去掉下列三行的注释符,使.bashrc 文件生效,不同的linux具体内容可能有所不同,但原理完全一致:
if [ -f ~/.bashrc ]; then
 . ~/.bashrc
fi
rhel、ununtu默认是没有注释的,其它系统用户需要检查,以确保取消对.bashrc的注释,使oracle用户登陆时 .bashrc文件生效。
 
2、 修改oracle用户的.bashrc文件的内容
添加下列行到~/.bashrc文件中:
# oracle 10g
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/ora10g
export ORACLE_OWNER=oracle
export ORACLE_SID=test10g
export ORACLE_TERM=xterm
#export LC_CTYPE=en_US.UTF-8
 
# Edit paths
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$OACLE_HOME/lib
有些时候也要将ORACLE_HOME/lib/stubs加入LD_LIBRARY_PATH路径,个人感觉oracle不知为什么要重复安装很多操作系统已经提供的库文件,经过文件比较,发觉$OACLE_HOME/lib目录下80%的文件,在系统lib目录里面都存在,在这里重复安装实在没有必要,应该只是将oracle特有的库文件保留在$OACLE_HOME/lib目录下就完全足够。
上面的LD_LIBRARY_PATH和PATH在设置时要确保将$LD_LIBRARY_PATH和$PATH放在路径最前面,否则有些$OACLE_HOME/lib目录下的文件会被优先寻找。例如GLIBC_2.4模块的linc.so.6文件在oracle所提供的和操作系统提供的就不一致,在执行很多命令时都不能正常运行。
事实上,经过实际测试,在安装时只设置export PATH=$PATH:$ORACLE_HOME/bin,不增加其它内容,并且不设置LD_LIBRARY_PATH也安装成功。
在安装时,正常情况下oracle会自动正确的显示中文,因为其安装包中有jdk存在。如果不能正确显示中文,则需要在上面的文件中增加export LC_CTYPE=en_US.UTF-8,有效系统中,要修改为export LANG=en_US.UTF-8,以采用英文方式进行安装。
在有些linux发行版中,中文方式有一些汉字不能正确显示,特别是拷贝进行的显示不正常,可以忽略不计,实际操作还是能正常完成操作。我个人认为这是jdk在字符替代时的bug,在一种字体不存在时,应该用相近的另一个字体代替。
 
建议将上面的内容保存到另一个文件 .bashrc_oracle_export中,然后在.bashrc 中使用下列3行调用 .bashrc_oracle_export文件:
if [ -f ~/.bashrc_oracle_export ]; then
 . ~/.bashrc_oracle_export
fi
大家可以根据各自的习惯进行设置。需要注意的是,ORACLE_BASE设置需要和前面创建的目录相符,ORACLE_HOME建议用ORACLE_BASE做前置,并且也要和前面创建的目录相符。ORACLE_SID 是默认数据库的名称,在本文中的默认的数据库名叫test10g,可以根据实际情况进行修改。
 
标识linux发行版本
Oracle10g只支持部分linux发行版,如果要在不支持的版本上安装,一般要指定一个版本表示文件,缺省的可以创建一个redhat的版本标识文件。该文件放置在 /etc目录之下,其文件名为redhat-release,具体文件内容如下:
Red Hat Linux release 4.0
这时系统安装程序就会检测linux版本为Red Hat Linux release 4.0,安装可以继续进行。
 
执行安装
在安装数据库系统的机器上,必须确保预留2倍内存大小的磁盘分区作为交换分区,一般建议预留一定的磁盘空间,用于交换分区的调整。现在硬盘都很大,预留1-2G完全没有问题。
在oracle安装时,必须确保以oracle用户启动X Window,不能以其它用户,否则安装会失败。
现在终于可以开始安装了。假设下载的安装文件位于/home/oracle下,名称为 10201_database_linux32.zip 解压后会生产一个database目录,里面有全部的安装文件,启动字符终端程序,进入该目录即可进行安装。具体安装命令如下:
./runInstaller
在oracle安装中主要有7个界面需要用户进行有关内容的输入,具体内容如下:
在第一个界面注意要正确的输入安装目录为上面设置的ORACLE_HOME变量所定义的安装主目录;并且要正确输入全局数据库名称,即ORACLE_OWNER所定义的名称,oracle不会自动带入ORACLE_OWNER所定义的名称,而是使用缺省的orcl作为全局数据库名称;还要输入正确的dba用户组,即上面建立的dba数据库管理组。
在第二个界面注意,要输入正确的oracle产品清单目录,应确保是ORACLE_BASE变量所指定的目录下面的oraInventory目录,并指定对该目录有写权限的用户组为上面建立的oinstall安装用户组。如果安装时提示目录已存在,可以删除重新安装或忽略提示继续安装。
第三个界面是系统检查界面,如果在系统检查时报错,一般会提示现在的配置值和希望的配置值,可以直接按照oracle推荐参数值设置,一般都可以正常安装完毕。
在第四个界面可以对安装的软件清单进行定制,选择合适的软件,对生产系统一般最好不要安装多余的模块,在选择完成后就可以坐下来喝杯茶,等待文件拷贝和基本数据库创建工作完成。 
在这个过程中,有些系统会显示有一个ORACLE_HOME/rdbms/lib/ins_rdbms.mk文件执行不成功,但忽略错误安装也可以正常完成安装工作,在RHEL5和Turbo Linux上就出现这个现象,但仍然可以安装并成功启动oracle数据库系统。
在第五个界面会显示全局数据库名称、系统标识符(SID)、数据库启动参数文件名称,并允许指定部分内置缺省用户的口令,如scott等测试账户。
在第六个界面安装程序会提示以root身份运行2个shell文件,分办是orainstRoot.sh文件和root.sh文件。这时直接在终端窗口中以root运行即可,然后继续完成安装。
在第七个界面中主要显示安装后启动的服务,这时会显示3个web方式J2EE应用的URL,具体内容如下:
iSQL*Plus操作URL:http://localhost:5560/isqlplus
iSQL*Plus DBA操作URL:http://localhost:5560/isqlplus/dba
Oracle企业管理器URL:http://localhost:1158/em
完成上面的全部工作后,oracle的安装就基本完成,oracle全部的服务均可以正常使用,但是这时oracle并不能随系统启动自动启动,这个问题是linux的设置问题,和oracle无关,其实oracle本身自带的脚本有些复杂,要自己修改才可以正常运行。具体在和其它数据库安装的文章比较中再详述。


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/mailtowangbin/archive/2007/11/08/1874324.aspx

这篇关于在Linux系统上面安装Oracle10g(1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/869586

相关文章

虚拟机Centos7安装MySQL数据库实践

《虚拟机Centos7安装MySQL数据库实践》用户分享在虚拟机安装MySQL的全过程及常见问题解决方案,包括处理GPG密钥、修改密码策略、配置远程访问权限及防火墙设置,最终通过关闭防火墙和停止Net... 目录安装mysql数据库下载wget命令下载MySQL安装包安装MySQL安装MySQL服务安装完成

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

JAVA中安装多个JDK的方法

《JAVA中安装多个JDK的方法》文章介绍了在Windows系统上安装多个JDK版本的方法,包括下载、安装路径修改、环境变量配置(JAVA_HOME和Path),并说明如何通过调整JAVA_HOME在... 首先去oracle官网下载好两个版本不同的jdk(需要登录Oracle账号,没有可以免费注册)下载完

Linux进程CPU绑定优化与实践过程

《Linux进程CPU绑定优化与实践过程》Linux支持进程绑定至特定CPU核心,通过sched_setaffinity系统调用和taskset工具实现,优化缓存效率与上下文切换,提升多核计算性能,适... 目录1. 多核处理器及并行计算概念1.1 多核处理器架构概述1.2 并行计算的含义及重要性1.3 并

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

SQL server数据库如何下载和安装

《SQLserver数据库如何下载和安装》本文指导如何下载安装SQLServer2022评估版及SSMS工具,涵盖安装配置、连接字符串设置、C#连接数据库方法和安全注意事项,如混合验证、参数化查... 目录第一步:打开官网下载对应文件第二步:程序安装配置第三部:安装工具SQL Server Manageme

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux下删除乱码文件和目录的实现方式

《Linux下删除乱码文件和目录的实现方式》:本文主要介绍Linux下删除乱码文件和目录的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下删除乱码文件和目录方法1方法2总结Linux下删除乱码文件和目录方法1使用ls -i命令找到文件或目录