Linux(linux版本 centos 7) 下安装 oracle 19c详细教程(新手小白易上手)

一、安装前准备

1、下载预安装包
wget http://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm

预安装包下载成功

2、下载oracle安装包

下载地址如下

https://www.oracle.com/cn/database/technologies/oracle-database-software-downloads.html#19c

将下载好的oracle安装包上传到服务器上

在root目录下

二、执行安装命令

1、安装预安装包

执行预安装包命令,等待安装

yum -y localinstall oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm

预安装包成功

2、安装oracle

执行安装命令,等待安装,过程可能有点久

yum -y localinstall oracle-database-ee-19c-1.0-1.x86_64.rpm

安装完成

三、初始化数据库

1、执行命令,完成数据库初始化
/etc/init.d/oracledb_ORCLCDB-19c configure

会出现如下错误

2、问题解决

LISTENER:No valid IP Address returned for the host VM-20-12-centos.

没有为主机 VM-20-12-centos 返回有效的IP地址

1、修改/etc/sysconfig/network 文件,在末尾添加上 HOSTNAME=dave(这个名字可以随意),末尾就是主机名,修改完后直接重启服务器

vim /etc/sysconfig/network

在末尾添加

HOSTNAME=dave HOSTNAME=dave

2、等待服务器重启完成后,修改主机名为 dave,与 /etc/sysconfig/network 中配置的一致

更改主机名

hostname dave

3、修改hosts 文件,在最后添加 ip 映射,映射到刚刚的主机名上

vim /etc/hosts

这里的 x.x.x.x 是ip地址,如果是线上服务器,使用的是内网ip,而不是公网ip

x.x.x.x dave

4、修改完成后,重新执行初始化命令,等待数据库的初始化

到这一步已经安装成功了

5、修改 oracle 用户的密码

passwd oracle

输入密码和确认密码即可

以上从安装到初始化数据库都是在 root 用户下进行

四、配置环境变量

这一步需要切换到 oracle 用户下进行

su oracle

设置环境变量

执行命令

vim .bash_profile

在文件后面添加环境变量

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1

export ORACLE_SID=ORCLCDB

export ORACLE_PDB_SID=ORCLPDB1

export PATH=ORACLE_HOME/bin:PATH:HOME/.local/bin:HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

export NLS_LANG=american_america.ZHS16GBK

添加完成后保存退出

执行命令生效

# 使刚才的配置生效
source .bash_profile

五、使用数据库

1、登录数据库
# 登录数据库
sqlplus / as sysdba
# 显示数据库
show pdbs
2、更改system用户的密码

登录后才能进行修改

-- 修改密码

alter user system identified by 123456;

出现问题:当前调整必须指定所有容器

ERROR at line 1: ORA-65066: The specified changes must apply to all containers

解决方法:

当前会话是指定所有容器,如果不是可以通过下面命令调整会话

alter session set container=cdb$root;

-- 出现以下提示说明修改成功

-- Session altered.

再次执行修改密码的语句即可成功修改

3、查询服务名

-- 查询当前服务名
select global_name from global_name;

我这里的是 ORCLEDB1,通过Navicat连接需要用到

4、注意点

在root用户权限下,需要输入账号和密码才能进入数据库;

在oracle用户权限下,不需要输入账号和密码就能进入数据库。

六、通过Navicat连接 oracle

1、在防火墙上开放端口

开放端口

firewall-cmd --permanent --zone=public --add-port=1521/tcp

重启防火墙

systemctl restart firewalld.service

2、开放安全组端口

这里我用的是腾讯云,需要设置防火墙,开放端口

3、连接配置

主机:服务器的公网 ip 地址

服务名:刚刚查出来的那个服务名称,我这里是 ORCLEDB1

填写用户名和密码即可进行连接

相关推荐
Anna_Tong3 分钟前
阿里云如何协助解决操作系统兼容性问题
linux·服务器·ubuntu·阿里云·centos·云计算·系统迁移
不良人天码星22 分钟前
Linux的基础指令和环境部署,项目部署实战(下)
linux·运维·服务器
EasyNVR2 小时前
基于WebRTC与AI大模型接入EasyRTC:打造轻量级、高实时、强互动的嵌入式音视频解决方案
运维·服务器·微信·小程序·webrtc·p2p·智能硬件
技术小齐2 小时前
网络运维学习笔记 022 HCIA-Datacom新增知识点03园区网典型组网架构及案例实战
运维·网络·学习
致奋斗的我们2 小时前
HAProxy介绍与编译安装
linux·汇编·数据库·mysql·青少年编程·haproxy·openeurler
Java潘老师2 小时前
Automa 浏览器自动化编排 实现自动化浏览器操作
运维·自动化
waves浪游2 小时前
Linux基本指令(上)
linux·运维·服务器
不确定性确定你我3 小时前
`sh` 与 `bash` 的区别详解
linux·bash·运维开发
是北欢吆3 小时前
QQ登录测试用例报告
运维·服务器·测试用例
9毫米的幻想4 小时前
【Linux系统】—— 冯诺依曼体系结构与操作系统初理解
linux·运维·服务器·c语言·c++