当前位置: 首页 > 编程日记 > 正文

oracle9i安装不上,终于成功安装oracle9i了(Cent OS 4.0+oracle9204)

本来没想过要做这个总结的,但就安装个数据库来说,在linux下安装oracle简直就是折磨人,它不难,但就是要很细心(=繁琐):

操作系统:Cent OS-4ISOs(相当于RedHat Enterprise linux 4.0)

oracle:ship_9204_linux_disk1.cpio.gz ,

ship_9204_linux_disk2.cpio.gz ,

ship_9204_linux_disk3.cpio.gz

一)安装前的准备

1,我安装Cent OS的时候是把软件包全部安装的,这样省了不少麻烦。若不是,查看以下软件包是否都安装了

compat-db-4.1.25-9

compat-gcc-32-3.2.3-47.3

compat-gcc-32-c++-3.2.3-47.3

compat-oracle-rhel4-1.0-3

compat-libcwait-2.0-1

compat-libgcc-296-2.96-132.7.2

compat-libstdc++-296-2.96-132.7.2

compat-libstdc++-33-3.2.3-47.3

gcc-3.4.3-9.EL4

gcc-c++-3.4.3-9.EL4

gnome-libs-1.4.1.2.90-44

gnome-libs-devel-1.4.1.2.90-44

libaio-devel-0.3.102-1

libaio-0.3.102-1

make-3.80-5

openmotif21-2.1.30-11

xorg-x11-deprecated-libs-devel-6.8.1-23.EL

xorg-x11-deprecated-libs-6.8.1-23.EL

查看命令是#rpm -qa | grep compat(软件包的头几个字母)

若发现没有的软件包就在系统安装光盘或iso中找,找到了就用#rpm -ivh compat-db-4.1.25-9(软件包名)来安装

2,安装补丁包(我都是在itpub上下载的)

#unzip p4198954_21_linux.zip 解压后是两个rpm软件包

#rpm -Uvh compat*.rpm

3,创建oracle用户及其目录

创建user/group

#groupadd dba

#groupadd oinstall

#useradd oracle -g oinstall -G dba

#passwd oracle 回车后输入密码

建立oracle安装文件夹

#mkdir /orasetup 把上面三个安装源文件放到此文件夹/orasetup

# mkdir /u01/cwdata

# mkdir -p /u01/app/oracle/product/9.2.0.4

# chmod 777 /u01/cwdata

# chown oracle.dba /u01/cwdata

# chown oracle.dba /orasetup

# chmod 777 /orasetup

# chown -R oracle.dba /u01

# chmod -R 777 /u01

4,配置环境变量

以root用户登录,#vi .bash_profile文件,将如下内容加入:

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/9.2.0.4

export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin

export ORACLE_OWNER=oracle

export ORACLE_SID=oradb

以Oracle用户登录,#su – oracle

$vi .bash_profile 将如下内容加入:

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/9.2.0.4

export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin

export ORACLE_OWNER=oracle

export ORACLE_SID=oradb

export ORACLE_TERM=xterm

export LD_ASSUME_KERNEL=2.4.19

export THREADS_FLAG=native

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib

export NLS_LANG=”American_america.zhs16gbk”

export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

export DISPLAY=:0(我用了这个还是不行,最后还是要把它注释掉,解决方法看下文)

export LANG=en_US

export GDM_LANG= en_US

export LC= en_US

export PATH=$PATH:$ORACLE_HOME/bin

unset USERNAME

5,设置系统参数

#su – root切换到root用户

a) 修改#vi /etc/sysctl.conf, 以下是配置文件的内容(其中红色字体为添加的内容):

# Kernel sysctl configuration file for Red Hat Linux

#

# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and

# sysctl.conf(5) for more details.

# Controls IP packet forwarding

net.ipv4.ip_forward = 0

# Controls source route verification

net.ipv4.conf.default.rp_filter = 1

# Controls the System Request debugging functionality of the kernel

kernel.sysrq = 0

# Controls whether core dumps will append the PID to the core filename.

# Useful for debugging multi-threaded applications.

kernel.core_uses_pid = 1

kernel.shmmax = 536870912 / 268435456

kernel.shmmni = 4096

kernel.shmall = 2097152

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

修改后运行#sysctl –p命令使得内核改变立即生效;

译者注:一般情况下可以设置最大共享内存为物理内存的一半,如果物理内存是 2G,则可以设置最大共享内存为 1073741824,如上;如物理内存是 1G,则可以设置最大共享内存为 512 * 1024 * 1024 = 536870912;以此类推。)

建议永久地增加 shmmax 设置。

sem 4个参数依次为SEMMSL(每个用户拥有信号量最大数);SEMMNS(系统信号量最大数);SEMOPM(每次semopm系统调用操作数);SEMMNI(系统辛苦量集数最大数).Shmmax 最大共享内存,官方文档建议是内存的1/2,Shmmni 最小共享内存 4096KB.Shmall 所有内存大小

B) 设置oracle对文件的要求:

编辑文件:#vi /etc/security/limits.conf 加入以下语句:

oracle    soft    nofile    65536

oracle    hard    nofile   65536

oracle    soft    nproc    16384

oracle    hard    nproc    16384

C) gcc降级

#su – root

#mv /usr/bin/gcc /usr/bin/gcc34

#ln –s /usr/bin/gcc32 /usr/bin/gcc

#mv /usr/bin/g++ /usr/bin/g++34

#ln –s /usr/bin/g++32 /usr/bin/g++

二)开始安装

以oracle用户解压

#zcat ship_9204_linux_disk1.cpio.gz | cpio –idmv &&

zcat ship_9204_linux_disk2.cpio.gz | cpio –idmv &&

zcat ship_9204_linux_disk3.cpio.gz | cpio –idmv

自动创建了3个包含安装文件的目录:

Disk1,Disk2,Disk3

#cd Disk1

#./runInstaller

问题一:如果此时出现Unable to load native library:/tmp/OraInstall

解决一:是因为没有安装上文准备工作中的补丁包

问题二:如果安装补丁包后运行runInstaller出现Xlib:connection to ":0.0" refused by server Xlib:No proto specified

解决二:以root用户身份运行#xhost local:oracle

问题三:如果安装界面出现类似“口口”这样的乱码

解决三:在oracle用户时$export LC_ALL=c

UNIX Group Name: dba 在安装过程中还要以root身份运行两个脚本,按提示做就行了,最后显示End of Installation....就OK了

三)安装oracle后,要启动Agent服务时打的补丁

#unzip p2617419_10102_GENERIC.zip

Archive: p2617419_10102_GENERIC.zip

creating: OPatch/

creating: OPatch/docs/

inflating: Opatch/docs/FAQ

......

inflating: README.txt

#export PATH=$PATH:/orasetup/OPatch:/sbin

(修改PATH时要要包括解压缩出来的Opatch 和 sbin目录)

# unzip p3238244_9204_LINUX.zip

# cd 3238244

# opatch apply

如果提示HOME变量错误可执行语句:

#export ORACLE_BASE=/u01/app/oracle

#export ORACLE_HOME=/u01/app/oracle/product/9.2.0.4

出现success的提示就全部安装成功.

补丁打完后,还要relinked一个.mk文件,切换到oracle用户窗口

$cd $ORACLE_HOME/network/lib

$make –f ins_oemagent.mk install

之后就可以启动Agent服务了.

四)创建oracle数据库

#dbca

问题四:如果出现java.lang.NoClassDefFound

解决四:注释掉.bash_profile中的export DISPALY="IP:0.0",然后还是以root用户执行 #xhost local:oracle

Global Database Name要与ORACLE_SID一样

最后要设置SYS和SYSTEM的密码,走到这一步才算建立了数据库。以下步骤可验证数据库是否安装成功

[oracle@oracle oracle]$ lsnrctl start

[oracle@oracle oracle]$ sqlplus /nolog

SQL*Plus: Release 9.2.0.4.0 - Production on Sat Mar 12 22:58:53 2005

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL>connect / as sysdba

Connected.

SQL>shutdown 关闭数据库

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL>startup 启动数据库

ORACLE instance started.

Total System Global Area 236000356 bytes

Fixed Size 451684 bytes

Variable Size 201326592 bytes

Database Buffers 33554432 bytes

Redo Buffers 667648 bytes

Database mounted.

Database opened.

数据库创建完成后,修改/etc/oratab,把最后一行最后的N改成Y,然后执行dbstart启动数据库数据库可能无法启动,报告Can’t find init file …的错误,需要复制一个初始化文件:

cp /u01/app/oracle/admin/oradb/pfile/init.ora.* /u01/app/oracle/product/9.2.0/dbs/initoradb.ora

重新执行dbstart就可以了。

五)安装windows的oracle客户端

在oracle网站下载的92010NT_CLT,当然,要注册了才能下载,然后像安装一般程序那样安装就可以了

问题五:安装92010NT_CLT出现“加载数据库时出错area Queries ”

解决五:安装时出现了任何中文目录都是不行的

安装完后就进入开始-所有程序-Oracle oraHome92-Configuation安定migration Tools -Net configuation assistant 进入配置界面

选择 本地Net服务名配置-添加-或更高版本-服务名写上我们的ORACLE_SID-TCP-主机名写上CentOS系统的IP地址-是,进行测试-如果显示连接成功就是你可以访问之前我们建立的数据库了,当然也是在开了lsnrctl的服务情况下数据库才能被访问。

相关文章:

UESTC 1811 Hero Saving Princess

九野的博客,转载请注明出处 http://blog.csdn.net/acmmmm/article/details/11104265 题目链接 :http://222.197.181.5/problem.php?pid1811 题意:T个测试数据 n m //n个点 m条边 m条无向边 que//下面有que个数据 a b // 表示a点的钥匙在b中…

VC:其他控件(CProgressCtrl、CScrollBar、CDateTimeCtrl、CMonthCalCtrl)

1、进度条 m_progressCtrl.SetRange(0,100); for(int i0;i<100;i) { m_progressCtrl.SetPos(i); Sleep(100); } AfxMessageBox("进度条到达终点"); 2、滑块控件&#xff1a;添加WM_VSCROLL消息。 void COtherCtrlDlg::OnHScroll(UINT nSBCode, UINT nPos, CScroll…

获取checkbox所选中的值

<input name"demand" type"checkbox" value"222" />//获取所有name为demand的对象var obj document.getElementsByName(demand);var demand ;for (var i 0; i < obj.length; i) {if (obj[i].checked) {demand obj[i].value ,;//如…

oracle plsql开启并行,Oracle开启并行的几种方法

并行执行是同时开启多个进程/线程来完成同一个任务&#xff0c;并行执行的每一个进程/线程都会消耗额外的硬件资源&#xff0c;所以并行执行的本质就是以额外的硬件资源消耗来换取执行时间的缩短。这里的额外硬件资源消耗是指对数据库服务器上多个CPU、内存、从个I/O通道&#…

L1-044 稳赢 (暴力法)

L1-044 稳赢 (15 分) 大家应该都会玩“锤子剪刀布”的游戏&#xff1a;两人同时给出手势&#xff0c;胜负规则如图所示&#xff1a; 现要求你编写一个稳赢不输的程序&#xff0c;根据对方的出招&#xff0c;给出对应的赢招。但是&#xff01;为了不让对方输得太惨&#xff0c;…

一些有用的webservice

http://developer.51cto.com/art/200908/147125.htm 下面总结了一些常用的Web Service&#xff0c;是平时乱逛时收集的&#xff0c;希望对大家有用。 天气预报Web Service&#xff0c;数据来源于中国气象局 Endpoint Disco WSDL IP地址来源搜索Web Service&#xff08;是目前…

TSQL语句中的Like用法

SQL Server&#xff1a;SQL Like 的特殊用法 %&#xff1a;匹配零个及多个任意字符&#xff1b; _&#xff1a;与任意单字符匹配&#xff1b; []&#xff1a;匹配一个范围&#xff1b; [^]&#xff1a;排除一个范围 SymbolMeaninglike 5[%]5%like [_]n_nlike [a-cdf]a, b, c, d…

MySQL数据类型

--------MySQL常用数据类型概括&#xff1a; #1. 数字&#xff1a;整型&#xff1a;tinyint int bigint小数&#xff1a;float &#xff1a;在位数比较短的情况下不精准double &#xff1a;在位数比较长的情况下不精准decimal&#xff1a;&#xff08;如果用小数&#xff0c;…

L1-047 装睡 (结构体解决)

L1-047 装睡 (10 分) 你永远叫不醒一个装睡的人 —— 但是通过分析一个人的呼吸频率和脉搏&#xff0c;你可以发现谁在装睡&#xff01;医生告诉我们&#xff0c;正常人睡眠时的呼吸频率是每分钟15-20次&#xff0c;脉搏是每分钟50-70次。下面给定一系列人的呼吸频率与脉搏&am…

sum_series() 求一列数的指定个数的数和(5个数字的和)

1 #include <stdio.h>2 #include <stdarg.h>3 /*用sum_series() 求一列数的指定个数的数和(5个数字的和)*/4 double sum_series(int num, ...);5 6 int main()7 {8 double s;9 s sum_series(5, 0.5, 0.25, 0.125, 0.06254, 2.0); 10 printf("Sum…

oracle创建用户名授权,oracle创建用户及授权创建表

----Oracle 用户、对象权限、系统权限--建立表空间和用户的步骤&#xff1a;用户建立&#xff1a;create user 用户名 identified by "密码";授权&#xff1a;grant create session to 用户名;grant create table to 用户名;grant create tablespace to 用户名;gra…

过滤器、拦截器、aop的先后顺序和作用范围&拦截器preHandle(),postHandle(),afterComplation()方法执行顺序

在Spring框架中,过滤器(Filter)、拦截器(Interceptor)和面向切面编程(AOP)都是用于处理请求和处理流程的组件,但它们的作用范围和触发时机有所不同。下面我会解释这三者的先后顺序和作用范围。执行顺序:请注意,这个顺序可能因具体的配置和使用的技术而有所不同。在实际应用中,建议根据项目的具体需求来合理配置和使用这些组件。拦截器执行流程图:实现拦截器需要实现这个接口,这个 接口中有三个默认方法,这三个方法的执行顺序:我们实现接口然后重写这三个方法,就会在对应的时机被自动执行。这里就是调用处理

[IoC容器Unity]第四回:使用范例

1.引言  前面几个章节介绍了Unity的基本使用&#xff0c;主要分为程序和配置文件两种方法的使用&#xff0c;可以参考一下链接&#xff0c; [IoC容器Unity]第一回&#xff1a;Unity预览[IoC容器Unity]第二回&#xff1a;Lifetime Managers生命周期[IoC容器Unity]第三回&#x…

Zookeeper概要、协议、应用场景

Zoopkeeper提供了一套很好的分布式集群管理的机制,就是它这种基于层次型的目录树的数据结构并对树中的节点进行有效管理,从而可以设计出多种多样的分布式的数据管理模型,作为分布式系统的沟通调度桥梁。

L1-056 猜数字 (结构体解决)

L1-056 猜数字 (20 分) 一群人坐在一起&#xff0c;每人猜一个 100 以内的数&#xff0c;谁的数字最接近大家平均数的一半就赢。本题就要求你找出其中的赢家。 输入格式&#xff1a; 输入在第一行给出一个正整数N&#xff08;≤104&#xff09;。随后 N 行&#xff0c;每行给…

不同的source control下配置DiffMerge

TFS&#xff1a; 1. 打开Option -> Source Control -> Visual Studio TFS -> Configure User Tools; 2. 添加 .*, Compare, C:\Program Files (x86)\SourceGear\DiffMerge\DiffMerge.exe, /title1%6 /title2%7 %1 %2; 3. 添加 .*, Merge, C:\Program Files (x86)\Sour…

下载oracle修复补丁下载,Oracle数据库修复工具下载_FROMBYTE Reconstructor for Oracle官方版下载[修复软件]-下载之家...

FROMBYTE Reconstructor for Oracle(Oracle数据库修复工具)官方版是一款专为Oracle的数据库进行修复软件&#xff0c;可以通过Oracle数据库修复工具软件创建一个修复区域&#xff0c;随后对数据库所在的位置扫描&#xff0c;将扫描的结果显示在主区域&#xff0c;让您可以查看哪…

SEO查询指令,非常值得你收藏!

用好搜索引擎一些特殊指令&#xff0c;是干SEO这行的一个基本功。初步整理了10个功能&#xff0c;单独使用是最基本的能力&#xff0c;如果综合使用&#xff0c;你会发现搜索的奥妙无穷。 1. site:  某个特定网站收录情况  比如site:www.baidu.com 2. cache:  上一次搜索…

GITHup的使用

一个源码管理工具&#xff0c;由于不擅长敲GIt命令&#xff0c;还不太喜欢用英文版本的软件&#xff0c;所以想办法用中文版的图形工具步骤如下&#xff1a; 下载了GIT64位&#xff0c;安装&#xff0c;下载了TortoiseGit和TortoiseGit中文语言包&#xff0c;先后安装。然后设置…

debug:g2o cmake时报错“Qt5 not found. Install it and set Qt5_DIR accordingly

** debug&#xff1a;g2o cmake时报错“Qt5 not found. Install it and set Qt5_DIR accordingly” ** 完整报错&#xff1a; ubuntu:~/WorkSpace/g2o/build$ cmake …/ – Compiling on Unix – Found CHOLMOD and its dependencies – Compiling with OpenGL support – C…

oracle表中怎么去重复,Oracle里去掉表里组合字段重复的记录步骤是什么呢?

当设计表的时候没有建组合字段唯一约束&#xff0c;以后需要增加这一约束时&#xff0c;却发现表里已经有了很多重复记录了。请看看我用的去掉表里组合字段重复的记录方法&#xff1a;假设原始表名为source_table,字段名1为field_name1,字段名2为field_name2。(当然稍加修改也可…

Windows Server 2012

安装Windows Server 2012之后&#xff0c;为了使用的方便性、性能&#xff0c;作如下配置&#xff1a; 一、方便使用&#xff1a; 1、启动时不需要按CtrlAltDel&#xff1a; 控制面板|管理工具|本地安全设置&#xff0c;弹出本地安全设置窗口&#xff0c;然后选择“安全设置…

从网站上扒网页,保存为file文件格式

保存下来的页面总是有部分特效缺失&#xff0c;可是文件包里已经有好几个js文件了。  例如想保存易迅的搜索页面&#xff0c;条件筛选栏的按钮全部失效了&#xff0c;按钮-更多、多选等 都没有反应&#xff0c;搜索结果的鼠标悬浮显示完整信息也没有了。 在 Chrome 地址栏中键…

CSDN:新的开始

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注…

oracle直查和call哪个更快,让oracle跑的更快1读书笔记二

当前位置:我的异常网 数据库 <>读书笔记二<>读书笔记二www.myexceptions.net 网友分享于&#xff1a;2013-08-23 浏览&#xff1a;9次<>读书笔记21 绑定变量1)硬分析和软分析硬分析需要判断是否已经在共享池中&#xff0c;如果有的话&#xff0c;则直接拿…

WordPress 开启 Gzip 为网页加载提速减少响应时间

2019独角兽企业重金招聘Python工程师标准>>> 大家都晓得&#xff0c;开启Gzip能极大地压缩文本数据的体积。对于使用 WordPress 的博主来说&#xff0c;开启服务器的GZip压缩是一个为博客加速的好方法。GZip可对多种类型的文 件进行压缩&#xff0c;对于 CSS&#x…

20180829-Java多线程编程

Java 多线程编程 Java给多线程编程提供了内置的支持。一个多线程程序包含两个或多个能并发运行的部分。 程序的每一部分都称作一个线程&#xff0c;并且每个线程定义了一个独立的执行路径。 多线程是多任务的一种特别的形式。多线程比多任务需要更小的开销。 这里定义和线程相关…

b-blkid查看磁盘设备文件系统类型

blkid命令对查询设备上所采用文件系统类型进行查询。blkid主要用来对系统的块设备&#xff08;包括交换分区&#xff09;所使用的文件系统类型、LABEL、UUID等信息进行查询 改命令存在于util-linux-2.23.2-26.el7.x86_64软件包之中 常用命令展示 blkid查询所有设备的文件系统…

与后台交互方法一 ——Ajax

一、Ajax&#xff1a;为无刷新读取服务器端数据&#xff0c;常用在用户注册、在线聊天室等。 使用Ajax读取数据时有以下几点需要注意&#xff1a; 1.字符集编码前后台要一致&#xff0c;否则前台显示的数据为乱码。 2.使用随机数或时间清除缓存、阻止缓存&#xff0c;防止服务器…

php复选框关联数据库字段,通过php将复选框中的多个值插入数据库

|我想将此表单值插入到datanase中&#xff1a;Brand 1Brand 2Brand 3Brand 4Brand 5这些文本框是通过php从数据库中的表中获取的&#xff0c;并且可能是Variable我想以这种格式插入数据库如果检查品牌1&#xff0c;则$ brand \“ 1&#xff0c;\”;最后像这样&#xff1a;inse…