华为欧拉安装部署:Oracle11g

news2024/11/27 17:59:35
一、环境准备

1、下载安装低版本的libaio包;libaio版本太高,会造成编译错误

查看libaio1库版本不能大于0.3.109

[oracle@s3 install]$ rpm -qa libaio
libaio-0.3.110-12.el8.x86_64

# 查看欧拉操作系统版本
[oracle@localhost bin]$ cat /etc/os-release
NAME="openEuler"
VERSION="22.03 (LTS-SP1)"
ID="openEuler"
VERSION_ID="22.03"
PRETTY_NAME="openEuler 22.03 (LTS-SP1)"
ANSI_COLOR="0;31"
# 下载
wget http://mirrors.ustc.edu.cn/centos/7.9.2009/os/x86_64/Packages/libaio-0.3.109-13.el7.x86_64.rpm

# 备份原来的libaio.so.1
mv /usr/lib64/libaio.so.1.0.1 /usr/lib64/libaio.so.1.0.120240103

# 解压
rpm2cpio libaio-0.3.109-13.el7.x86_64.rpm |cpio -idmv

# 把解压后的文件拷贝到/usr/lib64下
cp -r /root/lib64/libaio.so.1 /usr/lib64
mv /root/lib64/libaio.so.1.0.1 /usr/lib64

2、修改系统时间

[root@localhost ~]# date -s “2022-05-09 09:11:40”

[root@localhost ~]# hwclock -w

3、修改host,绑定主机名

修改 vim /etc/hosts文件

[root@localhost ~]# hostname
localhost.localdomain
[root@localhost ~]# vim /etc/hosts
192.168.9.138    localhost.localdomain

4、关闭selinux,设置SELINUX= enforcing 为SELINUX=disabled

setenforce 0
vim /etc/selinux/config
命令方式:
	sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

5、关闭防火墙

systemctl stop firewalld
systemctl disable firewalld
二、安装配置

2.1、安装依赖

在线安装
yum install -y binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat elfutils-libelf-devel unixODBC unixODBC-devel numactl-devel elfutils-libelf-devel-static pcre-devel

离线安装:先找台公网机器下载
yum -y install binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat elfutils-libelf-devel unixODBC unixODBC-devel numactl-devel elfutils-libelf-devel-static pcre-devel --downloadonly --downloaddir /root/rpm

2.2、添加oinstall 、dba 组,新建oracle用户并加入oinstall、dba组中

groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
[root@localhost ~]# id oracle

2.3、修改内核参数

[root@localhost db]# vim /etc/sysctl.conf

(在文件末尾添加)内容如下:

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
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

让参数生效: 
/sbin/sysctl -p

在这里插入图片描述

2.4、配置Oracle用户参数

[root@localhost /]# vim /etc/security/limits.conf

(在文件末尾添加)内容如下:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240

2.5、修改/etc/pam.d/login 文件

[root@localhost ~]# vim /etc/pam.d/login

(在文件末尾添加)内容如下:
session  required   /lib64/security/pam_limits.so
session  required   pam_limits.so

2.6、修改/etc/profile 文件

[root@localhost ~]# vim /etc/profile
在如下位置添加:
……
unset i
unset -f pathmunge

if [ $USER = "oracle" ]; then

    if [ $SHELL = "/bin/ksh" ]; then

        ulimit -p 16384

        ulimit -n 65536

    else

        ulimit -u 16384 -n 65536

    fi

fi
使之生效:
source /etc/profile

在这里插入图片描述

2.7、创建安装目录app&&静默安装目录etc

[root@localhost home]# mkdir -p /apps/oracle/app/
[root@localhost home]# mkdir -p /apps/oracle/etc/
[root@localhost home]# chown -R oracle:oinstall /apps/oracle
[root@localhost home]# chmod 775 /apps/oracle

2.8、上传oracle安装包到:/apps/oracle/app/下,并解压,会生成一个database目录

unzip p13390677_112040_Linux-x86-64_1of7.zip
unzip p13390677_112040_Linux-x86-64_2of7.zip

2.9、添加环境变量

# 切换oracle用户
su  oracle

编辑环境变量,并生效
[oracle@localhost ~]$ vim /home/oracle/.bash_profile
[oracle@localhost ~]$ source .bash_profile

内容如下:
PATH=$PATH:$HOME/.local/bin:$HOME/bin
# oracle安装目录
export ORACLE_BASE=/apps/oracle/app
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0
# oracle实例SID名称
export ORACLE_SID=xwtechdb
# 同SID
export ORACLE_TERM=xwtechdb
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LANG=C
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
# 同SID
export ORACLE_UNQNAME=xwtechdb
export PATH=$ORACLE_HOME/bin:$PATH
export PATH
export SQLPATH=/apps/oracle/labs
三、部署

3.1、编辑/apps/oracle/etc/目录下db_install.rsp(根据实际编写)

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=localhost
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/apps/oracle/app/oraInventory
SELECTED_LANGUAGES=en,zh_CN,zh_TW
ORACLE_HOME=/apps/oracle/app/product/11.2.0
ORACLE_BASE=/apps/oracle/app
oracle.install.db.InstallEdition=EE
oracle.install.db.EEOptionsSelection=false
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.enableSecuritySettings=true
DECLINE_SECURITY_UPDATES=true

3.2、安装数据库

3.2.1、在路径:/apps/oracle/app/database下执行命令

./runInstaller -silent -force -responseFile /apps/oracle/etc/db_install.rsp -ignorePrereq

在这里插入图片描述
3.2.2、执行root.sh

[oracle@localhost database]$ sh /apps/oracle/app/product/11.2.0/root.sh

3.3、配置监听文件,并执行安装

3.3.1、编辑/apps/oracle/etc/目录下netca.rsp

[oracle@localhost database]$ vim /apps/oracle/etc/netca.rsp

(文件末尾添加)
Parsing command line arguments:
Parameter "silent" = true
Parameter "responsefile" = /apps/oracle/etc/netca.rsp
Done parsing command line arguments.
Oracle Net Services Configuration:
Profile configuration complete.
Oracle Net Listener Startup:
Running Listener Control:
/apps/oracle/app/product/11.2.0/bin/lsnrctl start LISTENER  # 实际安装目录
Listener Control complete.
Listener started successfully.
Listener configuration complete.
Oracle Net Services configuration successful. The exit code is 0

3.3.2、安装:

cd /apps/oracle/app/product/11.2.0/bin
netca /silent /responsefile /apps/oracle/etc/netca.rsp

在这里插入图片描述

3.4、启动监听

先查看lsnrctl文件大小是否为0,如果为0,考虑lib64.so.1文件是否安装低版本

[oracle@localhost bin]$ ls -l lsnrctl
-rwxr-x--x 1 oracle oinstall 158440 Jan  3 13:53 lsnrctl
[oracle@localhost bin]$

# 启动监听
[oracle@localhost bin]$ lsnrctl start

LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 03-JAN-2024 14:15:03

Copyright (c) 1991, 2013, Oracle.  All rights reserved.

TNS-01106: Listener using listener name LISTENER has already been started

在这里插入图片描述

3.5、静默建库

3.5.1、编辑文件:vim /apps/oracle/etc/dbca.rsp

[GENERAL]                                                                                                                                                                                                              
RESPONSEFILE_VERSION = "11.2.0"                                                                                                                                                                                                                                             
OPERATION_TYPE = "createDatabase"                                                                                                                                                                                                                                           
[CREATEDATABASE]                                                                                                                                                                                                                   
GDBNAME = "xwtechdb"         #数据库的名字,与环境变量配置保持一致                                                                                                                                                                                                                                          
SID = "xwtechdb"             #对应的实例名字,与环境变量配置保持一致                                                                                                                                                                                                                                                    
SYSPASSWORD = "sysdba"         #SYS管理员密码                                                                                                                                                                                                                                             
SYSTEMPASSWORD = "sysdba"     #SYSTEM管理员密码                                                                                                                                                                                                                                              
SYSMANPASSWORD = "sysdba"                                                                                                                                                                                                                                                   
DBSNMPPASSWORD = "sysdba"                                                                                                                                                                                                                                                                                                                                                                                                                                               
CHARACTERSET = "ZHS16GBK"   

3.5.2、执行建库命令:

cd /apps/oracle/app/product/11.2.0/bin
dbca -silent -responseFile /apps/oracle/etc/dbca.rsp

在这里插入图片描述

3.6、启动

# 复制启动文件:$oracle_base的pfile下的init.ora文件到$oracle_home的dbs下为init(数据库名).ora
cp /apps/oracle/app/admin/orcl11g/pfile/init.ora.032024142145 /apps/oracle/app/product/11.2.0/dbs/initxwtechdb.ora

# 启动
[oracle@localhost bin]$ sqlplus / as sysdba
SQL> startup
ORACLE instance started.

Total System Global Area  534462464 bytes
Fixed Size                  2254952 bytes
Variable Size             218105752 bytes
Database Buffers          306184192 bytes
Redo Buffers                7917568 bytes
Database mounted.
Database opened.
SQL>

在这里插入图片描述

遇到错误:
如遇到,重启一下机器,再启动即可
SQL> startup
ORACLE instance started.

Total System Global Area  534462464 bytes
Fixed Size                  2254952 bytes
Variable Size             218105752 bytes
Database Buffers          306184192 bytes
Redo Buffers                7917568 bytes
ORA-01102: cannot mount database in EXCLUSIVE mode

启动失败参考文档
https://blog.csdn.net/lzwgood/article/details/26368323

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1357127.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Pytest自动化的坑

1、封装pytest的类型,名称的开头需要使用Test开头命名类,否则会出现运行pytest找不到类的情况 2、函数被pytest.fixtrue装饰之后,就不能再直接引用函数方法,需要把函数名称当作参数传到其他的函数中使用 3、conftest的全局变量名称…

手写一个加盐加密算法(java实现)

目录 前言 什么是MD5?? 加盐算法 那别的人会不会跟你得到相同的UUID? 如何使用盐加密? 代码实现 前言 对于我们常见的登录的时候需要用到的组件,加密是一个必不可少的东西,如果我们往数据库存放用户…

PHP 基础编程 2

文章目录 时间函数dategetdatetime 使用数组实现登录注册和修改密码简单数组增加元素方法修改元素方法删除元素方法 具体实现方法数组序列化数组写入文件判断元素是否在关联数组中(登录功能实现)实现注册功能实现修改admin用户密码功能 时间函数 时区&am…

大数据情况下如何保证企业数据交换安全

数据交换是指在网络或其他方式下,不同主体按照规定的规则和标准实现数据的共享、传输和处理的过程。大数据时代的到来使得数据交换的重要性更为凸显,大数据带来了海量、多样、高速、低价值密度等特点,也带来了更多的价值挖掘和应用场景。 保障…

Spring常用注解及模拟用户登录流程示例

注解 Resource注解实现自动注入 (反射)代码块xml配置文件 Autowired注解实现自动化注入代码块xml配置文件 扫描器-四个注解Dao层-RepositoryService层-ServiceController层-Controller测试任意类-Component 常用注解示例-模拟用户登录配置自动扫描的xml文件实体类Userdao层消息…

Java异常简单介绍

文章目录 1. 异常分类和关键字1.1 分类1.2 关键字 2. Error2.1 Error定义2.2 常见的Error2.2.1 VirtualMachineError2.2.2 ThreadDeath2.2.3 LinkageError2.2.4 AssertionError2.2.5 InternalError2.2.6 OutOfMemoryError2.2.6.1 OOM原因2.2.6.2 OutOfMemoryError会导致宕机吗 …

【React系列】Hook(一)基本使用

本文来自#React系列教程:https://mp.weixin.qq.com/mp/appmsgalbum?__bizMzg5MDAzNzkwNA&actiongetalbum&album_id1566025152667107329) 一. 认识hook 1.1. 为什么需要hook Hook 是 React 16.8 的新增特性,它可以让我们在不编写class的情况下…

Java多线程技术10——线程池ThreadPoolExecutor之Executor接口

1 概述 在开发服务器软件项目时,经常需要处理执行时间很短并且数据巨大的请求,如果为每一个请求创建一个新的线程,则会导致性能上的瓶颈。因为JVM需要频繁地处理线程对象的创建和销毁,如果请求的执行时间很短,则有可能…

【linux】日志管理和分析

一、概述 在Linux系统的管理和运维中,日志文件起到至关重要的作用。它们记录了系统运行过程中的各种事件,包括系统故障、性能数据和安全事件。 二、 日志的作用和分类 日志的作用 日志文件记载了系统的生命线,利用它们可以: 1…

Linux第7步_设置虚拟机的电源

设置ubuntu代码下载源和关闭“自动检查更新”后,就要学习设置“虚拟机的电源”了。 用处不大,主要是了解”螺丝刀和扳手形状的图标“在哪里。 1、打开虚拟机,点击最右边的“下拉按钮”,弹出对话框,得到下图&#xff…

【算法】算法设计与分析 期末复习总结

第一章 算法概述 时间复杂度比大小,用代入法,代入2即可。求渐进表达式,就是求极限,以极限为O的括号;O是指上界,Ω是指下界,θ是指上下界相等,在这里,可以这样理解&#…

覆盖与交换-第四十二天

目录 内存空间的扩充 覆盖技术 实例 交换技术 思考 本节思维导图 内存空间的扩充 历史背景:早期计算机内存很小,内存大小不够的情况解决办法:后来人们引入了覆盖技术,用来解决“程序大小超过物理内存总合”的问题 覆盖技术…

Elasticsearch:Serarch tutorial - 使用 Python 进行搜索 (二)

这个是继上一篇文章 “Elasticsearch:Serarch tutorial - 使用 Python 进行搜索 (一)” 的续篇。在今天的文章中,我们接着来完成如何进行分页及过滤。 分页 - pagination 应用程序处理大量结果通常是不切实际的。 因此&#xff0…

【QT 5 +Linux下+录屏软件使用+总结说明+使用录屏软件+简单软件使用+SimpleScreenRecorder+操作说明】

【【QT 5 Linux下录屏使用录屏软件简单软件使用SimpleScreenRecorder操作说明】】 1、前言2、实验环境3、录屏软件综述SimpleScreenRecorder:Kazam:OBS Studio (Open Broadcaster Software):VokoscreenNG:RecordMyDesktop&#xf…

Spring 面试题学习笔记整理

Spring 面试题学习笔记整理 Spring的理解IOC读取 xml注入 配置过程解析注解注入过程 高频 :IOC 理解 及原理 底层实现IoC的底层实现高频:Bean的生命周期(图解)高频:Bean的生命周期(文解)扩展知识…

如何使用Cloudreve+Cpolar搭建个人PHP云盘系统并发布公网可访问

文章目录 1、前言2、本地网站搭建2.1 环境使用2.2 支持组件选择2.3 网页安装2.4 测试和使用2.5 问题解决 3、本地网页发布3.1 cpolar云端设置3.2 cpolar本地设置 4、公网访问测试5、结语 1、前言 自云存储概念兴起已经有段时间了,各互联网大厂也纷纷加入战局&#…

【自学笔记】01Java基础-08Java常用API:String、ArrayList集合

记录学习Java基础中有关应用程序接口(API)的基础知识,包括两个常用类String和ArrayList类的介绍。 什么是API? API是Application Programming Interface(应用程序编程接口)的缩写,它是一组预先…

陪诊系统|北京陪诊小程序提升陪诊服务效果

随着科技的不断发展,人们对于医疗服务的需求也越来越高。在过去,陪诊师和陪诊公司通常需要通过电话或传真等传统方式与医院进行沟通和安排。然而,现在有了陪诊小程序,这些问题得到了解决。本文将介绍陪诊小程序的开发流程和功能&a…

Python 简单爬虫程序及其工作原理

前言 网络中包含大量的数据,这些数据对于我们来说是非常有价值的,因此编写一个爬虫程序,自动从网页中获取所需的数据,对于信息收集和分析是非常有帮助的。Python 是一种高效而灵活的编程语言,它提供了强大的库和框架来…

SpringBoot学习(三)-整合JDBC、Druid、MyBatis

注:此为笔者学习狂神说SpringBoot的笔记,其中包含个人的笔记和理解,仅做学习笔记之用,更多详细资讯请出门左拐B站:狂神说!!! 一、整合JDBC使用(理解) 创建项目 勾选依赖启动器 查看依赖 …