- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章在Linux下安装Oracle由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
在Linux下安装Oracle。由于Oracle自身比较复杂,在Linux环境下安装要涉及很多方面的因素。本文分两个方面介绍在Linux RedHat 6.0环境下Oracle 8.0.5的安装.
1、调整Linux核心与环境 。
在安装Oracle之前,应该先对RedHat 6.0的Linux内核与环境进行调整,要做以下工作:
1、在完成RedHat 6.0 Linux的缺省安装后,需要安装以下软件包.
kernel -source -2.2.5 -15.1386.rpm 。
Linux 2.2.5内核源码,主要用于修改核心参数后重生成内核.
tcl -8.0.4 -29.1386.rpm 。
该软件包是安装Oracle Intelligent Agent包所必需的.
Compat -binutils -5.2-2.9.0.23.1.1386.rpm 。
Compat -glibc -5.2-2.0.7.2.1386.rpm 。
Compat -egcs -5.2 -1.0.3a.1.1381.rpm 。
Compat -egcs -C++ -5.2 -1/0/3a.1.1386.rpm 。
Compat -libs -5.2 -1.1386.rpm 。
2、调整Linux核心参数 。
根据Oracle 8.0.5对Linux核心内存参数的要求,可对Linux核心参数进行调整。编辑修改/usr/src/linux/include/asm/shmparam.h文件,修改SHMMAX选项。Oracle推荐使用4294967295,这意味着系统的共享内存达到4G,这是不合适的。一般,SHMMAX的设置可略大于本机内存配置.
事实上,缺省安装的RedHat 6.0核心运行Oracle 8.0.5是没有问题的,一般情况下可不对这些参数作出调整.
如确需调整,在完成修改后,要按文档要求重生成核心,并用lilo命令指定用新的核心进行引导.
3、增加用户,创建安装目录 。
Oracle安装与运行需要创建一个属于dba组的Oracle用户,同时要创建一个属主为Oracle用户的安装点目录,例如/u0/oracle,并指定该目录为Oracle用户的缺省主目录.
为了设置Oracle用户的运行环境,在Oracle用户的主目录下要建立一个脚本文件,用于在以Oracle用户登录进自动设置环境变量。该脚本文件的命名与用户所使用的shell有关(在etc/passwd文件中定义)。如采用bash,则脚本文件是.bash_profile;如采用sh,则脚本文件名为.profile。以bash为例,在脚本文件.bash_profile中输入以下内容:
#ORACLE_HOME指定Oracle的安装目录 。
ORACLE_HOME=/u0/oracle; export ORACLE_HOME 。
#LD_LIBRARY_PATH指定Oracle的共享库目录 。
LD_LIBRARY_PATH=$ORACLE_HOME /lib;export LD_LIBRARY_PATH 。
ORACLE_BASE=$ORACLE_HOME; export ORACLE_BASE 。
#ORACLE_SID指定Oracle数据库实例名,Oracle建议小于或等于4个字符 。
ORACLE_SID=BROS;export ORACLE_SID 。
#ORACLE_TERM Oracle用户的终端类型 。
ORACLE_TERM=ansi; export ORACLE_TERM 。
PATH=$PATH: $ORACLE_HOME /bin; export PATH 。
#TMPDIR指定临时目录,Oracle要求至少20M的空间 。
TMPDIR=/var/tmp;export TMPDIR 。
umask 022 。
退出登录后,再以Oracle用户登录,测试环境变量是否符合要求.
2、安装Oracle 。
Oracle的安装可采用光盘或指定安装路径的方式.
对用Oracle for linux光盘来安装的,应执行以下命令:
mount -t iso9660 /dev/cdrom /home/Oracle 。
安装光盘介质。正常情况下,CDROM应安装在/mnt/cdrom目录下.
对指定原始安装路径安装的,应事先将压缩档案文件805ship.tgz解压缩到一个临时目录,如/home/Oracle,使用命令:
gunzip - c 805ship.tgz| tar xvf - 。
假设使用指定原始安装路径/home/Oracle,在该目录下执行:
cd orainst 。
sh oratab.sh 。
oratab.sh命令的主要目的是创建/etc/oratab.
由于RedHat 6.0使用的是glibc 2.0,因此在RedHat 6.0环境下安装Oracle 8.0.5需打补丁。方法是:卸载位于ftp.Oracle.com站点的/pub/www/otn/linux/glibcpatch.tgz文件,在完成Oracle基本系统安装后,对$ORACLE_HOME/bin目录下的执行程序进行修正.
做完上述工作后,即可以开始Oracle基本系统的安装.
1、进入/home/Oracle目录,
2、执行./orainst /c,
3、选择Custom安装.
根据提示进行以下选择:
Install,Upgrade or De -instal software 。
Install new product -DO NOTCREAT DB Objects。这一步非常重要,由于安装包中的执行程序与blibc2.0不兼容,因此,在打补丁前,无法启动Oracle引擎来创建数据库对象.
按照上述步骤招待完退出后,系统应提示:
Result:Success 。
4、对Oracle执行程序进行glibc修正。步骤如下:
* 建立$ORACLE_HOME/orapatch目录,
* 将glibcpatch.tgz拷贝至主目录,
* 执行tar -xvzf glibcpatch.tgz,
* 执行sh glibcpatch.sh.
完成 补丁程序安装后,要重新运行Oracle的安装程序,步骤如下:
* cd orainst,
* 执行orainst /c,
* 进行custom安装.
根据提示进行以下选择:
Create/upgrade Database objects 。
Create Database objicts 。
Oracle 8 Standard RDBMS 8.0.5.0.0 。
Create product DB Objicts 。
Filisystem -bases Database 。
直至提示:Rusult:Success 。
5、执行后安装处理 。
* 以Oracle用户登录,
* 执行su -p root,输入root用户密码,
* cd orainst,
* 执行sh root.sh,
* 编辑修改 /etc/oratab文件.
找到Oracle -SID指示行,如:
$BROS: /u0/Oracle:N 。
修改为:
$BROS: /u0/Oracle:Y 。
以允许Oracle服务器自启动.
*修改TNS相关的文件权限:
chown oracle.dba $ORACLE_HOME/bin/tnslsnr 。
chmod 750 $ORACLE_HOME/bin/tnslsnr 。
chown oracle.dba $ORACE_HOME/network/log 。
chmod 775 $ORACLE_HOME/network/log 。
chown root.dba $ORACLE_HOME/network/log/listener.log 。
chmod 664 $ORACLE_HOME/network/log/listener.log 。
至此,安装基本完成.
最后此篇关于在Linux下安装Oracle的文章就讲到这里了,如果你想了解更多关于在Linux下安装Oracle的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是偏离主题的,
Linux 管道可以缓冲多少数据?这是可配置的吗? 如果管道的两端在同一个进程中,但线程不同,这会有什么不同吗? 请注意:这个“同一个进程,两个线程”的问题是理论上的边栏,真正的问题是关于缓冲的。 最
我找到了here [最后一页] 一种有趣的通过 Linux 启动 Linux 的方法。不幸的是,它只是被提及,我在网上找不到任何有用的链接。那么有人听说过一种避免引导加载程序而使用 Linux 的方法
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
我试图了解 ld-linux.so 如何在 Linux 上解析对版本化符号的引用。我有以下文件: 测试.c: void f(); int main() { f(); } a.c 和 b.c:
与 RetroPie 的工作原理类似,我可以使用 Linux 应用程序作为我的桌面环境吗?我实际上并不需要像实际桌面和安装应用程序这样的东西。我只需要一种干净简单的方法来在 RaspberryPi 上
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 10 年前。 Improve thi
有什么方法可以覆盖现有的源代码,我应该用 PyQt、PyGTK、Java 等从头开始构建吗? 最佳答案 如果您指的是软件本身而不是它所连接的存储库,那么自定义应用程序的方法就是 fork 项目。据我所
我的情况是:我在一个磁盘上安装了两个 linux。我将第一个安装在/dev/sda1 中,然后在/dev/sda2 中安装第二个然后我运行第一个系统,我写了一个脚本来在第一个系统运行时更新它。
我在 i2c-0 总线上使用地址为 0x3f 的系统监视器设备。该设备在设备树中配置有 pmbus 驱动程序。 问题是,加载 linux 内核时,这个“Sysmon”设备没有供电。因此,当我在总线 0
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 11 年前。 Improve thi
我正试图在 linux 模块中分配一大块内存,而 kalloc 做不到。 我知道唯一的方法是使用 alloc_bootmem(unsigned long size) 但我只能从 linux 内核而不是
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我有 .sh 文件来运行应用程序。在该文件中,我想动态设置服务器名称,而不是每次都配置。 我尝试了以下方法,它在 CentOS 中运行良好。 nohup /voip/java/jdk1.8.0_71/
我是在 Linux 上开发嵌入式 C++ 程序的新手。我有我的 Debian 操作系统,我在其中开发和编译了我的 C++ 项目(一个简单的控制台进程)。 我想将我的应用程序放到另一个 Debian 操
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 4 年前。 Improve this ques
我使用4.19.78版本的稳定内核,我想找到带有企鹅二进制数据的C数组。系统启动时显示。我需要在哪里搜索该内容? 我在 include/linux/linux_logo.h 文件中只找到了一些 Log
我知道可以使用 gdb 的服务器模式远程调试代码,我知道可以调试针对另一种架构交叉编译的代码,但是是否可以更进一步,从远程调试 Linux 应用程序OS X 使用 gdbserver? 最佳答案 当然
是否有任何可能的方法来运行在另一个 Linux 上编译的二进制文件?我知道当然最简单的是在另一台机器上重建它,但假设我们唯一能得到的是一个二进制文件,那么这可能与否? (我知道这可能并不容易,但我只是
我是一名优秀的程序员,十分优秀!