实战篇:小白都能看懂的Linux安装Oracle数据库详细教程丨【绽放吧!数据库】

实战篇:小白都能看懂的Linux安装Oracle数据库详细教程丨【绽放吧!数据库】

前言

一、前期准备

1 虚拟机安装包

2 Oracle软件安装包

3 Linux系统安装包

4、Linux远程连接工具

二、Linux主机配置

1 主机名配置

2 网络配置

3 配置Hosts文件

4 防火墙配置

5 Selinux配置

6 ISO镜像源配置

7 安装Oracle依赖包

8 配置ZeroConf

9 关闭透明大页和numa

10 配置系统参数文件

11 配置系统资源限制

12 创建用户和组

13 创建Oracle安装目录

三、Oracle软件安装

1 Oracle软件包上传

2 解压Oracle软件安装包

3 安装VNC软件

4 连接VNC远程工具或者直接打开虚拟机图形化界面

四、创建数据库

1 打开监听

2 连接VNC远程工具或者直接打开虚拟机图形化界面

五、连接数据库

1 通过数据库主机连接

2 通过PL/SQL连接test用户

前言

相信大家第一次接触Oracle,大都是在windows上安装,比较方便快捷,基本上是一直下一步就可以安装成功。然而企业级的数据库,基本上都是安装在Linux服务器上,安全且高效。

没接触Linux的朋友不用害怕,跟着本篇文章一步步操作,安装Oracle如喝水般简单且标准。

下面我就来手把手教大家如何在Linux上安装Oracle数据库。

一、前期准备

1 虚拟机安装包

Windows主机推荐虚拟机:VMware Workstation

MacOS主机推荐虚拟机:Parallels Desktop 16 for Mac

2 Oracle软件安装包

oracle官网下载

Oracle帐号:2696671285@qq.com

Oracle密码:Oracle123

注意:Oracle官方网站目前只能下载最新版19C,需要其他版本Oracle可私信博主获取。

3 Linux系统安装包

一般有三种Linux系统比较常用:RedHat 、 OracleLinux 、Centos 。

RedHat官网下载

OracleLinux官网下载

Centos官网下载

Linux系统安装可参考文章,本文将不再详细介绍安装方法:

教你三步在MacOS上安装Linux系统

Windows主机如何玩转虚拟机Linux安装,只需参透本篇文章

4、Linux远程连接工具

本文将使用XShell和Xftp工具,安装包可以在官网下载,也可私信博主获取。

其他工具也可以,比如:putty,SecureCRT 等等工具。

这篇博客演示RedHat Linux 7.6 版本安装Oracle 11GR2版本数据库。

主机内存2G,硬盘50G即可。

二、Linux主机配置

使用XShell工具连接Linux主机root用户:

1 主机名配置

如果安装时没有配置主机名,或者想要修改主机名,可以通过以下命令修改:

hostnamectl set-hostname orcl

2 网络配置

如果安装时没有配置网络,或者想要修改网络,可以通过以下命令修改:

nmcli connection modify eth0 ipv4.addresses 10.211.55.188/24 ipv4.gateway 10.211.55.1 ipv4.method manual autoconnect yes

nmcli connection up eth0

3 配置Hosts文件

根据上面配置好的主机名和IP,配置hosts文件:

cat <>/etc/hosts

##OracleBegin##

##Public IP

10.211.55.188 orcl

##OracleEnd##

EOF

4 防火墙配置

systemctl stop firewalld

systemctl disable firewalld

5 Selinux配置

selinux修改后需要重启主机生效:

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

6 ISO镜像源配置

需要先挂载主机镜像

Parallels Desktop挂载Linux主机镜像: VMware Workstation挂载Linux镜像: ​

mount /dev/cdrom /mnt

cat </etc/yum.repos.d/local.repo

[local]

name=local

baseurl=file:///mnt

gpgcheck=0

enabled=1

EOF

7 安装Oracle依赖包

如下依赖包从Oracle官方文档推荐获取:

yum install -y bc \

binutils \

compat-libcap1 \

compat-libstdc++-33 \

gcc \

gcc-c++ \

elfutils-libelf \

elfutils-libelf-devel \

glibc \

glibc-devel \

ksh \

libaio \

libaio-devel \

libgcc \

libstdc++ \

libstdc++-devel \

libxcb \

libX11 \

libXau \

libXi \

libXtst \

libXrender \

libXrender-devel \

make \

net-tools \

nfs-utils \

smartmontools \

sysstat \

e2fsprogs \

e2fsprogs-libs \

fontconfig-devel \

expect \

unzip \

openssh-clients \

readline* \

psmisc --skip-broken

检查是否安装成功:

rpm -q bc binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ elfutils-libelf elfutils-libelf-devel glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libxcb libX11 libXau libXi libXtst libXrender libXrender-devel make net-tools nfs-utils smartmontools sysstat e2fsprogs e2fsprogs-libs fontconfig-devel expect unzip openssh-clients readline

Linux7需要手动安装compat-libstdc++依赖包:

rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm

8 配置ZeroConf

##关闭Zeroconf service的服务守护进程

systemctl stop avahi-daemon.socket

systemctl stop avahi-daemon.service

systemctl disable avahi-daemon.service

systemctl disable avahi-daemon.socket

##关闭NOZEROCONF

cat <>/etc/sysconfig/network

#OracleBegin

NOZEROCONF=yes

#OracleEnd

EOF

9 关闭透明大页和numa

sed -i 's/quiet/quiet transparent_hugepage=never numa=off/' /etc/default/grub

grub2-mkconfig -o /boot/grub2/grub.cfg

10 配置系统参数文件

##计算shmall和shmmax值

memTotal=$(grep MemTotal /proc/meminfo | awk '{print $2}')

totalMemory=$((memTotal / 2048))

shmall=$((memTotal / 4))

if [ $shmall -lt 2097152 ]; then

shmall=2097152

fi

shmmax=$((memTotal * 1024 - 1))

if [ "$shmmax" -lt 4294967295 ]; then

shmmax=4294967295

fi

echo $shmall

echo $shmmax

##配置系统参数

cat <>/etc/sysctl.conf

#OracleBegin

##shmmal's Calculation formula: physical memory 8G:(8*1024*1024*1024)/4096=2097152

##shmmax's Calculation formula: physical memory 8G:(8/2)*1024*1024*1024 -1=4294967295

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = $shmall

kernel.shmmax = $shmmax

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

EOF

##系统参数生效

sysctl -p

11 配置系统资源限制

cat <>/etc/security/limits.conf

#OracleBegin

oracle soft nofile 1024

oracle hard nofile 65536

oracle soft stack 10240

oracle hard stack 32768

oracle soft nproc 2047

oracle hard nproc 16384

oracle hard memlock 134217728

oracle soft memlock 134217728

#OracleEnd

EOF

cat <>/etc/pam.d/login

#OracleBegin

session required pam_limits.so

session required /lib64/security/pam_limits.so

#OracleEnd

EOF

12 创建用户和组

/usr/sbin/groupadd -g 54321 oinstall

/usr/sbin/groupadd -g 54322 dba

/usr/sbin/groupadd -g 54323 oper

/usr/sbin/useradd -u 54321 -g oinstall -G dba,oper oracle

echo oracle | passwd --stdin oracle

13 创建Oracle安装目录

mkdir -p /u01/app/oracle/product/11.2.0/db

mkdir -p /u01/app/oraInventory

mkdir -p /oradata

chown -R oracle:oinstall /oradata

chown -R oracle:oinstall /u01/app

chmod -R 775 /u01/app

14、配置用户环境变量

cat <>/home/oracle/.bash_profile

################OracleBegin#########################

umask 022

export TMP=/tmp

export TMPDIR=\$TMP

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db

export ORACLE_HOSTNAME=orcl

export ORACLE_TERM=xterm

export TNS_ADMIN=\$ORACLE_HOME/network/admin

export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib

export ORACLE_SID=orcl

export PATH=/usr/sbin:\$PATH

export PATH=\$ORACLE_HOME/bin:\$ORACLE_HOME/OPatch:\$PATH

alias sas='sqlplus / as sysdba'

export PS1="[\`whoami\`@\`hostname\`:"'\$PWD]\$ '

EOF

三、Oracle软件安装

1 Oracle软件包上传

[root@orcl soft]# ll

-rw-r--r--. 1 root root 1395582860 May 31 16:56 p13390677_112040_Linux-x86-64_1of7.zip

-rw-r--r--. 1 root root 1151304589 May 31 16:56 p13390677_112040_Linux-x86-64_2of7.zip

2 解压Oracle软件安装包

需要按顺序解压1,2安装包:

cd /soft

unzip -q p13390677_112040_Linux-x86-64_1of7.zip

unzip -q p13390677_112040_Linux-x86-64_2of7.zip

##授权/soft给oracle读写权限

chown -R oracle:oinstall /soft

3 安装VNC软件

yum install -y tigervnc*

su - oracle

vncserver

##输入密码

4 连接VNC远程工具或者直接打开虚拟机图形化界面

右键打开终端工具: 进入/soft/database开始安装Oracle软件:

./runInstaller -jreLoc /etc/alternatives/jre_1.8.0

不接收oracle更新: 不更新oracle: 只安装Oracle软件: 单实例安装: 选择企业版: 选择安装目录: 选择安装用户组:

Oracle安装前必要检查:

上传pdksh-5.2.14-37.el5.x86_64.rpm依赖包,安装:

rpm -e ksh-20120801-142.el7.x86_64

rpm -ivh pdksh-5.2.14-37.el5.x86_64.rpm

点击再次检查,忽略swap警告: 解决方案:

su - oracle

sed -i 's/^\(\s*\$(MK_EMAGENT_NMECTL)\)\s*$/\1 -lnnz11/g' $ORACLE_HOME/sysman/lib/ins_emagent.mk

执行完点击retry重试: 执行root脚本: root用户下执行脚本:

/u01/app/oraInventory/orainstRoot.sh

/u01/app/oracle/product/11.2.0/db/root.sh

安装完成后,重启主机。

四、创建数据库

1 打开监听

su - oracle

lsnrctl start

lsnrctl status

2 连接VNC远程工具或者直接打开虚拟机图形化界面

dbca

创建数据库: 选择自定义模式: 输入实例名: 这里填写数据库实例名称和dbname,本次填写orcl。 不安装EM工具。 这里输入SYS和SYSTEM用户的密码,需要记住。 这里选择前面建好的/oradata目录用来存放数据文件。 不开启闪回日志,不开启归档日志,可以建好库之后再手动修改。 数据库内存分配,选择手动分配,占用物理内存70%左右。 block_size根据实际情况选择,一旦建库无法修改,默认8K。 字符集根据需要进行选择,默认AL32UTF8。 等待建库完成即可。

五、连接数据库

确保监听正常启动,并监听数据库:

1 通过数据库主机连接

su - oracle

sqlplus / as sysdba

select sysdate from dual;

##创建数据库用户

create user test identified by test;

grant dba to test;

conn test/test

##创建表

create table test (id number not null,name varchar2(100));

insert into test values (1,'lucifer');

commit;

2 通过PL/SQL连接test用户

至此,Oracle数据库已经安装完毕。

本次分享到此结束啦~

如果觉得文章对你有帮助,点赞、收藏、关注、评论,一键四连支持,你的支持就是我创作最大的动力。

【绽放吧!数据库】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/285617

相关数据

乳成语大全 乳字成语有哪些
三眼蟹怎么挑选,三眼蟹的挑法
为什么造桥修路功德(关于修路修桥功德文章)

友情链接