目前Centos7官网已停止维护,其官方下载源不能使用,在经过网上各类教程的洗礼之后,我放弃了给它更换国内的下载源(换完了也不行(小声bb))。于是我想到了是否可以找一个可以兼容Centos7的平替系统,即Almalinux。
本文主要介绍在低配版Almalinux8.9系统(如云服务器(1g,2g),虚拟机等)下如何安装oracle数据库。
1、操作系统:
Almalinux8.9(我用的是阿里云的云服务器,不知道虚拟机能不能装这个系统)
2、字符集设置为 zh_CN.UTF-8(默认似乎就是)
3、查看内存和交换区的大小
使用 free -m命令查看系统的内存和交换区,安装oracle的物理内存需要1024MB以上,交换区的大小要求如下所示:
可用内存 | 交换区大小 |
1024MB到2048MB之间。 | 1.5倍于物理内存。 |
2049MB到8192MB之间。 | 1倍于物理内存。 |
大于8192MB。 | 0.75倍于物理内存。 |
上图中Swap行显示的是交换区的大小和使用情况,此时大小为0,因此我们需要创建交换区。
4、创建交换区
1)用root用户执行dd命令创建/swap1文件
dd if=/dev/zero of=/swap1 bs=1024 count=2048000
2)把/swap1文件设置成交换区
/sbin/mkswap /swap1
3)把/swap1交换区设置为有效状态
/sbin/swapon /swap1
4)用free -m命令查看交换区,确认已生效
5)修改/etc/fstab文件,让CentOS操作系统在每次重启时自动加载/swap1交换区。
在/etc/fstab文件中增加以下内容。
/swap1 swap swap defaults 0 0
5、安装对应的依赖包
安装Oracle之前,还需要安装一些CentOS的软件包,用以下命令执行安装(用root用户执行)。
sudo dnf update -y
sudo dnf install epel-release
sudo dnf makecache --refresh
yum install -y binutils* elfutils-libelf* gcc* glibc* ksh* libaio* libgcc* libstdc* make* sysstat* libXp* glibc-kernheaders ksh binutils glibc glibc-common glibc-devel libaio libaio-devel libgcc libstdc++ sysstat libXp unixODBC unixODBC-devel
sudo dnf install -y libstdc++.i686
sudo dnf install -y elfutils-libelf elfutils-libelf-devel
sudo dnf groupinstall -y "Development Tools"
sudo dnf install -y libstdc++-devel
sudo dnf install -y make
sudo dnf install -y numactl
sudo dnf install libnsl
6、修改/etc/sysctl.conf文件,/etc/sysctl.conf是操作系统的核心参数配置文件,在文件最后增加以下行,注意,kernel.shmmax参数的值为操作系统内存的一半,单位是字节。例如,操作系统总内存如果是2048MB,那么kernel.shmmax的值应该是1*1024*1024*1024=1073741824,即kernel.shmmax = 1073741824
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax= 1073741824
kernel.shmmni= 4096
kernel.sem = 250 32000100 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
7、修改/etc/security/limits.conf文件,/etc/security/limits.conf是操作系统对用户使用资源的配置文件,在文件最后增加以下行
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle hard stack 10240
8、修改/etc/pam.d/login文件,/etc/pam.d/login是用户认证文件,在文件最后增加以下行
session required /lib64/security/pam_limits.so
9、 修改/etc/profile文件,/etc/profile是系统环境参数配置文件,在文件最后增加以下行
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
10、修改/etc/selinux/config文件,/etc/selinux/config是SELinux配置文件,修改SELINUX的值,禁用它
SELINUX=disabled
11、重启服务器
init 6 或 reboot
12、创建Oracle用户和组
Oracle的安装用户是oracle,组是dba,oracle用户的根目录是/oracle,不能采用其它目录(注意是小写的字母),如果/oracle目录的空间不够,可以采用软链接的方式,把有/oracle链接到其它有足够空间的目录
1)创建dba组
groupadd dba
2)创建oracle用户,组名是dba,用户根目录是/oracle,其它目录不行
useradd -n oracle -g dba -d /oracle
3)修改oracle用户的密码
passwd oracle
13、 获得Oracle压缩包
软件安装包下载地址在末尾,文件名是oracle11gR2.tgz
14、解开压缩包
把Oracle的压缩包文件oracle11gR2.tgz上传到服务器的/tmp目录
切换到oracle用户,在根目录下执行解开压缩包,其它目录不行,指令如下:
su - oracle
cd /
tar zxvf /tmp/oracle11gR2.tgz
exit;
注意,解压缩包后,一定要退出oracle用户(即exit指令),否则oracle用户的环境变量不会生效。
15、数据库的启动
用oracle用户登录,执行lsnrctl start启动网络监听服务,执行dbstart启动数据库系统。
16、数据库的关闭
用oracle用户登录,执行lsnrctl stop关闭网络监听服务,执行dbshut关闭数据库系统。
在重启或关闭服务器操作系统之前,一定要关闭数据库,否则数据库损坏的概率非常大。
这是我的安装历程,我成功安装了,如果有朋友有更好的方法,欢迎讨论!!!
算了,一个个要软件包太麻烦了,我贴个夸克网盘的地址,自己去下载吧
我用夸克网盘分享了「oracle11gR2.tgz」,点击链接即可保存。打开「夸克APP」,无需下载在线播放视频,畅享原画5倍速,支持电视投屏。
链接:https://pan.quark.cn/s/611740df5775
提取码:CnAQ
标签:dnf,平替,低配,swap1,sudo,用户,Centos7,etc,oracle From: https://blog.csdn.net/santu_tust/article/details/142299709