在linux中安装oracle数据库-程序员宅基地

技术标签: oracle  linux  安装oracle失败  数据库  

Linux上安装Oracle数据库有两种:

 

1)、图形化安装

 

2)、oracle静默安装

 

这里我们选择第一种,图形化安装

 

第一步:我们要检查我们的linux系统中是否有我们需要的包

 

注意:使用root超级管理员的身份

 

# rpm -qa | grep 软件包

 

软件包必须的有23个

 

binutils-2.17.50.0.6

 

compat-libstdc++-33-3.2.3

 

compat-libstdc++-33-3.2.3 (32 bit)

 

elfutils-libelf-0.125

 

elfutils-libelf-devel-0.125

 

gcc-4.1.2

 

gcc-c++-4.1.2

 

glibc-2.5-24

 

glibc-2.5-24 (32 bit)

 

glibc-common-2.5

 

glibc-devel-2.5

 

glibc-devel-2.5 (32 bit)

 

glibc-headers-2.5

 

ksh-20060214

 

libaio-0.3.106

 

libaio-0.3.106 (32 bit)

 

libaio-devel-0.3.106

 

libaio-devel-0.3.106 (32 bit)

 

libgcc-4.1.2

 

libgcc-4.1.2 (32 bit)

 

libstdc++-4.1.2

 

libstdc++-4.1.2 (32 bit)

 

libstdc++-devel 4.1.2

 

make-3.81

 

numactl-devel-0.9.8.x86_64

 

sysstat-7.0.2

 

unixODBC-2.2.11

 

unixODBC-2.2.11 (32 bit)

 

unixODBC-devel-2.2.11

 

elfutils-libelf-devel-static-0.125

 

kernel-headers-2.6.18

 

libgomp-4.1.2

 

 

如果系统中有安装过上面的包,输入rpm -qa | grep 软件包 后,能够看见该软件包的信息,如果是找到不到的话,说明就没有安装

 

安装命令:

 

# yum install 软件包 (单个安装)

 

#yum install binutils-2.* compat-libstdc++-33* elfutils-libelf-0.* elfutils-libelf-devel-* gcc-4.* gcc-c++-4.* glibc-2.* glibc-common-2.* glibc-devel-2.* glibc-headers-2.* ksh-2* libaio-0.* libaio-devel-0.* libgcc-4.* libstdc++-4.* libstdc++-devel-4.* make-3.* sysstat-7.* unixODBC-2.* unixODBC-devel-2.* pdksh* (全部安装)

 

确保所有依赖包都已经安装完成后继续

 

第二步:创建用户组和用户

 

#groupadd oinstall#创建用户组oinstall

#groupadd dba                   #创建用户组dba

#useradd -g oinstall -g dba -m oracle#创建oracle用户,并加入到oinstall和dba用户组

#groups oracle  #查询用户组是否授权成功

#passwd oracle                  #设置用户oracle的登陆密码,不设置密码,在#CentOS的图形登陆界面没法登陆

#id oracle                   #查看新建的oracle用户

 

这里会设置两次密码,确保两次密码一致,密码不得少于8个字符

 

 

 

第三步:配置系统内核参数

 

# vi /etc/sysctl.conf

 

按键盘上的” o”键,进入编辑模式,编辑完成后按esc键然后再按 :wq 保存并退出

 

打开文件后检查或修改如下参数:

 

net.ipv4.icmp_echo_ignore_broadcasts = 1

 

net.ipv4.conf.all.rp_filter = 1

 

fs.file-max = 6815744    #设置最大打开文件数

 

fs.aio-max-nr = 1048576

 

kernel.shmall = 2097152   #共享内存的总量,8G内存设置:2097152*4k/1024/1024

 

kernel.shmmax = 2147483648   #最大共享内存的段大小

 

kernel.shmmni = 4096   #整个系统共享内存端的最大数

 

kernel.sem = 250 32000 100 128

 

net.ipv4.ip_local_port_range = 9000 65500   #可使用的IPv4端口范围

 

net.core.rmem_default = 262144

 

net.core.rmem_max= 4194304

 

net.core.wmem_default= 262144

 

net.core.wmem_max= 1048576

 

第四步:修改用户限制

 

a、在文件/etc/security/limits.conf中加入以下内容:

 

# vi /etc/security/limits.conf

 

oracle soft nproc 2047

 

oracle hard nproc 16384

 

oracle soft nofile 1024

 

oracle hard nofile 65536

 

 

第五步:关闭selinux(防火墙)

 

# vi /etc/sysconfig/selinux

 

#SELINUX=enforcing

 

SELINUX=disabled

 

 

第六步:创建安装目录并赋予权限

 

#mkdir -p /data/oracle#oracle数据库安装目录

#mkdir -p /data/oraInventory#oracle数据库配置文件目录

#mkdir -p /data/database#oracle数据库软件包解压目录

#cd /data

#ls#创建完毕检查一下

#chown -R oracle:oinstall /data/oracle#设置目录所有者为oinstall用户组的oracle用户

#chown -R oracle:oinstall /data/oraInventory

#chown -R oracle:oinstall /data/database

 

创建目录可以自己修改

 

第七步:修改OS系统标识

 

oracle默认不支持CentOS系统安装, 修改文件 /etc/RedHat-release 内容为RedHat-7

 

vi /etc/redhat-release

 

redhat-7

 

 

第八步:设置环境变量

 

注意:这里要切换成Oracle用户

 

打开环境变量配置文件:

 

$vi /home/oracle/.bash_profile

 

增加配置内容如下:

 

export ORACLE_BASE=/data/oracle  #oracle数据库安装目录

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1  #oracle数据库路径

export ORACLE_SID=orcl  #oracle启动数据库实例名

export ORACLE_TERM=xterm  #xterm窗口模式安装

export PATH= ORACLEHOME/bin:/usr/sbin: PATH  #添加系统环境变量

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib  #添加系统环境变量

export LANG=C  #防止安装过程出现乱码

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK   #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致

 

保存后使其生效:

 

运行source /home/oracle/.bash_profile时上述配置生效

 

 

第九步:获取安装包文件后解压安装包

 

unzip linux.x64_11gR2_database_1of2.zip -d /data/database/  #解压文件1

 

unzip linux.x64_11gR2_database_2of2.zip -d /data/database/  #解压文件2

 

chown -R oracle:oinstall /data/database/database/#分配安装文件授权Oracle

 

第十步:注销用户

 

重新登录,使用oracle用户登录系统,使用命令行跳转到data/database/database目录下,

 

输入./runInstaller 调出安装页面

 

第十一步:安装Oracle数据库

 

 


PS:如果安装的软件包版本高于Oracle检测的软件包版本,可以忽略,直接点击next


注意:

 

安装过程是一个漫长的过程,中间有几次卡住,没有出现任何画面,屏幕中间有条小线,尝试多次,发现光标在该线上,右键点击Closed,不知道关闭了啥,又能继续安装了。先装吧,到时看安装日志再说。

 

或者直接放大那条小线,就能看见那个隐藏的界面了。

 

第十二步:配置监听及本地网络服务

 

输入netca报错的情况下:

 

[oracle@localhost ~]$ netca

 

Oracle Net Services Configuration:

#

# An unexpected error has been detected by HotSpot Virtual Machine:

#

#  SIGSEGV (0xb) at pc=0x00007f69a69fcb9d, pid=8033, tid=140092892297024

#

# Java VM: Java HotSpot(TM) 64-Bit Server VM (1.5.0_17-b03 mixed mode)

# Problematic frame:

# C  [libclntsh.so.11.1+0x62ab9d]  snlinGetAddrInfo+0x1b1

#

# An error report file with more information is saved as hs_err_pid8033.log

#

# If you would like to submit a bug report, please visit:

#   http://java.sun.com/webapps/bugreport/crash.jsp

#

/data/oracle/product/11.2.0/db_1/bin/netca: line 178:  8033 Aborted                 (core dumped) JRE JRE_OPTIONS -classpath CLASSPATH oracle<a href="http://lib.csdn.net/base/dotnet" class="replace_word" title=".NET知识库" target="_blank" style="color:#df3434; font-weight:bold;">.NET</a>.ca.NetCA*

 

[oracle@localhost ~]$

 

错误原因:安装操作系统是默认主机名localhost造成错误

 

解决办法:

 

racle]# cat /etc/sysconfig/network

# Created by anaconda

 

[root@localhost oracle]# vi /etc/sysconfig/network#增加HOSTNAME

# Created by anaconda

HOSTNAME=odb-sonny

 

[root@localhost oracle]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

 

[root@localhost oracle]# vi /etc/hosts#增加HOSTNAME

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 odb-sonny

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

 

[root@localhost oracle]# hostname odb-sonny#执行

[root@localhost oracle]#

 

最后注销当前oracle用户,重新登陆即可!!这次发现打开配置界面正常,安装windows下面配置即可。

 

正常情况下:

 

1)在oracle用户的图形界面oracle用户中,新开启一个终端,输入命令netca 会弹出如下界面。


2)创建监听服务(充当oracle服务器,让别的oracle客户端连接本oracle服务器)



3) 配置本地网络服务名(充当oracle客户端,连接别的oracle服务器)




输入连接的oracle服务器的数据库的实例名



输入oracle服务器的ip地址



选中YES测试


点击change Login 输入所连接oracle服务器的其中某一个用户名和密码(用户名oracle和设置的密码),点击OK



看到此界面说明测试成功(如果不成功,请查看网络是否畅通,所连接的oracle服务器是否启动,监听是否启动等原因)


为你所设置的本地网络服务名起个名字


这样oracle服务器安装配置基本就完成了


第十三步:创建Oracle实例

 

执行dbca命令,启动oracle实例安装界面,剩下的与Windows上安装一样,不废话了:

 

注意:必须先创建监听,并且监听是启动中,否则报错。

出现以下窗口,直接Next


[2] 选择“Create a Database”


[3] 选择“General Purpose or Transaction Processing”


[4] 填入Database Name 与 SID


[5] Enterprise Manager配置


[6] Oracle系统用户密码配置,这里选择所有系统用户都使用同样的密码



[7] 存储类型,保持默认的文件系统


[8] Flash Recovery Area位置和大小


[10] 内存Memory配置:调整为80%



字符集设置:使用Unicode.

Default Language: 选择Simplified Chinese

Default Territory: 选择China


[11] 确认没问题,则单击Next


[12] 点击Finish


创建进程开始


[13] 数据库创建完毕,点Exit退出


 

最后一步:

 

#使用sqlplus命令登录Oracle,重启服务器

 

sqlplus  /nolog

 

conn / as sysdba;

 

#再输入startup,回车.这步是启动oracle服务。

 

Startup

 

 

参考博文:

 

http://www.cnblogs.com/xibei666/p/5935219.html

 

http://www.cnblogs.com/sonnychen/p/5366021.html

 

http://www.cnblogs.com/lightnear/archive/2012/10/09/2716820.html

 

http://www.cnblogs.com/zzuyczhang/p/5681299.html


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_32061521/article/details/61934684

智能推荐

C#连接OPC C#上位机链接PLC程序源码 1.该程序是通讯方式是CSharp通过OPC方式连接PLC_c#opc通信-程序员宅基地

文章浏览阅读565次。本文主要介绍如何使用C#通过OPC方式连接PLC,并提供了相应的程序和学习资料,以便读者学习和使用。OPC服务器是一种软件,可以将PLC的数据转换为标准的OPC格式,允许其他软件通过标准接口读取或控制PLC的数据。此外,本文还提供了一些学习资料,包括OPC和PLC的基础知识,C#编程语言的教程和实例代码。这些资料可以帮助读者更好地理解和应用本文介绍的程序。1.该程序是通讯方式是CSharp通过OPC方式连接PLC,用这种方式连PLC不用考虑什么种类PLC,只要OPC服务器里有的PLC都可以连。_c#opc通信

Hyper-V内的虚拟机复制粘贴_win10 hyper-v ubuntu18.04 文件拷贝-程序员宅基地

文章浏览阅读1.6w次,点赞3次,收藏10次。实践环境物理机:Windows10教育版,操作系统版本 17763.914虚拟机:Ubuntu18.04.3桌面版在Hyper-V中的刚安装好Ubuntu虚拟机之后,会发现鼠标滑动很不顺畅,也不能向虚拟机中拖拽文件或者复制内容。在VMware中,可以通过安装VMware tools来使物理机和虚拟机之间达到更好的交互。在Hyper-V中,也有这样的工具。这款工具可以完成更好的鼠标交互,我的..._win10 hyper-v ubuntu18.04 文件拷贝

java静态变量初始化多线程,持续更新中_类初始化一个静态属性 为线程池-程序员宅基地

文章浏览阅读156次。前言互联网时代,瞬息万变。一个小小的走错,就有可能落后于别人。我们没办法去预测任何行业、任何职业未来十年会怎么样,因为未来谁都不能确定。只能说只要有互联网存在,程序员依然是个高薪热门行业。只要跟随着时代的脚步,学习新的知识。程序员是不可能会消失的,或者说不可能会没钱赚的。我们经常可以听到很多人说,程序员是一个吃青春饭的行当。因为大多数人认为这是一个需要高强度脑力劳动的工种,而30岁、40岁,甚至50岁的程序员身体机能逐渐弱化,家庭琐事缠身,已经不能再进行这样高强度的工作了。那么,这样的说法是对的么?_类初始化一个静态属性 为线程池

idea 配置maven,其实不用单独下载Maven的。以及设置新项目配置,省略每次创建新项目都要配置一次Maven_安装idea后是不是不需要安装maven了?-程序员宅基地

文章浏览阅读1w次,点赞13次,收藏43次。说来也是惭愧,一直以来,在装环境的时候都会从官网下载Maven。然后再在idea里配置Maven。以为从官网下载的Maven是必须的步骤,直到今天才得知,idea有捆绑的 Maven 我们只需要搞一个配置文件就行了无需再官网下载Maven包以后再在新电脑装环境的时候,只需要下载idea ,网上找一个Maven的配置文件 放到 默认的 包下面就可以了!也省得每次创建项目都要重新配一次Maven了。如果不想每次新建项目都要重新配置Maven,一种方法就是使用默认的配置,另一种方法就是配置 .._安装idea后是不是不需要安装maven了?

奶爸奶妈必看给宝宝摄影大全-程序员宅基地

文章浏览阅读45次。家是我们一生中最重要的地方,小时候,我们在这里哭、在这里笑、在这里学习走路,在这里有我们最真实的时光,用相机把它记下吧。  很多家庭在拍摄孩子时有一个看法,认为儿童摄影团购必须是在风景秀丽的户外,即便是室内那也是像大酒店一样...

构建Docker镜像指南,含实战案例_rocker/r-base镜像-程序员宅基地

文章浏览阅读429次。Dockerfile介绍Dockerfile是构建镜像的指令文件,由一组指令组成,文件中每条指令对应linux中一条命令,在执行构建Docker镜像时,将读取Dockerfile中的指令,根据指令来操作生成指定Docker镜像。Dockerfile结构:主要由基础镜像信息、维护者信息、镜像操作指令、容器启动时执行指令。每行支持一条指令,每条指令可以携带多个参数。注释可以使用#开头。指令说明FROM 镜像 : 指定新的镜像所基于的镜像MAINTAINER 名字 : 说明新镜像的维护(制作)人,留下_rocker/r-base镜像

随便推点

毕设基于微信小程序的小区管理系统的设计ssm毕业设计_ssm基于微信小程序的公寓生活管理系统-程序员宅基地

文章浏览阅读223次。该系统将提供便捷的信息发布、物业报修、社区互动等功能,为小区居民提供更加便利、高效的服务。引言: 随着城市化进程的加速,小区管理成为一个日益重要的任务。因此,设计一个基于微信小程序的小区管理系统成为了一项具有挑战性和重要性的毕设课题。本文将介绍该小区管理系统的设计思路和功能,以期为小区提供更便捷、高效的管理手段。四、总结与展望: 通过本次毕设项目,我们实现了一个基于微信小程序的小区管理系统,为小区居民提供了更加便捷、高效的服务。通过该系统的设计与实现,能够提高小区管理水平,提供更好的居住环境和服务。_ssm基于微信小程序的公寓生活管理系统

如何正确的使用Ubuntu以及安装常用的渗透工具集.-程序员宅基地

文章浏览阅读635次。文章来源i春秋入坑Ubuntu半年多了记得一开始学的时候基本一星期重装三四次=-= 尴尬了 觉得自己差不多可以的时候 就吧Windows10干掉了 c盘装Ubuntu 专心学习. 这里主要来说一下使用Ubuntu的正确姿势Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的开源GNU/Linux操作系统,Ubuntu 是基于DebianGNU/Linux,支..._ubuntu安装攻击工具包

JNI参数传递引用_jni引用byte[]-程序员宅基地

文章浏览阅读335次。需求:C++中将BYTE型数组传递给Java中,考虑到内存释放问题,未采用通过返回值进行数据传递。public class demoClass{public native boolean getData(byte[] tempData);}JNIEXPORT jboolean JNICALL Java_com_core_getData(JNIEnv *env, jobject thisObj, jbyteArray tempData){ //resultsize为s..._jni引用byte[]

三维重建工具——pclpy教程之点云分割_pclpy.pcl.pointcloud.pointxyzi转为numpy-程序员宅基地

文章浏览阅读2.1k次,点赞5次,收藏30次。本教程代码开源:GitHub 欢迎star文章目录一、平面模型分割1. 代码2. 说明3. 运行二、圆柱模型分割1. 代码2. 说明3. 运行三、欧几里得聚类提取1. 代码2. 说明3. 运行四、区域生长分割1. 代码2. 说明3. 运行五、基于最小切割的分割1. 代码2. 说明3. 运行六、使用 ProgressiveMorphologicalFilter 分割地面1. 代码2. 说明3. 运行一、平面模型分割在本教程中,我们将学习如何对一组点进行简单的平面分割,即找到支持平面模型的点云中的所有._pclpy.pcl.pointcloud.pointxyzi转为numpy

以NFS启动方式构建arm-linux仿真运行环境-程序员宅基地

文章浏览阅读141次。一 其实在 skyeye 上移植 arm-linux 并非难事,网上也有不少资料, 只是大都遗漏细节, 以致细微之处卡壳,所以本文力求详实清析, 希望能对大家有点用处。本文旨在将 arm-linux 在 skyeye 上搭建起来,并在 arm-linux 上能成功 mount NFS 为目标, 最终我们能在 arm-linux 里运行我们自己的应用程序. 二 安装 Sky..._nfs启动 arm

攻防世界 Pwn 进阶 第二页_pwn snprintf-程序员宅基地

文章浏览阅读598次,点赞2次,收藏5次。00为了形成一个体系,想将前面学过的一些东西都拉来放在一起总结总结,方便学习,方便记忆。攻防世界 Pwn 新手攻防世界 Pwn 进阶 第一页01 4-ReeHY-main-100超详细的wp1超详细的wp203 format2栈迁移的两种作用之一:栈溢出太小,进行栈迁移从而能够写入更多shellcode,进行更多操作。栈迁移一篇搞定有个陌生的函数。C 库函数 void *memcpy(void *str1, const void *str2, size_t n) 从存储区 str2 _pwn snprintf

推荐文章

热门文章

相关标签