VMware 下安装 Linux7.6 环境,在 Linux 环境下安装 Oracle11g 数据库、数据库参数设置、数据库创建,监听创建、客户端连接。
第一章 数据库安装前准备
1.1 环境规划
1.2 部署硬盘规划
第二章 VMware workstation安装Redhat7系统
2.1 Linux版本
rhel-server-7.6-x86_64-dvd.iso
2.2 虚拟机搭建
新建虚拟机

选择兼容性

选择安装来源

选择安装系统环境

设置虚拟机名称

选择处理器配置

选择内存大小配置

配置网络类型

配置下一步操作






点击“编辑虚拟设置”

选择添加ISO镜像文件

增加硬盘设置






2.3 安装redhat7系统
点击如下按钮开始安装

选择安装redhat7,选中第一个

选择语言


选择第二门语言

软件安装


磁盘规划分区(可以选择自动或者按照个人意愿进行手动分区)这里我先设置如何手动分区


分区:添加swap分区

分区:添加/u01分区添加容量为100G

分区:剩余容量全都添加根路径/分区

分区点击完成设置成功,接受更改确定。


设置网络主机名

选择IPV4地址手动添加ip地址

选择IPV4地址手动添加
ip地址:192.168.8.140
子网掩码:255.255.255.0
网关:192.168.8.2
DNS:原ip地址或者8.8.8.8

打开网络配置开关,常看网络是否能正常相应成功,选择完成即可


设置管理员用户和普通用户
管理员
普通用户

完成最后的安装系统步骤
点击重启

添加完成许可设置




第三章 数据库安装前Linux基础设置
3.1 修改主机名,把里面的主机名进行更改即可。更后,退出重新登陆即可生效
--设置主机名
vi /etc/hostname
--配置主机名
lxorcldb
--保存退出
:wq3.2 可修改IP地址
vi /etc/sysconfig/network-scripts/ifcfg-ens33
--增加如下内容
--static设置成静态地址,dhcp动态地址
BOOTPROTO="static"
--修改ONBOOT="yes"
ONBOOT="yes"
IPADDR="192.168.8.128"
NETMASK="255.255.255.0"
GATEWAY="192.168.8.2"
DNS1="192.168.8.2"
DNS1="8.8.8.8"
ZONE=public
--重启网络设置,使其生效
service network restart 或 systemctl restart nerwork
--查看修改后IP地址
ip a 或 ifconfig3.3 关闭防火墙或者其添加防火墙规则
--1、关闭防火墙
systemctl stop firewalld.service
--重启系统并永久生效
systemctl disable firewalld.service
--查看防火墙心态
systemctl status firewalld.service
--2、添加防火墙规则
--重启系统并永久生效
systemctl enable firewalld.service
--添加ssh端口
firewall-cmd --permanent --add-port=22/tcp
--添加Oracle端口
firewall-cmd --permanent --add-port=1521/tcp
--重启防火墙命令
firewall-cmd --reload
--查看防火墙设置规则
firewall-cmd --list-all3.4 设置非图形化界面启动
systemctl set-default multi-user.target
--重启服务器后生效3.5 关闭Linux系统安全配置
vi /etc/selinux/config
--将:SELINUX=enabled 改为:SELINUX=disabled
--重启服务器后生效3.6 磁盘查询情况
[root@lxorcldb ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda2 72G 4.9G 68G 7% /
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 3.9G 13M 3.8G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/sdb1 100G 33M 100G 1% /oracle
tmpfs 781M 4.0K 781M 1% /run/user/42
tmpfs 781M 48K 781M 1% /run/user/0
/dev/sr0 4.2G 4.2G 0 100% /run/media/root/RHEL-7.6 Server.x86_64 3.7 内存使用及交换Swap查询情况
[root@lxorcldb ~]# free -m
total used free shared buff/cache available
Mem: 7803 900 5984 15 918 6579
Swap: 8191 0 8191 第四章 Oracle数据库安装
4.1 软件下载
4.2 Oracle数据库磁盘设置
按照如下增加硬盘设置方法扩建磁盘。
4.3 磁盘格式化及挂载磁盘
#将新磁盘格式化
[root@lxorcldb ~]# fdisk /dev/sdc
[root@lxorcldb ~]# fdisk /dev/sdd
[root@lxorcldb ~]# fdisk /dev/sde#格式化具体操作示例(三个磁盘同样操作)
[root@lxorcldb ~]# fdisk /dev/sde
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): n ---输入n ,创建一个新的分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p ---输入p,创建一个主分区
Partition number (1-4, default 1): ---回车,默认第1分区号
First sector (2048-419430399, default 2048): ---回车,默认设置初始开始段
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-419430399, default 419430399): ---回车,默认最大为结束段
Using default value 419430399
Partition 1 of type Linux and of size 200 GiB is set
Command (m for help): p ---输入p,查看新创建的分区
Disk /dev/sde: 214.7 GB, 214748364800 bytes, 419430400 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x230dbf76
Device Boot Start End Blocks Id System
/dev/sde1 2048 419430399 209714176 83 Linux ---新创建的分区/dev/sde1
Command (m for help): w ---输入w,保存并退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
使用fdisk -l命令查看当前配置好的分区状态#格式化磁盘,将磁盘设置成ext4格式
[root@lxorcldb ~]# mkfs.ext4 /dev/sdc1
[root@lxorcldb ~]# mkfs.ext4 /dev/sdd1
[root@lxorcldb ~]# mkfs.ext4 /dev/sde1 #新建挂载目录
mkdir /oradata
mkdir /backup
mkdir /arch #将磁盘挂载到文件夹上
[root@lxorcldb ~]# mount /dev/sdc1 /oradata
[root@lxorcldb ~]# mount /dev/sdd1 /arch
[root@lxorcldb ~]# mount /dev/sde1 /backup #配置开机启动后磁盘自动挂载文件
vi /etc/fstab
/dev/sdc1 /oradata ext4 defaults 0 0
/dev/sdd1 /arch ext4 defaults 0 0
/dev/sde1 /backup ext4 defaults 0 0 4.4 服务器参数设置
#hosts文件参数设置
vi /etc/hosts
192.168.8.130 lxorcldb#配置服务器语言环境
echo "export LANG=en_US">>/etc/bash_profile #创建Oracle用户和用户组
/usr/sbin/groupadd -g 5001 oinstall
/usr/sbin/groupadd -g 5002 dba
/usr/sbin/groupadd -g 5003 oper
useradd -u 61001 -g oinstall -G dba,oper oracle
passwd oracle
---密码随机设置,输入密码后再输入一次即可完成#创建Oracle数据库安装存放目录及权限设置
mkdir -p /u01/app/oracle/product/11.2.0/db_1
mkdir -p /u01/app/oraInventory
chown -R oracle:oinstall /u01
chown -R oracle:dba /oradata
chown -R oracle:dba /backup
chown -R oracle:dba /arch
chmod -R 775 /u01
chmod -R 775 /oradata
chmod -R 775 /backup#本地服务器配置yum源及软件包
mount /dev/cdrom /mnt
cd /etc/yum.repos.d
rm -rf /etc/yum.repos.d/*.repo
vi lxorcldb.repo
---添加内容
[EL]
name=lxorcl
baseurl=file:///mnt
gpgcheck=0
enabled=1#安装yum软件包
yum -y install autoconf
yum -y install automake
yum -y install binutils
yum -y install binutils-devel
yum -y install bison
yum -y install cpp
yum -y install dos2unix
yum -y install ftp
yum -y install gcc
yum -y install gcc-c++
yum -y install lrzsz
yum -y install python-devel
yum -y install compat-db*
yum -y install compat-gcc-34
yum -y install compat-gcc-34-c++
yum -y install compat-libcap1
yum -y install compat-libstdc++-33
yum -y install compat-libstdc++-33.i686
yum -y install glibc-*
yum -y install glibc-*.i686
yum -y install libXpm-*.i686
yum -y install libXp.so.6
yum -y install libXt.so.6
yum -y install libXtst.so.6
yum -y install libXext
yum -y install libXext.i686
yum -y install libXtst
yum -y install libxtst.i686
yum -y install libX11
yum -y install libX11.i686
yum -y install libXau
yum -y install libXau.i686
yum -y install libxcb
yum -y install libxcb.i686
yum -y install libXi
yum -y install libXi.i686
yum -y install libgcc_s_so.1
yum -y install libstdc++.i686
yum -y install libstdc++-devel
yum -y install libstdc++-devel.i686
yum -y install libaio
yum -y install libaio.i686
yum -y install libaio-devel
yum -y install libaio-devel.i686
yum -y install ksh
yum -y install libXp
yum -y install libaio-devel
yum -y install numactl
yum -y install mumactl-devel
yum -y install make -y
yum -y install sysstat -y
yum -y install unixODBC
yum -y install unixODBC-devel
yum -y install dlfutils-libelf-devel-0.97
yum -y install elfutils-libelf-devel
yum -y install redhat-lsb-core
yum -y install unzip#修改资源限参数
vi /etc/security/limits.conf
---添加内容
---nproc 进程的最大数目
---nofile 打开文件的最大数目
---stack 最大栈大小
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft nofile 16384
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
oracle hard memlock 6291456
oracle soft memlock 6291456#控制给用户分配的资源
echo "session required pam_limits.so">>/etc/pam.d/login#修改内核参数
vi /etc/sysctl.conf
---添加内容
---fs.file-max 这个参数表示进程可以同时打开的最大句柄数,这个参数直接限制最大并发连接数
---net.ipv4.ip_local_port_range 这个参数定义了在UDP和TCP连接中本地端口的取值范围
---net.core.rmem_default 这个参数表示内核套接字接收缓存区默认的大小
---net.core.rmem_max 这个参数表示内核套接字接收缓存区默认的最大大小
---net.core.wmem_default 这个参数表示内核套接字发送缓存区默认的大小
---net.core.wmem_max 这个参数表示内核套接字发送缓存区默认的最大大小
---kernel.shmmax 单个共享内存段的大小(单位:字节)限制,计算公式64G*1024*1024*1024(字节)
---kernel.shmall 所有内存大小(单位:页,1页 = 4Kb),计算公式16G*1024*1024*1024/4KB(页)
---kernel.shmmni 整个系统共享内存段的最大数目,注意这个参数不是 shmmin,是shmmni, shmmin 表示内存段最小大小
#ORACLE SETTING
fs.aio-max-nr=1048576
fs.file-max=6815744
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=1048586
kernel.panic_on_oops=1
vm.nr_hugepages=1500
kernel.shmmax=4294967296
kernel.shmall=1048576
kernel.shmmni=4096
---输入命令使其生效
sysctl -p#修改nproc参数
echo "* - nproc 16384 ">/etc/security/limits.d/90-nproc.conf
---Linux7 设置路径:
/etc/security/limits.d/20-nproc.conf
Linux6 设置路径:
/etc/security/limits.d/90-nproc.conf#关闭透明页
---查看透明页情况
cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never(显示结果)
---设置
vi /etc/rc.d/rc.local
if test -f /sys/kernel/mm/transparent_hugepage/enabled;then
echo never>/sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag;then
echo never>/sys/kernel/mm/transparent_hugepage/defrag
fi#关闭numactl

vi /etc/default/grub
在quiet后面加上:numa=off
---输入命令生效
grub2-mkconfig -o /etc/grub2.cfg #修改共享内存段
vi /etc/fstab
none /dev/shm tmpfs defaults,size=7000m 0 0
---挂载
mount -o remount /dev/shm #配置oracle环境变量
---切换oracle用户登录
su – oracle
---配置oracle用户环境变量
vi ~/.bash_profile
---添加内容
PS1="[`whoami`@`hostname`:"'$PWD]$'
export PS1
umask 022
export TMP=/tmp
export LANG=en_US
export TMPDIR=$TMP
export ORACLE_UNQNAME=lxorcldb
ORACLE_BASE=/u01/app/oracle;
export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1;
export ORACLE_HOME
ORACLE_SID=lxorcldb;
export ORACLE_SID
ORACLE_TERM=xterm;
export ORACLE_TERM
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;
export CLASSPATH
NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS";
export NLS_DATE_FORMAT
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;
export NLS_LANG
PATH=.:$PATH:$HOME/bin:$ORACLE_HOME/bin:$PATH;
export PATH
THREADS_FLAG=native;
export THREADS_PLAG
if [ $USER = "oracle" ] || [ $USER = "grid" ];then
if [ $SHELL = "/bin/ksh" ];then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi #上传oracle服务端安装包,然后解压软件

---使用Linux系统rz命令或ftp软件上传文件
rz p13390677_112040_Linux-x86-64_1of7
rz p13390677_112040_Linux-x86-64_2of7
---解压文件
unzip p13390677_112040_Linux-x86-64_1of7
unzip p13390677_112040_Linux-x86-64_2of7#启用vnc软件图形界面
---安装vnc软件包
yum -y install *vnc*
---登录Oracle用户,启动vnc
su - oracle
vncserver
---输入密码
---再次输入密码
---选择n否,即可设置成功
---在vnc viewer软件添加已配置好的server点击connect启动

#登陆vnc软件图形界面,打开命令行窗口执行安装命令
[oracle@lxorcldb ~]$ cd /backup/database/
[oracle@lxorcldb ~]$ ./runInstaller -jreLoc /etc/alternatives/jre_1.8.0配置安全更新


点击跳过软件更新

选择安装项

安装的数据库类型

选择数据库语言English+Chinese

选择数据库版本

选择数据库安装目录


选择对应组信息

数据库安装校验信息

---解决第一个OS kernel Parameter校验,切换root用户登陆执行Script内的sh脚本,点击check again
/tmp/CVU_11.2.0.40_oracle/runfixup.sh
---解决第二个Package: compat-libstdc++-33-3.2.3校验,需要使用百度网盘里rpm安装包,点击check again
rpm -ivh compat-libstdc-33-3.2.3-72.el7.x86_64.rpm
---解决第三个Package: pdksh-5.2.14校验,需要使用百度网盘里rpm安装包,点击check again
rpm -ivh pdksh-5.2.14-37.el5.x86_64.rpm
rpm -ivh pdksh-5.2.14-37.el5_8.1.i386.rpm数据库服务安装

解决安装过程报错,如果出现target 'agent nmhs' of makefile :这个是RHEL 7与oracle11的一个BUG,具体处理
如下:

---切换root用户下登陆使用
cd $ORACLE_HOME
---VM虚拟机各类操作系统安装 第64页/共82页错误!未 指 定 书 签 。
cd sysman/lib
cp ins_emagent.mk ins_emagent.mk.bak
vi ins_emagent.mk
查到:NMECTL ,增加 -lnnz11
安装过程中.sh脚本执行(一定要在root用户下执行)

第五章 Oracle数据库创建
5.1 创建数据库
---在vnc界面输入DBCA命令
dbca选择创建数据库

选择自定义数据库

创建实例名

这里不创建Oracle自带的EM

配置数据库密码

选择文件系统

Oracle归档和闪回跳过,先暂时不设置

设置安装内容

参数设置



修改表空间大小和日志文件数量,选择安装完成


5.2 监听创建,客户端连接
两种,第一:本地已安装Oracle创建监听,第二:客户端连接配置创建
第一:使用netca创建







第二:客户端文件连接,创建tnsname.ora文件
windows系统 /app/oracle/product/11.2.0/db_1/network/admin
Linux系统 /u01/app/oracle/product/11.2.0/db_1/network/admin
---增加如下内容
lxorcldb =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.13)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = lxorcldb)
)
)
--------配置好后,测试
[oracle@lxorcl:/u01/app/oracle/product/11.2.0/db_1/network/admin]$tnsping lxorcldb
TNS Ping Utility for Linux: Version 11.2.0.4.0 - Production on 04-AUG-2021 00:10:39
Copyright (c) 1997, 2013, Oracle. All rights reserved.
Used parameter files:
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST =
192.168.1.13)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME
= lxorcldb)))
OK (10 msec)第六章 数据库日常命令
6.1 数据库启动或关闭
Sqlplus "/as sysdba"
---数据库关闭
Shutdown immediate
---数据库开启
startup6.2 密码过期处理
Sqlplus "/as sysdba"
select * from dba_profiles where profile='DEFAULT';
alter profile default limit PASSWORD_LIFE_TIME UNLIMITED;6.3 关闭审计
Sqlplus "/as sysdba"
Show parameter audit_trail
---如果非none,则代表已开始
alter system set audit_trail=none scope=spfile;6.4 开启数据库闪回和归档
Sqlplus "/as sysdba"
查看归档是否开启
Archive log list #归档是否开启
查看闪回是否开启
select flashback_on from v$database;
开启归档和闪回(先开归档,再开闪回)
show parameter recovery
alter system set db_recovery_file_dest_size=150g;
alter system set db_recovery_file_dest=' G:\arch';
shutdown immediate
startup mount
alter database archivelog
alter database flashback on ;
shutdown immediate
startup mount6.5 关闭数据库闪回和归档
Sqlplus "/as sysdba"
查看归档是否开启
Archive log list #归档是否开启
查看闪回是否开启
select flashback_on from v$database;
关闭归档和闪回(先关闪回,再关归档)
shutdown immediate
startup mount
alter database flashback off ;
alter database unarchivelog
shutdown immediate
startup mount6.6 查看日志
Sqlplus "/as sysdba"
Show parameter dump6.7 监听管理
---查看监听状态
Lsnrctl status
---停止监听
Lsnrctl stop
---启动监听
Lsnrctl start