一、安装前准备工作
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文件,确保光盘挂载点有文件
查看是否挂载成功及挂载路径
[root@zkdb ~]# df -h
已经挂载,无需再次挂载
5、配置yum源
因本服务器未连外网,故本次采用本地方式
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
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-优快云博客
因此采用直接采用命令进行更改参数。
#服务器重启后需重新设置以下内核参数
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
二、安装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
出现如下乱码问题
指定语言进行安装,解决此问题。
LANG=en_US ./runInstaller
安装时出现了图形化界面弹窗显示问题,网上搜索可以按照此方式运行安装命令,但未进行测试
./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重新检查,检查完成后还有如下报警,可以忽略
安装产品
安装时报错,根据提示需用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安装成功。
3、配置监听
#在oracle用户环境下,/u01/soft/database目录下执行
LANG=en_US netca
4、创建数据库
LANG=en_US dbca