阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS 7 安装 Oracle 11gR2 实际操作

170次阅读
没有评论

共计 5809 个字符,预计需要花费 15 分钟才能阅读完成。

一、准备工作

1、下载 Oracle 安装包:linux.x64_11gR2_database_1of2.zip 和 linux.x64_11gR2_database_2of2.zip,可以下载到本地,通过 ftp 服务上传到 Linux 系统,也可以使用 Linux 系统的 wget 命令,下载文件包;

2、创建运行 oracle 数据库的系统用户和用户组:

用 Root 账号登录,运行下面指令,创建所需要用户和用户组,分组原因参考网址

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 用户

3、创建 oracle 数据库安装目录(运行下面指令,创建账号和分配权限)

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

4、设置内核版本

echo RedHat-7 > /etc/redhat-release

5、安装依赖包

yum install -y binutils compat-gcc* compat-glibc* compat-libcap1 compat-libstd* compat-libstdc++-33 compat-libstdc++-33.i686 compat-libstdc++-33*.i686 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-devel.i686 glibc-devel*.i686 glibc-headers glibc.i686 glibc*.i686 ksh libaio libaio-devel libaio-devel.i686 libaio-devel*.i686 libaio.i686 libaio*.i686 libgcc libgcc.i686 libgcc*.i686 libstdc++ libstdc++-devel libstdc++-devel*.i686 libstdc++.i686 libstdc++*.i686 libXp make numactl sysstat unixODBC unixODBC-devel unixODBC-devel*.i686 unixODBC*.i686

6、关闭防火墙和 SELINUX

6.1、配置防火墙,开启 FTP 服务器需要的端口

CentOS 7.0 默认使用的是 firewall 作为防火墙,关闭 firewall:

systemctl stop firewalld.service #停止 firewall

systemctl disable firewalld.service #禁止 firewall 开机启动

6.2、关闭 SELINUX

>

vi /etc/selinux/config

#SELINUX=enforcing #注释掉

#SELINUXTYPE=targeted #注释掉

SELINUX=disabled #增加

:wq! #保存退出

setenforce 0 #使配置立即生效

>

7、修改内核参数

>

vi /etc/sysctl.conf #红色部分是要添加 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
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

>

8、对 oracle 用户设置限制,提高软件运行性能(红色为添加部分)

vi /etc/security/limits.conf  #红色部分要添加到 Limits.conf 内容

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

9、配置用户的环境变量(红色部分为添加代码)

>

vi /home/oracle/.bash_profile  #红色部分是要追加 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=$ORACLE_HOME/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 安装时设置的字符集保持一致

>

配置完成,:wq! 保存退出,运行 source /home/oracle/.bash_profile 时上述配置生效

10、获取安装包文件后解压安装包

获取安装包文件的方式,可通过 ftp 服务器,也可通过 wget 下载到指定目录,解压方式如下

unzip linux.x64_11gR2_database_1of2.zip -d /data/  #解压文件 1
unzip linux.x64_11gR2_database_2of2.zip -d /data/  #解压文件 2
chown -R oracle:oinstall /data/database/ #分配安装文件授权 Oracle

>

二、CentOS 7 安装图形界面

之前公司的服务器都是用的 CentOS 的系统,需要安装图形界面的时候我会执行以下命令

yum -y groupinstall “X Window System” “Fonts” “Desktop”

这种安装的是应该 kde 桌面,桌面现在主要有两种,kde 和 gnome。kde 适合客户端,装了很多应用,操作起来像 Windows 一样,gnome 适合服务器端,更精简一些。

但是后来 CentOS 7 使用这个方法安装的时候不行,所以使用了下面的命令安装

yum groupinstall “GNOME Desktop” “Graphical Administration Tools”
ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target
startx

执行完之后就安装成功了。

注:若所安装的 CentOS 为精简服务器版本,没有图像化界面的话,是无法成功安装 oracle 的,oracle 的安装步骤需要在图形化界面下完成。否则命令行会报如下异常:

>

[root@localhost database]# su oracle ./runInstaller
正在启动 Oracle Universal Installer…

检查临时空间: 必须大于 120 MB。实际为 9383 MB    通过
检查交换空间: 必须大于 150 MB。实际为 2047 MB    通过
检查监视器: 监视器配置至少必须显示 256 种颜色
    >>> 无法使用命令 /usr/bin/xdpyinfo 自动检查显示器颜色。请检查是否设置了 DISPLAY 变量。未通过 <<<<

未通过某些要求检查。必须先满足这些 要求,

然后才能继续安装,

是否继续? (y/n) [n]

>

三、Oracle 安装

1、oracle 用户登录系统,使用命令行跳转到 data/database 目录下,输入./runInstaller 调出安装页面;

CentOS 7 安装 Oracle 11gR2 实际操作

2、调出安装页面,点击下一步进行安装,我选择仅数据库服务安装

CentOS 7 安装 Oracle 11gR2 实际操作

像 Window 安装 Oracle 安装一样,此处不再重复介绍。

安装完成之后,通过 netca 打开监听配置页面,通过执行 dbca 命令,启动 oracle 实例安装界面, 一个 Oracle 服务可以对应多个实例,一个 Oracle 数据库对应多个表空间和用户名,每个用户名又可管理表空间。

安装完成实例之后,使用 sqlPlus 命令链接数据库的时候,提示 could not open parameter file “/data/Oracle/product/11.2/db_1/dbs/initorcl.ora”,这个时候需要将刚刚安装的 Oracle 实例配置文件($ORACLE_BASE/admin / 数据库名称 /pfile 目录下的 init.ora.012009233838 形式的文件)拷贝到 /data/Oracle/product/11.2/db_1/dbs 目录下

[oracle@localhost pfile]$ pwd
/data/oracle/admin/MLUCDB/pfile
[oracle@localhost pfile]$ cp init.ora.962016224738  /data/Oracle/product/11.2/db_1/dbs/initorcl.ora
# 使用 sqlplus 命令登录 Oracle,重启服务器
sqlplus  /nolog
conn / as sysdba;
# 再输入 startup,回车. 这步是启动 oracle 服务。
startup

重启服务器之后,打开 Oracle,提示 ORA-01034: ORACLE not available ORA-27101

原因在于未启动服务,操作的方式是:

1、启动 oracle 监听:cmd 命令行窗口下,输入 lsnrctl start,回车即启动监听;

2、采用 sqlplus /nolog 登录 Oracle 服务,连接服务 conn /as sysdba,然后 startup 启动服务

四、扩展 RedHat 下 Oracle 的安装

1、RedHat 系统版本尽量使用 Desk 版本,便于 Oracle 的界面安装,Oracle 安装文件传输到 RedHat 服务器,可以通过 SecureCrt 远程客户端完成数据的传输。

2、记得配置用户换机下的安装编码,否则 oracle 安装会出现乱码:

vi /home/oracle/.bash_profile  #追加配置文件
export LANG=C #防止安装过程出现乱码
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK  #设置 Oracle 客户端字符集,必须与 Oracle 安装时设置的字符集保持一致

五、安装中的问题

1、swap 安装不通过

This is a prerequisite condition to test whether sufficient total swap space is available on the system. (more details)
Expected Value
: 15.64GB (1.6403472E7KB)  16400000
Actual Value
: 4.87GB (5111800.0KB)

问题原因是没有 swap 空间不足导致,需要扩大交换空间

解决:

1、使用 dd 命令创建一个 swap 分区

2、#dd if=/dev/zero of=/home/swap bs=1024 count=16400000

3、格式化刚才创建的分区

4、# mkswap /home/swap

5、再使用 swapon 命令把这个文件分区变成 swap 分区

6、#swapon /home/swap

7、(关闭 SWAP 分区的命令为:#swapoff /home/swap)

8、再用 free -m 查看已经扩容的了 swap 分区。

9、为了能够让 swap 自动挂载,需要修改 etc/fstab 文件,用 vi /etc/fstab

10、在文件末尾加上 /home/swap swap swap default 0 0

11、这样就算重启系统,swap 分区也不用手动挂载了

12、但是我感觉好像我重启了系统 swap 就没有了,然后我又百度了一下,要执行下面一段命令  #echo  “swapon  /home/swap” >> /etc/inittab

13、然后在看 vi 看下 /etc/inittab

14、最后一行是 swapon  /home/swap,这样就万事大吉了。

参考

CentOS7 安装 Oracle 11gR2 图文详解  https://www.linuxidc.com/Linux/2016-04/130559p3.htm

更多 Oracle 相关信息见Oracle 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=12

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-22发表,共计5809字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中