oracle 安装教程

rpm官网安装文档

https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/installing-oracle-database-using-rpm-packages.html#GUID-5AF74AC1-510E-4EB0-9BCA-B096C42C6A76

oracle 19c rpm包安装

服务器环境安装准备

centos7版本需要的依赖包
yum -y install \
compat-libcap1 \
glibc-devel \
ksh \
glibc-devel \
libstdc++-devel \
libaio-devel \
bind-utils \
nfs-utils \
psmisc \
smartmontools \
sysstat \
xorg-x11-utils \
xorg-x11-xauth

备注:可能需要以下包,需要单独下载安装,此包在下面连接里面可以下载。
yum -y localinstall compat-libstdc++-33

下载安装预安装包(检查环境,创建用户)

下载地址,根据实际情况选择
https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/oracle-database-preinstall-19c-1.0-3.el7.x86_64.rpm

#开始安装
[root@localhost ~]# rpm -ivh oracle-database-preinstall-19c-1.0-3.el7.x86_64.rpm 
警告:oracle-database-preinstall-19c-1.0-3.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID ec551f03: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:oracle-database-preinstall-19c-1.################################# [100%]

下载安装数据库包

根据实际情况下载
https://www.oracle.com/database/technologies/oracle-database-software-downloads.html

#开始安装
[root@localhost ~]# rpm -ivh oracle-database-ee-19c-1.0-1.x86_64.rpm 
警告:oracle-database-ee-19c-1.0-1.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID ec551f03: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:oracle-database-ee-19c-1.0-1     ################################# [100%]
[INFO] Executing post installation scripts...
[INFO] Oracle home installed successfully and ready to be configured.
To configure a sample Oracle Database you can execute the following service configuration script as root: /etc/init.d/oracledb_ORCLCDB-19c configure
[root@localhost ~]# 

相关参数配置修改

安装完成后,会产生两个文件,请自行修改相关参数
一是管理oracle服务的脚本字符集实例名之类的,修改之前习惯性的备份一个
cp /etc/init.d/oracledb_ORCLCDB-19c /etc/init.d/oracledb_ORCLCDB-19c.bak
vim /etc/init.d/oracledb_ORCLCDB-19c

#例如修改如下信息
vim /etc/init.d/oracledb_ORCLCDB-19c
export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export ORACLE_VERSION=19c
export ORACLE_SID=ORCLCDB
export TEMPLATE_NAME=General_Purpose.dbc
export CHARSET=ZHS16GBK #指定字符
export PDB_NAME=ORCLPDB1
export LISTENER_NAME=LISTENER
export NUMBER_OF_PDBS=1
export CREATE_AS_CDB=true #是否启用容器数据库,可以修改为false

二是定义数据文件存放路径的文件和监听端口
cp /etc/sysconfig/oracledb_ORCLCDB-19c.conf /etc/sysconfig/oracledb_ORCLCDB-19c.conf.bak
vim /etc/sysconfig/oracledb_ORCLCDB-19c.conf

oracle环境变量记得切换用户 su - oracle
vim .bash_profile 
umask 022
export ORACLE_SID=ORCLCDB
export ORACLE_BASE=/opt/oracle/oradata
export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export PATH=$PATH:$ORACLE_HOME/bin
#使生效
source .bash_profile

必须修改hosts
echo '192.168.15.128 localhost' >>/etc/hosts

开始创建数据库

#root账号执行,当前是1G内存,可能不太好,建议2G内存以上,如果失败,目前还不知道怎么恢复,这步最好不要失败
[root@localhost ~]# /etc/init.d/oracledb_ORCLCDB-19c configure
Configuring Oracle Database ORCLCDB.
[WARNING] [DBT-11209] 当前的可用内存低于创建数据库所需的可用内存 (388MB)。
   原因: 以下节点没有必需的可用内存:
 节点:localhost         可用内存:268.9961MB (275452.0KB)

[WARNING] [DBT-11205] 指定的共享池大小不符合建议的最小大小要求。这可能导致创建数据库的操作失败。
   操作: 至少为共享池大小指定 (479 MB)。
准备执行数据库操作
已完成 10%
复制数据库文件

#root账号执行,当前是2G内存,没有问题
[root@localhost ~]# /etc/init.d/oracledb_ORCLCDB-19c configure
Configuring Oracle Database ORCLCDB.
准备执行数据库操作
已完成 10%
复制数据库文件
已完成 40%
正在创建并启动 Oracle 实例
已完成 42%
已完成 46%
已完成 50%
已完成 54%
已完成 60%
正在进行数据库创建
已完成 66%
已完成 70%
执行配置后操作
已完成 100%
数据库创建完成。有关详细信息, 请查看以下位置的日志文件:
 /opt/oracle/cfgtoollogs/dbca/ORCLCDB。
数据库信息:
全局数据库名:ORCLCDB
系统标识符 (SID):ORCLCDB
有关详细信息, 请参阅日志文件 "/opt/oracle/cfgtoollogs/dbca/ORCLCDB/ORCLCDB.log"。

Database configuration completed successfully. The passwords were auto generated, you must change them by connecting to the database using 'sqlplus / as sysdba' as the oracle user.

#安装完成否,日志路径,且尽快修改dba密码
/opt/oracle/cfgtoollogs/dbca/ORCLCDB/ORCLCDB.log
#如果要创建不同的数据库只需修改实例名字即可
/etc/init.d/oracledb_ORCLCDB-19c   实例名字在这个文件中记录

至此安装完成,安装完成后监听和数据库都是自动启动成功的。

启动数据库

#先启动监听
[oracle@localhost ~]$lsnrctl status
[oracle@localhost ~]$lsnrctl start

#启动数据库
SQL>startup  是最全的,实例,数据库加载,数据库打开都完成
ORACLE instance started.
Total System Global Area 1031798368 bytes
Fixed Size		    8904288 bytes
Variable Size		  654311424 bytes
Database Buffers	  360710144 bytes
Redo Buffers		    7872512 bytes
Database mounted.
Database opened.

SQL>startup nomount 只是启动了实例而没有启动数据库
SQL>startup mount启动了实例,并加载了数据库,但是数据库没有打开

查看数据是否启动 
方式1:open状态 是说明开启
SQL> select instance_name,status from v$instance;   --正常启动结果
INSTANCE_NAME	 STATUS
---------------- ------------
orcl		 OPEN
如果没有启动会出现以下错误
SQL> select instance_name,status from v$instance;  --错误启动结果
select instance_name,status from v$instance
*
ERROR at line 1:
ORA-01034: ORACLE not available
Process ID: 0
Session ID: 0 Serial number: 0


方式2:
SQL> show sga;  -正常启动结果

Total System Global Area  763359832 bytes
Fixed Size                  8901208 bytes
Variable Size             528482304 bytes
Database Buffers          222298112 bytes
Redo Buffers                3678208 bytes
    
SQL> show sga;   --错误启动结果
ORA-01034: ORACLE not available   --如果没有启动会出现执行会出现ORA-01034: ORACLE not available错误
Process ID: 0
Session ID: 0 Serial number: 0


关闭数据库

  • Oracle执行某些清除工作后才关闭(终止会话、释放会话资源),最安全的方式
SQL>  SHUTDOWN IMMEDIATE
Database closed.
Database dismounted.
ORACLE instance shut down.

OR 立刻关闭,正在访问数据库的会话会被突然终止()

若数据库迟迟不能down下来,在os上观察IO状况,几乎没有io的时候,另开一窗口shutdown abort ,几乎不会出问题了

SQL>shutdown abort
  • 关闭监听
[oracle@localhost ~]$lsnrctl stop
[oracle@localhost ~]$lsnrctl status

© 版权声明
THE END
点赞10 分享