1. 操作系统软硬件检查
1.1. 内存要求
最小值为1GB内存,建议值为2GB以上,或者更多。
查询命令:# grep MemTotal /proc/meminfo
[root@Oracle ~]# grep MemTotal /proc/meminfo
MemTotal: 3861512 kB
查询结果满足Oracle12安装内存要求
1.2. 系统内核版本
查询系统内核位数命令:uname –m;
查询系统版本命令:cat /proc/version;
查询系统内核版本:uname -r
[root@Oracle ~]# cat /proc/version
Linux version 3.10.0-957.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Thu Nov 8 23:39:32 UTC 2018
[root@Oracle ~]# uname -mr
3.10.0-957.el7.x86_64 x86_64
1.3. 磁盘空间要求
查询系统磁盘空间:df –h
[root@Oracle ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 31G 21G 9.5G 69% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 928M 958M 50% /dev/shm
tmpfs 1.9G 13M 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 2.0G 170M 1.9G 9% /boot
tmpfs 378M 12K 378M 1% /run/user/42
tmpfs 378M 0 378M 0% /run/user/0
通过查询磁盘空间满足Oracle空间要求
主要查询Oracle安装位置
1.4.关闭firewalld防火墙
#systemctl status firewalld.service #查看防火墙状态
#systemctl stop firewalld.service #关闭防火墙
#systemctl disable firewalld.service #禁止开机使用防火墙
2. 安装前系统配置
2.1. RPM要求
安装前可先查看需要的RPM包已安装,查询命令:# rpm -q package_name,另外,对于本系统版本Oracle
12c,要使用用于连接数据库的Oracle ODBC Drivers,需要安装unixODBC-2.3.1 or
later,下载地址http://www.unixodbc.org。
官网查询Oracle12c需要的rpm包; 一定要使用yum解决依赖包安装,要不可以把人整哭了。
[root@Oracle ~]# rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXext libXtst libX11 libXau libxcb libXi make sysstat
binutils-2.27-34.base.el7.x86_64
compat-libcap1-1.10-7.el7.x86_64
compat-libstdc++-33-3.2.3-72.el7.x86_64
gcc-4.8.5-36.el7.x86_64
gcc-c++-4.8.5-36.el7.x86_64
glibc-2.17-260.el7.x86_64
glibc-devel-2.17-260.el7.x86_64
ksh-20120801-142.el7.x86_64
libaio-0.3.109-13.el7.x86_64
libaio-devel-0.3.109-13.el7.x86_64
libgcc-4.8.5-36.el7.x86_64
libstdc++-4.8.5-36.el7.x86_64
libstdc++-devel-4.8.5-36.el7.x86_64
libXext-1.3.3-3.el7.x86_64
libXtst-1.2.3-1.el7.x86_64
libX11-1.6.5-2.el7.x86_64
libXau-1.0.8-2.1.el7.x86_64
libxcb-1.13-1.el7.x86_64
libXi-1.7.9-1.el7.x86_64
make-3.82-23.el7.x86_64
sysstat-10.1.5-19.el7.x86_64
2.2. 创建用户、用户组以及安装目录
安装和运行Oracle数据库软件都需要使用指定用户组内的指定用户,用户为Oracle,出于安全考虑,用户组建为oinstall、dba,oinstall组中的成员用于管理Oracle数据库物理软件,dba组中的成员用于管理、操作数据库,具有sysdba权限。
# groupadd oinstall ----创建Oracle用户组
# groupadd dba ----创建Oracle用户组
# useradd -g oinstall -G dba oracle ---创建oracle用户并加入新建的Oracle用户组
# passwd oracle -----设置用户密码
# mkdir -p /usr/oracle ---创建安装目录
# chown -R oracle:oinstall /usr/oracle ---更改Oracle目录用户组
# chmod -R 755 /usr/oracle/ ----添加目访问录权限
# mkdir -p /opt/oracle/oracinstall ----创建install文件存放路径
# chown -R oracle:oinstall /opt/oracle/oracinstall/ ---更改Oracle目录用户组
#chmod -R 755 /opt/oracle/oracinstall/ ----添加目录访问权限
#如果已经添加了用户,一定记得将用户添加至刚才所创立的用户组当中
#usermod -g oinstall -G dba oracle ---把用户添加到此组中
#id oracle --查看添加结果
2.3. 配置系统内核参数
vim /etc/sysctl.conf
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
fs.file-max = 6815744
fs.aio-max-nr=1048576
2.4. 配置Oracle用户shell limit
为了提高在linux系统上运行软件的性能,必须对oracle用户设置下列限定。
vim /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 10240
2.5. 编辑登录配置文件
进行登录配置文件的编辑,在文本最后添加:
session required pam_limits.so
session required/lib/security/pam_limits.so
使shell limit生效。
vim /etc/pam.d/login
session required pam_limits.so
session required /lib/security/pam_limits.so
2.6. Oracle用户环境变量配置
要成功安装并使用Oracle数据库软件,必须在Oracle用户的.bash_profile文件中设置:ORACLE_BASE、ORACLE_HOME、ORACLE_SID和PATH环境变量,其他的根据需要来设置。
ORACLE_HOME可以在安装前手动配置,另外,Oracle安装过程中会根据ORACLE_BASE的值自动指定的ORACLE_HOME,所以也可以在安装后将这个ORACLE_HOME写入.bash_profile。
su -oracle - - -切换oracle用户
vim /home/oracle/.bash_profile
#use for oracle
export ORACLE_BASE=/usr/oracle
export ORACLE_HOME=$ORACLE_BASE/product
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
#防止Oracle安装界面乱码,先把语言环境改为英文
export LANG=en_US
if [ $USER = "oracle" ];then
if [ $SHELL = "/bin/ksh" ];then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
source .bash_prpfile
3. Oracle数据库图形安装
3.1. 准备安装文件
复制Oracle安装文件到创建的文件夹中/opt/oracle/oracinstall
#unzip linuxx64_12201_database.zip —解压文件
3.2. 开始安装
图形界面登录使用Oracle用户登录
cd /opt/oracle/oracinstall/database
./runInstaller
如果没有报错耐心等待,如果弹出以下安装界面,那么恭喜距离成功还有一半的距离。
- 第一步用来配置更新以及技术支持的,把勾去掉直接下一步就行
- 配置安装选项,这三个选项分别表示:
① 创建并配置一个新数据库,适用于新安装数据库的用户;
② 只安装数据库软件,适用于已有Oracle数据库数据用于数据迁移的;
③ 升级已有数据库,适用于将老数据库升级成新数据库的用户。
毫无疑问这里选择第一个选项。
- 第三步配置桌面版还是服务器版,在linux服务器选第二个。
- 这里选择了单实例数据库安装
- 经典安装与高级安装
这里选择了经典安装
- 这里要把√去掉
- 设置密码
- 执行这部会有问题,在这一步时,无法继续,因为oracle账户无法创建oraInventory目录,所以必须先创建该用户并授权,执行如下操作即可。
mkdir -p /usr/oraInventory
chown -R oracle:oinstall /usr/oraInventory
chmod -R 775 /usr/oraInventory
- 检查通过开始安装
- 安装过程中会出现以下提示
使用root用户执行提示框中的.sh文件
3.3. 开机启动监听
4. 测试
sqlplus /nolog ---查看登录结果
sqlplus system/******* ---查看系统用户是否登录
4.1. 操作
启动监听:lsnrctl start
5. 问题
5.1. ORA-01034
ORA-01034: ORACLE not available
$sqlplus / as sysdba
5.2. ORA-12543
ORA-12543: TNS: 无法连接目标主机
查看是否firewalld的服务启动了
#systemctl stop firewalld