Linux服务器安装Oracle-19C-静默安装
由于在实际的生产中现在很多是虚机,更多需要oracle静默安装,实验并记录下。
1. 环境和目标
环境:
- 虚拟机:VMware® Workstation 12 Pro(12.5.6 build-5528349)
- CentOS Linux release 7.4.1708 (Core)
- IP:192.168.126.169
- Oracle版本:19.3
- 安装包:LINUX.X64_193000_db_home.zip
目标:
oracle19c静默安装-非容器数据库实例
oracle19c静默安装-容器数据库实例
2. 准备工作
2.1 下载安装包
下载地址:https://www.oracle.com/database/technologies/oracle19c-linux-downloads.html
账号:569461366@qq.com
密码:Oracle!123
账号提供者:https://blog.csdn.net/coolhe21cn
2.2 注意事项
安装包:LINUX.X64_193000_db_home.zip, 大小: 2.84 GB (3,059,705,302 字节)
- 从18c开始,安装包必须解压到 $ORACLE_HOME 路径下进行安装, 必须解压!!必须解压!!必须解压!!
- 先设置oracle用户的环境变量 $ORACLE_HOME,然后解压 LINUX.X64_193000_db_home.zip 到 $ORACLE_HOME中在 $ORACLE_HOME 中用 ./runInstaller命令进行静默安装
- 在dbca中的字符集设置,一般设置成:
3. 安装前检查和设置
3.1 检查系统版本
# 检查os版本
[root@ora-srv1 ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
3.2 检查防火墙
# 1.检查主机名和网络并且配置/etc/hosts文件
# 关闭防火墙, 检查防火墙状态
systemctl status firewalld.service
# 暂时关闭防火墙,下次启动时防火墙仍随系统启动而启动
systemctl stop firewalld.service
# 彻底永久关闭防火墙
systemctl disable firewalld.service
3.2 关闭安全增强
# 关闭SELINUX安全增强
vi /etc/selinux/config
SELINUX=disabled
# 将内容 SELINUX=enforcing 更改为 SELINUX=disabled
3.3 安装支持包
# 需要配置好yum源
yum install -y binutils* compat-libcap1* compat-libstdc++-33* gcc* gcc-c++* glibc* glibc-devel* ksh* libgcc* libstdc++* libstdc++-devel* libaio* libaio-devel* libXext* libXtst* libX11* libXau* libxcb* libXi* make* sysstat* unixODBC* compat-db.* openmotif*
3.4 创建组和用户
# 1. 创建组
# 创建 dba 组
groupadd -g 310 oinstall
# 创建 oinstall 组
groupadd -g 311 dba
groupadd -g 312 asmdba
groupadd -g 313 backupdba
groupadd -g 314 dgdba
groupadd -g 315 kmdba
groupadd -g 316 racdba
groupadd -g 317 oper
[root@localhost ~]# cat /etc/group
......
oinstall:x:310:
dba:x:311:
asmdba:x:312:
backupdba:x:313:
dgdba:x:314:
kmdba:x:315:
racdba:x:316:
oper:x:317:
# 2. 创建 oracle 用户并指定组, 参数-m:自动建立用户的登入目录
useradd -u 500 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper -m oracle
# 其他:把用户加入到(次要)组中
usermod -G odba,oasmdba,obackupdba,odgdba,okmdba,oracdba,ooper oracle
# 3. 修改 oracle 密码
[root@ora-srv1 data1]# passwd oracle
Changing password for user oracle.
New password: # -- 密码: oracle, 以后再更改
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
3.5 创建oracle安装目录
# 创建oracle安装目录,并设置属主给oracle
[root@localhost ~]# mkdir -p /opt/oracle
[root@localhost ~]# chown -R oracle:oinstall /opt/oracle/
# 创建soft文件夹,上传oracle安装包
[root@localhost ~]# mkdir -p /opt/oracle/soft
[root@localhost ~]# chown -R oracle:oinstall /opt/oracle/soft/
3.5 oracle用户环境配置文件
# 切换到oracle用户下,编辑.bash_profile文件
su - oracle
vi .bash_profile
# 添加如下, 这里实验环境目录: /opt/oracle/app/oracle, 目录可以自行修改
export DISPLAY=:0.0
export ORACLE_SID=orcl
export ORACLE_BASE=/opt/oracle/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19/dbhome_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usrlib
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
export PATH=$ORACLE_HOME/bin:$PATH
stty erase ^H
3.6 修改Linux内核
# 修改 /etc/sysctl.conf
vim /etc/sysctl.conf
添加以下内容
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
fs.aio-max-nr = 1048576
fs.file-max = 6815744
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 = 1048586
#保存后执行以下命令查看:
sysctl -p
3.7. 修改资源文件
- limits.conf
linux资源限制配置文件是/etc/security/limits.conf;限制用户进程的数量对于linux系统的稳定性非常重要。
limits.conf文件限制着用户可以使用的最大文件数,最大线程,最大内存等资源使用量。soft是一个警告值,而hard则是一个真正意义的阀值,超过就会报错
- /etc/pam.d/login
etc目录下包括pam.d目录,在pam.d目录下还有个login子目录。etc指的系统配置文件目录,pam.d指的是验证登陆配置,login是登陆配置文件。简单说就是linux操作系统的登陆配置文件。
# 修改 /etc/security/limits.conf
# 如果没有修改, su - oracle 时会提示如下信息:
# -bash: ulimit: max user processes: cannot modify limit: Operation not permitted
vi /etc/security/limits.conf
# for oracle
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
oracle soft memlock 134217728
oracle hard memlock 134217728
# 添加下列条目到/etc/pam.d/login
vi /etc/pam.d/login
# for oracle
session required /lib/security/pam_l