Linux安装oracle11g
root@zabbix-agent-002 ~]# passwd oracle#修改oracle密码,或使用echo 123456 | passwd --stdin oracle修改密码。[root@zabbix-agent-002 ~]# vim /etc/security/limits.conf#在末尾添加如下参数。将rpm文件放入/u01/soft路径,并在对应路径下运行安装。返回安装页面,
一、安装前准备工作
1、关闭防火墙
[root@zkdb ~]# systemctl stop firewalld.service
[root@zkdb ~]# systemctl disable firewalld.service
2、关闭selinux
[root@zkdb ~]# vi /etc/selinux/config
更改SELINUX=disabled
3、配置host(否则会产生prvf-0002类型报错)
[root@zkdb ~]# vim /etc/hosts
添加 192.168.26.62 zkdb
4、挂载iso文件,确保光盘挂载点有文件(为了配置yum源,外网环境无需挂载)
查看是否挂载成功及挂载路径
[root@zkdb ~]# df -h

已经挂载,无需再次挂载
5、配置yum源
(1)因本服务器未连外网,故本次采用本地方式
yum源配置文件路径为 /etc/yum.reops.d
创建文件夹,备份原始配置文件,并新增一个repo文件
#创建备份文件夹
[root@zkdb ~]# mkdir repo_bak
#将原始文件转移至备份文件夹
[root@zkdb ~]# mv CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo CentOS-x86_64-kernel.repo CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo /etc/yum.repos.d/repo_bak/
#新增一个repo文件
[root@zkdb ~]# cp repo_bak/CentOS-Media.repo CentOS-Media.repo
修改新增配置文件内容,将yum源路径更改为本地光盘挂载路径(ps:本示例中文件夹名称中含有空格,在路径地址中需用“”)
[root@zkdb ~]# vim CentOS-Media.repo

清空yum缓存并重新加载
[root@zkdb yum.repos.d]# yum clean all
Loaded plugins: fastestmirror, langpacks
Cleaning repos: c7-media
Cleaning up list of fastest mirrors
[[root@zkdb yum.repos.d]# yum makecache
Loaded plugins: fastestmirror, langpacks
Determining fastest mirrors
c7-media | 3.6 kB 00:00:00
(1/4): c7-media/group_gz | 153 kB 00:00:00
(2/4): c7-media/filelists_db | 3.3 MB 00:00:00
(3/4): c7-media/primary_db | 3.3 MB 00:00:00
(4/4): c7-media/other_db | 1.3 MB 00:00:00
Metadata Cache Created
(2)若环境有外网
# 配置yum源 # 备份原有配置
sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
# 下载阿里云镜像配置
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 清理缓存
sudo yum clean all sudo yum makecache
# 安装 EPEL
sudo yum install epel-release
# 安装解压软件
sudo yum install unzip
6、安装依赖包
[root@zkdb] # yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ gcc-c++glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcclibstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaiolibaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp

安装依赖包时可能会提示某些依赖包过期,按提示卸载重装即可
7、修改内核参数
[root@zkdb yum.repos.d]# cp /etc/sysctl.conf /etc/sysctl.conf_20231108bak
[root@zkdb yum.repos.d]# vi /etc/sysctl.conf
#在末尾添加以下配置参数
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 8329226240
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
#修改完成后进行生效
[root@zkdb yum.repos.d]# sysctl -p

正常情况下均可生效成功,有时会遇到以下找不到文件的报错,针对以下报错,未找到明确的处理方法

sysctl -p报错 sysctl: cannot stat /proc/sys/net/nf_conntrack_xxxx: No such file or directory-CSDN博客
因此采用直接采用命令进行更改参数。
#服务器重启后需重新设置以下内核参数
echo 250 32000 100 128 > /proc/sys/kernel/sem
echo 2097152 > /proc/sys/kernel/shmall
echo 8329226240 > /proc/sys/kernel/shmmax
echo 9000 65500 > /proc/sys/net/ipv4/ip_local_port_range
echo 262144 > /proc/sys/net/core/rmem_default
echo 4194304 > /proc/sys/net/core/rmem_max
echo 262144 > /proc/sys/net/core/wmem_default
echo 1048576 > /proc/sys/net/core/wmem_max
此方式更改只适用于当前进程,服务器重启后则失效。为避免此问题,将以上命令写成sh脚本,在开机启动文件中进行调用。
#创建执行文件
vim /u01/auto_run_script.sh
#添加以下命令
echo 250 32000 100 128 > /proc/sys/kernel/sem
echo 2097152 > /proc/sys/kernel/shmall
echo 8329226240 > /proc/sys/kernel/shmmax
echo 9000 65500 > /proc/sys/net/ipv4/ip_local_port_range
echo 262144 > /proc/sys/net/core/rmem_default
echo 4194304 > /proc/sys/net/core/rmem_max
echo 262144 > /proc/sys/net/core/wmem_default
echo 1048576 > /proc/sys/net/core/wmem_max
#授执行权限
chmod u+x /u01/auto_run_script.sh
#修改开机启动文件
vim /etc/rc.d/rc.local
#在文件下放添加
/u01/auto_run_script.sh
#授执行权限
chmod u+x /etc/rc.d/rc.local
8、修改限制资源参数
vim /etc/pam.d/login
#在末尾添加以下参数
session required /lib64/security/pam_limits.so
session required pam_limits.sooracle hard nofile 65536
9、修改文件限制
#修改文件
vim /etc/security/limits.conf
#在末尾添加如下参数
group
10、建立oracle用户和组
[root@zkdb ~]# groupadd oinstall
[root@zkdb ~]# groupadd dba
[root@zkdb ~]# useradd oracle -g oinstall -G dba
[root@zkdb ~]# passwd oracle
Changing password for user oracle.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
11、创建安装目录和上传软件包
#创建数据库安装目录
[root@zkdb pam.d]# mkdir -p /u01/app
[root@zkdb pam.d]# chown -R oracle:oinstall /u01/app
[root@zkdb pam.d]# chmod -R 775 /u01/app
#创建数据库软件包目录
[root@zkdb pam.d]# mkdir -p /u01/soft
[root@zkdb pam.d]# chown -R oracle:oinstall /u01/soft/
[root@zkdb pam.d]# chmod -R 775 /u01/soft
12、修改oracle的环境变量
#切换oracle用户环境
[root@zkdb ~]# su -l oracle
#配置oracle用户的环境变量
[oracle@zkdb ~]$ vim .bash_profile
#增加以下内容
unset USERNAME
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
export ORACLE_SID=jqwldb
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export PATH=/usr/sbin:$PATH:$ORACLE_HOME/bin
#使环境变量立即生效
[oracle@zkdb ~]$ source .bash_profile
13、解决用户访问切换及图形化显示
[oracle@zkdb root]# xhost +
xhost: unable to open display ""
You have mail in /var/spool/mail/root
[oracle@zkdb root]# DISPLAY=:0.0
[oracle@zkdb root]# export DISPLAY
[oracle@zkdb root]# echo $DISPLAY
:0.0
[oracle@zkdb root]# xhost
access control enabled, only authorized clients can connect
SI:localuser:root
SI:localuser:oracle
[oracle@zkdb root]# xhost +
access control disabled, clients can connect from any host
[oracle@zkdb root]# su -l oracle
Password:
Last login: Mon Nov 6 14:30:27 CST 2023 on pts/2
[oracle@zkdb ~]# export DISPLAY=:0.0
后面安装监听及数据库时可能会因为图形化显示问题报错,届时需重新执行export DISPLAY=:0.0,执行后重新执行netca和dbca
二、安装oracle
1、解压安装文件
su -l oracle
cd /u01/soft
unzip linuxamd64_12102_database_1of2.zip
unzip linuxamd64_12102_database_2of2.zip
2、安装
cd /u01/soft/database
./runInstaller
出现如下乱码问题

指定语言进行安装,解决此问题。可能还会出现图形化界面弹窗显示问题,增加-jreLoc /etc/alternatives/jre_1.8.0
LANG=en_US ./runInstaller -jreLoc /etc/alternatives/jre_1.8.0
安装过程截图:

不勾选接收邮件

跳过软件更新

选择仅安装数据库

选择单实例安装

选择语言


选择存储数据库和数据库配置文件的位路径


选择oracle的主组

先决条件检查

检查先决条件时出现软件包缺失,需补充安装依赖
将rpm文件放入/u01/soft路径,并在对应路径下运行安装。安装时发现依赖冲突,卸载冲突依赖后重新安装
#安装缺失依赖compat
[root@zkdb ~]# cd /u01/soft
[root@zkdb soft]# rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
Preparing... ################################# [100%]
Updating / installing...
1:compat-libstdc++-33-3.2.3-72.el7 ################################# [100%]
#安装缺失依赖pdksh,报错依赖冲突
[root@zkdb soft]# rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
warning: pdksh-5.2.14-37.el5_8.1.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID e8562897: NOKEY
error: Failed dependencies:
pdksh conflicts with (installed) ksh-20120801-142.el7.x86_64
#卸载冲突依赖
[root@zkdb soft]# rpm -e ksh-20120801-142.el7.x86_64
#重新安装
[root@zkdb soft]# rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
warning: pdksh-5.2.14-37.el5_8.1.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID e8562897: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:pdksh-5.2.14-37.el5_8.1 ################################# [100%]
点击check Again重新检查,检查完成后还有如下报警,可以忽略



安装产品

安装时可能会出现需要运行脚本或Error in invoking target ‘agent nmhs’ of makefile的报错,具体处理方法如下:
(1)安装时报错,根据提示需用root用户运行以下脚本

运行第二条脚本时出现以下提示

需输入:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
出现此结果则表示成功

[root@zkdb ~]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
[root@zkdb ~]# /u01/app/oracle/product/11.2.0/db_1/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/11.2.0/db_1
Enter 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 .../u01/app/oracle/product/11.2.0/db_1/install/utl/rootinstall.sh: line 24: [: too many arguments
/u01/app/oracle/product/11.2.0/db_1/install/utl/rootinstall.sh: line 29: [: too many arguments
/u01/app/oracle/product/11.2.0/db_1/install/utl/rootinstall.sh: line 57: [: too many arguments
Warning: Copying dbhome to /usr/local/bin ... is read only. No files will be copied.
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 script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
返回安装页面,点击OK,oracle安装成功。
(2)安装到86%时出现报错 Error in invoking target ‘agent nmhs’ of makefile

在makefile中添加链接libnnz11库的参数
修改$ORACLE_HOME/sysman/lib/ins_emagent.mk,找到下面这行
进入vi编辑器后 命令模式输入/NMECTL 进行查找,快速定位要修改的行。
$(MK_EMAGENT_NMECTL)
在后面追加参数-lnnz11,修改为如下,PS: 第一个是字母l,后面两个是数字1。
$(MK_EMAGENT_NMECTL) -lnnz11
保存退出后Retry
3、配置监听
#在oracle用户环境下,/u01/soft/database目录下执行
LANG=en_US netca








一般情况下安装完成后监听会自动启动,但建议检查下监听状态,若未启动需手动启动
# 检查监听器状态
lsnrctl status
# 如果未启动,启动监听器
lsnrctl start
# 确认监听器正在运行
lsnrctl status
4、创建数据库
LANG=en_US dbca




















5、验证安装是否成功

6、设置服务器重启后orace服务自启动
(1)修改oracle自启动配置文件/etc/oratab,修改N为Y,允许oracle数据库在系统启动时启动 。
orcl:/u01/app/oracle/product/11.2.0/dbhome_1:Y
(2)设置/etc/rc.d/rc.local
用root用户修改此文件,增加两行:
先用dbstart启动数据库,然后启动监听程序,两个命令都用双引号。
启动监听的命令有空格,lsnrctl start ,必须使用双引号。
su root -lc
su oracle -lc "/u01/app/oracle/product/11.2.0/db_1/bin/dbstart"
su oracle -lc "/u01/app/oracle/product/11.2.0/db_1/bin/lsnrctl start"
(3) 设置权限
chmod u+x /etc/rc.d/rc.local
创建执行文件
vim /u01/auto_run_script.sh
添加
echo 250 32000 100 128 > /proc/sys/kernel/sem
echo 2097152 > /proc/sys/kernel/shmall
echo 8329226240 > /proc/sys/kernel/shmmax
echo 9000 65500 > /proc/sys/net/ipv4/ip_local_port_range
echo 262144 > /proc/sys/net/core/rmem_default
echo 4194304 > /proc/sys/net/core/rmem_max
echo 262144 > /proc/sys/net/core/wmem_default
echo 1048576 > /proc/sys/net/core/wmem_max
授执行权限
chmod u+x /u01/auto_run_script.sh
更多推荐




所有评论(0)