CentOS7.5.1804 Minimal 静默安装oracle 12c R1企业版

xiaoxiao2021-02-28  47

系统环境:硬件——1cpu,2G内存,虚拟机;软件——CentOS7.5,oracle 12c R1_ x86_x64

下载oracle 12c R1_ x86_x64

下载地址:https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

为oracle数据库配置服务器

1、服务器的最低配置要求
磁盘空间要求
Installation TypeDisk Space for SoftwareFilesEnterprise Edition6.4 GBStandard Edition6.1 GBStandard Edition One6.1 GBStandard Edition2 6.1 GB # /tmp要求 >1GB # 服务器内存最低要求 最小: 1 GB of RAM 建议: 2 GB of RAM or more # swap空间大小要求 if RAM between 1G and 2G,swap = 1.5*RAM; if RAM between 2G and 16G,swap = RAM; if RAM>16G,swap = 16G
2、检查服务器硬件和内存配置
检查物理内存大小 [root@localhost ~]# grep MemTotal /proc/meminfo MemTotal: 1865308 kB #2G内存,满足要求

检查swap空间大小 [root@localhost ~]# grep SwapTotal /proc/meminfo SwapTotal: 2097148 kB #2G交换空间,满足要求

检查/tmp目录的可用空间大小 [root@localhost ~]# df -h /tmp 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/centos-root 50G 1.5G 49G 3% / # >1G,满足要求

检查系统的可用磁盘空间 [root@localhost ~]# df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/centos-root 50G 1.5G 49G 3% / devtmpfs 899M 0 899M 0% /dev tmpfs 911M 0 911M 0% /dev/shm tmpfs 911M 9.5M 902M 2% /run tmpfs 911M 0 911M 0% /sys/fs/cgroup /dev/sda1 497M 135M 362M 28% /boot /dev/mapper/centos-home 30G 33M 30G 1% /home /dev/mapper/centos-var 18G 138M 18G 1% /var tmpfs 183M 0 183M 0% /run/user/0

检查系统上的可用RAM和swap交换空间 [root@localhost ~]# free -h total used free shared buff/cache available Mem: 1.8G 138M 1.5G 9.5M 190M 1.5G Swap: 2.0G 0B 2.0G

处理器体系结构是否与要安装的Oracle软件版本匹配 [root@localhost ~]# uname -m x86_64 #服务器处理器是64位架构,满足要求

3、操作系统软件要求
1)、CentOS7内核要求

3.10.0-123.el7.x86_64 or later

查询操作系统内核版本信息为 [root@localhost ~]# uname -r 3.10.0-862.el7.x86_64 #内核满足要求

2)、关闭selinux(需重启生效)
[root@localhost ~]# vi /etc/selinux/config

将SELINUX=enforcing改为SELINUX=disabled 修改前: 修改后:

3、关闭防火墙

查看防火墙状态

[root@localhost ~]# systemctl status firewalld.service

关闭防火墙

[root@localhost ~]# systemctl stop firewalld.service

再次查看防火墙状态

[root@localhost ~]# systemctl status firewalld.service

禁止使用防火墙(重启也是禁止的)

[root@localhost ~]# systemctl disable firewalld.service

4、修改主机名
[root@localhost ~]# vi /etc/hostname

修改后:

[root@localhost ~]# cat /etc/hostname oracle

5、升级系统
[root@localhost ~]# yum update -y
6、安装依赖包
[root@localhost ~]# yum -y install binutils compat-libstdc++ compat-libstdc++-33 elfutils-libelf-devel gcc gcc-c++ glibc-devel glibc-headers ksh libaio-devel libstdc++-devel make sysstat unixODBC-devel binutils-* compat-libstdc++* elfutils-libelf* glibc* gcc-* libaio* libgcc* libstdc++* make* sysstat* unixODBC* wget unzip
7、jdk支持

jdk1.6以上 #是oracle公司的jdk,不是openjdk

[root@localhost ~]# rpm -qa | grep jdk jdk1.8-1.8.0_172-fcs.x86_64

8、查看服务器的发行版本
[root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core)

前面做了一些准备操作,验证了本服务器满足安装oracle12c的条件。

安装准备

1、建立用户和组
[root@localhost ~]# groupadd oinstall #创建用户组oinstall [root@localhost ~]# groupadd dba #创建用户组dba [root@localhost ~]# useradd -g oinstall -G dba oracle #创建oracle用户,并加入到oinstall和dba用户组 [root@localhost ~]# passwd oracle #设置用户oracle的登陆密码,密码为123456,报错可不管 更改用户 oracle 的密码 。 新的 密码:# 密码 无效的密码: 密码少于 8 个字符 重新输入新的 密码: #确认密码 passwd:所有的身份验证令牌已经成功更新。 [root@localhost ~]# id oracle #查看新建的oracle用户 uid=1001(oracle) gid=1002(dba) 组=1002(dba)

2、创建安装目录并设置权限
[root@localhost ~]# mkdir -p /opt/oracle #$ORACLE_BASE [root@localhost ~]# mkdir -p /opt/oracle/12c #$ORACLE_HOME [root@localhost ~]# mkdir -p /opt/oracle/oradata #数据存放目录 [root@localhost ~]# mkdir -p /opt/oracle/inventory #清单目录 [root@localhost ~]# mkdir -p /opt/oracle/flash_recovery_area #数据恢复目录 [root@localhost ~]# chown -R oracle:oinstall /opt/oracle #修改属组 [root@localhost ~]# chmod -R 775 /opt/oracle #修改权限

3、修改内核参数
[root@localhost ~]# vi /etc/sysctl.conf 添加下列参数: fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1073741824 kernel.shmmax = 4398046511104 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500

使配置参数生效

[root@localhost ~]# sysctl -p

4、对oracle用户设置限制,提高软件运行性能
[root@localhost ~]# vi /etc/security/limits.conf 添加下列参数: oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 32768

5、关联设置
[root@localhost ~]# vi /etc/pam.d/login 添加下列参数: session required /lib64/security/pam_limits.so session required pam_limits.so

6、设置环境变量
[root@localhost ~]# vi /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

使文件生效

[root@localhost ~]# source /etc/profile

切换Oracle用户进行环境变量配置

[root@localhost ~]# su oracle [oracle@localhost root]$ vi /home/oracle/.bash_profile 添加下列参数: # For Oracle12 c export ORACLE_BASE=/opt/oracle #oracle数据库安装目录 export ORACLE_HOME=$ORACLE_BASE/12c #oracle数据库路径 export ORACLE_SID=orcl #oracle启动数据库实例名 export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi umask 022 fi export LANG=C #防止安装过程出现乱码 export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致,如:ZHS16GBK,否则出现数据导入导出中文乱码问题

使上述配置立即生效:

[oracle@localhost root]$ source /home/oracle/.bash_profile

7、上传Oracle12 c R1安装包

8、解压安装包
[oracle@localhost root]$ cd /usr/local/src [oracle@localhost src]$ ll 总用量 2796248 -rw-r--r--. 1 root root 175274374 71 00:24 jdk-8u172-linux-x64.rpm -rw-r--r--. 1 root root 1673544724 77 23:43 linuxamd64_12102_database_1of2.zip -rw-r--r--. 1 root root 1014530602 77 23:43 linuxamd64_12102_database_2of2.zip 解压安装包 [oracle@localhost src]$ unzip linuxamd64_12102_database_1of2.zip -d /opt/oracle 解压过程省略。。。 [oracle@localhost src]$ unzip linuxamd64_12102_database_2of2.zip -d /opt/oracle 解压过程省略。。。

安装数据库软件

下面操作用oracle用户操作

1、复制一个应答文件
[oracle@localhost src]$ cd /opt/oracle/database/response [oracle@localhost response]$ ll 总用量 112 -rwxrwxr-x. 1 oracle dba 74822 44 2014 dbca.rsp -rw-rw-r--. 1 oracle dba 25036 77 2014 db_install.rsp -rwxrwxr-x. 1 oracle dba 6038 124 2014 netca.rsp 备份应答文件 [oracle@localhost response]$ cp dbca.rsp /opt/oracle/database/response/dbca.rsp.bak [oracle@localhost response]$ cp db_install.rsp /opt/oracle/database/response/db_install.rsp.bak [oracle@localhost response]$ cp netca.rsp /opt/oracle/database/response/netca.rsp.bak [oracle@localhost response]$ ll 总用量 224 -rwxrwxr-x. 1 oracle dba 74822 44 2014 dbca.rsp -rwxr-xr-x. 1 oracle dba 74822 78 00:05 dbca.rsp.bak -rw-rw-r--. 1 oracle dba 25036 77 2014 db_install.rsp -rw-r--r--. 1 oracle dba 25036 78 00:05 db_install.rsp.bak -rwxrwxr-x. 1 oracle dba 6038 124 2014 netca.rsp -rwxr-xr-x. 1 oracle dba 6038 78 00:05 netca.rsp.bak [oracle@localhost response]$

修改应答文件

[oracle@localhost response]$ vi db_install.rsp

修改内容如下:

oracle.install.option=INSTALL_DB_SWONLY #安装类型 ORACLE_HOSTNAME=oracle #主机名称 UNIX_GROUP_NAME=oinstall #安装组 INVENTORY_LOCATION=/opt/oracle/inventory #清单目录 SELECTED_LANGUAGES=en,zh_CN #选择语言 ORACLE_HOME=/opt/oracle/12c/ # oracle_home ORACLE_BASE=/opt/oracle #oracle_base oracle.install.db.InstallEdition=EE #oracle版本 oracle.install.db.DBA_GROUP=dba #dba用户组 oracle.install.db.OPER_GROUP=oinstall #oper用户组 oracle.install.db.BACKUPDBA_GROUP=dba oracle.install.db.DGDBA_GROUP=dba oracle.install.db.KMDBA_GROUP=dba oracle.install.db.config.starterdb.type=GENERAL_PURPOSE #数据库类型 oracle.install.db.config.starterdb.globalDBName=orcl #globalDBName oracle.install.db.config.starterdb.SID=orcl #SID oracle.install.db.config.starterdb.memoryLimit=81920 #自动管理内存的最小内存(M) oracle.install.db.config.starterdb.password.ALL=123456 #设定所有数据库用户使用同一个密码 DECLINE_SECURITY_UPDATES=true #设置安全更新
2、执行安装程序,等的时间有点长,可以通过下图查看后台日志安装进程,tail -f log ,安装过程有警告可忽略,如下图即为安装成功,根据图示操作
[oracle@localhost response]$ cd /opt/oracle/database/ [oracle@localhost database]$ ./runInstaller -silent -responseFile /opt/oracle/database/response/db_install.rsp -ignorePrereq./runInstaller -silent -responseFile /opt/oracle/database/response/db_install.rsp -ignorePrereq

3、切换root用户执行上图脚本,然后回到oracle用户按enter就可以
[oracle@oracle root]$ su root 密码: [root@oracle ~]# cd /opt/oracle/inventory/ [root@oracle inventory]# ll 总用量 8 drwxrwx---. 2 oracle oinstall 60 71 01:14 ContentsXML drwxrwx---. 2 oracle oinstall 185 71 01:14 logs -rw-rw----. 1 oracle oinstall 56 71 01:14 oraInst.loc -rwxrwx---. 1 oracle oinstall 1540 71 01:14 orainstRoot.sh drwxrwx---. 2 oracle oinstall 22 71 01:07 oui [root@oracle inventory]# ./orainstRoot.sh 更改权限/opt/oracle/inventory. 添加组的读取和写入权限。 删除全局的读取, 写入和执行权限。 更改组名/opt/oracle/inventory 到 oinstall. 脚本的执行已完成。 [root@oracle inventory]# cd /opt/oracle/12c/ [root@oracle 12c]# ./root.sh

4、查看默认的监听文件,并安装监听应答文件
[oracle@oracle /]$ vi /opt/oracle/database/response/netca.rsp 参数设置: INSTALL_TYPE=""custom""安装的类型 LISTENER_NUMBER=1监听器数量 LISTENER_NAMES={"LISTENER"}监听器的名称列表 LISTENER_PROTOCOLS={"TCP;1521"}监听器使用的通讯协议列表 LISTENER_START=""LISTENER""监听器启动的名称 [oracle@oracle root]$ netca /silent /responseFile /opt/oracle/database/response/netca.rsp

5、上述命令执行成功后,会在/opt/oracle/12c/network/admin中生成listener.ora和sqlnet.ora文件
[oracle@oracle root]$ ls /opt/oracle/12c/network/admin/ listener.ora samples shrept.lst sqlnet.ora

6、安装完成后可以查看端口1521是否起来
[oracle@oracle root]$ netstat -tulnp |grep 1521

7、添加数据库实例,修改dbca.rsp文件
[oracle@oracle root]$ vi /opt/oracle/database/response/dbca.rsp 参数设置: RESPONSEFILE_VERSION = "12.1.0" #默认 OPERATION_TYPE = "createDatabase" #默认 GDBNAME = "orcl" #数据库名字 SID = "orcl" #对应的实例名 TEMPLATENAME = "General_Purpose.dbc" #默认 SYSPASSWORD = "oracle" #sys密码 SYSTEMPASSWORD = "123456" #system密码 DBSNMPPASSWORD = "123456" #dbs密码 DATAFILEDESTINATION =/opt/oracle/oradata #清单目录 RECOVERYAREADESTINATION=/opt/oracle/flash_recovery_area #恢复数据目录 CHARACTERSET = "AL32UTF8" #字符集,重要!!!建库后一般不能更改
8、执行数据库实例安装

这一步执行可能要很久

[oracle@oracle root]$ cd /opt/oracle/12c/bin/ [oracle@oracle bin]$ dbca -silent -responseFile /opt/oracle/database/response/dbca.rsp

9、查看实例进程,监听状态
[oracle@oracle bin]$ ps -ef |grep ora_ |grep -v grep

10、查看实例状态
[oracle@oracle bin]$ sqlplus / as sysdba SQL> select status from v$instance;

11、oracle的一些命令
开启oracle服务: $dbstart $lsnrctl start $sqlplus / as sysdba SQL>startup 关闭oracle服务: $dbshut $lsnrctl stop $sqlplus / as sysdba SQL>shutdown /shutdown immediate
转载请注明原文地址: https://www.6miu.com/read-2626519.html

最新回复(0)