文章目录

  • 介绍
  • 服务器要求
  • 准备
    • 关闭selinux
    • 关闭防火墙
    • 配置镜像
    • 依赖包
    • 修改内核参数配置文件
    • 修改用户的限制文件
    • 下载安装包
  • 创建用户目录
    • 创建用户和用户组
      • 删除用户
    • 创建安装目录、赋权
    • 设置oracle用户环境变量
    • 上传文件到服务器
  • 安装
    • 默认密码
  • 配置监听
  • 创建数据库

介绍

最近要用到oracle,很久没搞过,要求不能使用Docker。采用虚拟机方式安装。搭建虚拟机,安装了下oracle,记录下安装过程。

服务器要求

采用虚拟机方式安装,服务器为Centos7需要桌面,oracle安装需要桌面支持。

小插曲:开始使用vmware15.2安装虚拟机,镜像支持桌面,启动默认命令行,改了很多配置,不生效。升级vmware到15.5 桌面版正常。

  • 至少2G内存
  • 40G硬盘(开始分配20G不够用)

准备

以下操作需要root 权限

关闭selinux

vim /etc/selinux/config

SELINUX=disabledsetenforce 0

关闭防火墙

 systemctl disable firewalld.servicesystemctl stop firewalld.service

配置镜像

#备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
#下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/,这里使用阿里的yum源。
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
#清空yum缓存
yum clean all
#重建缓存
yum makecache
#查看配置目录资源数
yum repolist

依赖包

依赖包可以从安装镜像解压后镜像packages中获取,或网上找

binutils-2.23.52.0.1-12.el7.x86_64
compat-libcap1-1.10-3.el7.x86_64
compat-libstdc++-33-3.2.3-71.el7.i686
compat-libstdc++-33-3.2.3-71.el7.x86_64
gcc-4.8.2-3.el7.x86_64
gcc-c++-4.8.2-3.el7.x86_64
glibc-2.17-36.el7.i686
glibc-2.17-36.el7.x86_64
glibc-devel-2.17-36.el7.i686
glibc-devel-2.17-36.el7.x86_64
ksh
libaio-0.3.109-9.el7.i686
libaio-0.3.109-9.el7.x86_64
libaio-devel-0.3.109-9.el7.i686
libaio-devel-0.3.109-9.el7.x86_64
libgcc-4.8.2-3.el7.i686
libgcc-4.8.2-3.el7.x86_64
libstdc++-4.8.2-3.el7.i686
libstdc++-4.8.2-3.el7.x86_64
libstdc++-devel-4.8.2-3.el7.i686
libstdc++-devel-4.8.2-3.el7.x86_64
libXi-1.7.2-1.el7.i686
libXi-1.7.2-1.el7.x86_64
libXtst-1.2.2-1.el7.i686
libXtst-1.2.2-1.el7.x86_64
make-3.82-19.el7.x86_64
sysstat-10.1.5-1.el7.x86_64

修改内核参数配置文件

vim /etc/sysctl.conf

net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1#设置最大打开文件数
fs.file-max = 6815744
fs.aio-max-nr = 1048576
#共享内存的总量,8G内存设置:2097152*4k/1024/1024
kernel.shmall = 2097152
#最大共享内存的段大小
kernel.shmmax = 2147483648
#整个系统共享内存端的最大数
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
#可使用的IPv4端口范围
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
  • 生效
sysctl -p

修改用户的限制文件

  • 修改/etc/security/limits.conf文件:
oracle           soft    nproc           2047
oracle           hard    nproc           16384
oracle           soft    nofile          1024
oracle           hard    nofile         65536
oracle           soft    stack           10240

下载安装包

https://www.oracle.com/cn/database/technologies/microsoft-windows.html

创建用户目录

创建用户和用户组

groupadd oinstall
groupadd dba
useradd -g oinstall -g dba -m oracle
passwd oracle

删除用户

如果用户创建失败,使用下面命令删除,重建

userdel -r haha
#删不完全执行
userdel 用户名
userdel oracle
vim /etc/passwd
vim /etc/shadow
vim /etc/group
vim /etc/gshadow
find / -name "*oracle*"

创建安装目录、赋权

mkdir -p /data/oracle
#用于存放Oracle解压后的安装包
mkdir -p /data/database
#数据库配置文件目录
mkdir -p /data/oraInventory
#修改目录所有者为oracle
chown -R oracle:oinstall  /data

设置oracle用户环境变量

  • 首先切换到oracle用户下:
su - oracle
  • vim .bash_profile
#oracle数据库安装目录
export ORACLE_BASE=/data/oracle
#oracle数据库路径
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
#oracle启动数据库实例名
export ORACLE_SID=orcl
export ORACLE_UNQNAME=orcl
#xterm窗口模式安装
export ORACLE_TERM=xterm
#添加系统环境变量
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
#添加系统环境变量
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
#防止安装过程出现乱码
export LANG=C
#设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
  • 生效
source .bash_profile

上传文件到服务器

#解压
unzip linux.x64_11gR2_database_1of2.zip -d /data/database/
unzip linux.x64_11gR2_database_2of2.zip -d /data/database/
#赋权,指定用户与用户组
chown -R oracle:oinstall /data

安装

#切换至oracle用户
su - oracle
#进入oracle安装程序存放的目录
cd /data/database/database/
#执行oracle安装命令
./runInstaller

1.去掉安全检查与支持

去掉勾选框,不更新

  1. 不填邮箱提示,选择yes

  2. 只安装数据库

    4.单节点安装

    5.语言默认,English

    6, 选择企业级

  3. 数据库目录
    数据库基础目录,软件安装目录

  4. 配置文件路径

9.系统权限,选择默认

10.检查系统资源与依赖包是否都满足

Packages下面点击每一项,下面有提示,缺少64位还是32位安装包,32位可以忽略,64位最好安装一下,去镜像文件找。
遇到了交换分区不满足需要扩张分区,如果没有,可忽略。

  • 扩展swap 分区
#查看,激活交换空间
swapon -s
#扩展 count=2G*1024*1024
sudo dd if=/dev/zero of=/swapfile bs=1024 count=2097152
#建立和设置swap分区
mkswap /swapfile
#分区root可读写
swapon /swapfile
#分区大小
free -h
#开机自动挂载使用第二个swap文件
/swapfile   swap    swap    defaults    0   0
# 测试
mount -a

11 完成


不出意外肯定会报错。

  • 错误一:
    在日志文件/data/oraInventory/logs/installActions2022-03-12_09-33-36AM.log 中提示ins_ctx.mk编译错误 解决办法
    在数据安装目录下:/data/oracle/product/11.2.0/db_1/ctx/lib/ ins_ctx.mk 文件,修改文件配置
ctxhx: $(CTXHXOBJ)$(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)
修改为
ctxhx: $(CTXHXOBJ)-static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)  /usr/lib64/libc.a

继续安装,会报错

  • 问题二
    在日志文件/data/oraInventory/logs/installActions2022-03-12_09-33-36AM.log中提示ins_emagent.mk编译错误 解决办法
    修改/data/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk 文件
$(MK_EMAGENT_NMECTL)
修改为:
$(MK_EMAGENT_NMECTL) -lnnz11

重试,安装成功

默认密码

SYS:change_on_install
System:manager
Scoot:tiger
SH:sh

可以修改密码

执行下面命令,以root 用户执行

[root@localhost ~]# /data/oraInventory/orainstRoot.sh
Changing permissions of /data/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.Changing groupname of /data/oraInventory to dba.
The execution of the script is complete.
[root@localhost ~]# /data/oracle/product/11.2.0/db_1/root.sh
Running Oracle 11g root.sh script...The following environment variables are set as:ORACLE_OWNER= oracleORACLE_HOME=  /data/oracle/product/11.2.0/db_1Enter the full pathname of the local bin directory: [/usr/local/bin]: Copying dbhome to /usr/local/bin ...Copying oraenv to /usr/local/bin ...Copying coraenv to /usr/local/bin ...Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
/data/oracle/product/11.2.0/db_1/rdbms/install/rootadd_rdbms.sh: line 80: [: 6815744#设置最大打开文件数: integer expression expected
/data/oracle/product/11.2.0/db_1/rdbms/install/rootadd_rdbms.sh: line 91: [: 6815744#设置最大打开文件数: integer expression expected
[root@localhost ~]#

配置监听

切换到 oracle执行

su - oracle
netca

1

2
3 LISTENER listener

4.

5,配置端口

6.是否配其它监听
如果不配置,直接完成

7 配置监听完成

8 启动监听

/data/oracle/product/11.2.0/db_1/bin/lsnrctl start LISTENER

创建数据库

oracle账户

su - oracle
dbca

3.自定义数据库

4.输入数据库名字:ORCL

5,第一项配置默认,第二项配置账号

6

密码比较简单,回有弹框,可以忽略

7.配置数据库位置,放置到指定目录

8.查看配置

  1. 默认下一步

10 组件配置,全部清空

11 配置参数,内存,字符集等等,默认

12 数据存储目录结构

13 默认

14

15 开始创建数据库

16.安装完成

到此oracle安装完成

Linux环境安裝oracle 11g相关推荐

  1. Linux环境下安装Oracle 11g R2完整图文教程

    安装环境: 一台Linux虚拟机,Centos 6.10系统 Linux下载地址:https://mirrors.huaweicloud.com Oracle软件版本: p13390677_11204 ...

  2. linux 安装java se,Linux 下安裝 Java SE Development Kit(JDK)並配置環境變量

    終端輸入以下命令: # 創建 JDK 目錄,-p 為創建多個目錄 $ sudo mkdir -p /opt/java # 將 JDK 解壓到指定目錄(看自己的習慣) $ sudo tar zxvf ~ ...

  3. oracle 故障 linux,從硬盤安裝Oracle Linux 6.3之軟驅故障

    引入: 本篇博文重點講解的並不只是如何安裝Oracle Linux 6.3,還有一個小小的卻困擾我好幾天的錯誤. 場景: 一個空白硬盤,一個工具U盤,光盤鏡像:OracleLinux-R6-U3-Se ...

  4. 【Linux】手把手教你在 Linux 环境下部署 Oracle 数据库!

    来源:公众号[杰哥的IT之旅] 作者:三笠 相信大家第一次接触 Oracle 数据库时,大多数是在 windows 环境下安装,方便快捷,基本上可以说是一直下一步就能顺利安装成功.然而企业级的数据库, ...

  5. Linux 6.x 下Oracle 11g R2 安装配置

    Oracle 11g R2 数据库安装硬件配置要求: 最小内存 1 GB of RAM 虚拟内存容量,这个oracle也有要求,不用担心此时的swap分区不够oracle的要求 .虚拟内存swap如何 ...

  6. oracle缺少key xe.reg,【Oracle XE系列之一】Windows 7 64位安裝Oracle XE(32位)數據庫(REG_XE報錯、字符集、修改8080端口等)...

     一.安裝 1.去Oracle官網下載XE版的安裝包(貌似Windows只有32位的,Linux只有6位的),解壓. 2.雙擊Setup.exe,啟動安裝程序,在選在路徑那里不要點下一步,否則會報 ...

  7. Linux环境下 安装Oracle

    一.准备工作 Oracle Software Delivery Cloud 官网 https://edelivery.oracle.com/osdc/faces/SoftwareDelivery 1. ...

  8. linux x64下安装oracle 11g

    查看联机文档,可以看出Oracle 11g支持Linux操作系统 http://docs.oracle.com/cd/E11882_01/nav/portal_11.htm Oracle 11g 联机 ...

  9. 菜鸟在Linux零碎中安置Oracle 11G

    作者: webmaster | 来源: 中国ubuntu联盟 由于公司ERP零碎的平台为RedHat Linux ES4 Oracle10g,暂且交由我截至维护,以是想借此机会进修一下Linux,对自 ...

最新文章

  1. java final private_java – private final static属性vs private final属性
  2. 支付宝的高可用与容灾架构演进
  3. 【总结】有三AI所有GAN相关学习资料汇总,有图文、视频、代码实战等......
  4. C++职工信息管理系统
  5. Oracle/PLSQL FETCH Statement
  6. Java语言中的----条件循环
  7. Py之pandas:dataframe学习【转载】
  8. javaweb问题集锦: HikariPool-1 - Connection is not available, request timed out after 60001ms.
  9. js中的shift()函数
  10. 温控-Thermal
  11. 全差分运算放大器浅析
  12. 网络/运维工程面试题汇总二
  13. vue项目将px转为rem实践
  14. 广州图普网络科技2017校园招聘简章
  15. android第三方开发包(十七)
  16. 如何优雅地使用Origin(小技巧)【推荐】
  17. 服务器一直即将注销你的登录,Msdn我告诉你Win10系统提示即将注销你的登录?
  18. 盘点全球最热十家大数据公司中国占三席
  19. 以太坊钱包2-Android-转账(ETH)
  20. 02. 工厂设计模式

热门文章

  1. 云计算离生活还有多远
  2. 【读书笔记】自卑与超越
  3. Git基本应用<一>:Git安装及GitHub连接
  4. 基于粒子群算法的冷热电三联供综合能源系统优化调度
  5. 深度学习之昆虫种类识别
  6. 【Web技术】1154- 现代 Web 研发体系中的新一代低/零码搭建
  7. 荣耀Play6T配置怎么样 荣耀Play6T值得买吗
  8. 作为一个研发背景出身的项目经理写给IT面试者的几点建议
  9. 易經大意(7) 三和 韓長庚 著
  10. Ansible安装使用