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

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

相关推荐
DYWorker00128 分钟前
Linux驱动:RK3568 GMAC + YT8531C 千兆以太网全流程解剖
linux
吴声子夜歌2 小时前
Nginx应用与运维——Nginx负载均衡应用实战(二)
运维·nginx·负载均衡
lisanmengmeng2 小时前
NRPE 添加命令(一)
linux·运维·服务器
pt10432 小时前
CML网络仿真入门-2:使用CML模拟网络实验环境
运维·网络协议
树下水月3 小时前
Typora破解
linux·服务器·前端
沫璃染墨3 小时前
《从零入门Linux系统篇(五十七):线程篇·十——生产者消费者模型进阶:从环形缓冲区到POSIX信号量》
linux·运维·服务器·开发语言·c++·系统架构·信号处理
wuminyu3 小时前
LockStack在虚拟线程Mount和Unmount拷贝过程剖析
java·linux·c语言·jvm·c++
深念Y4 小时前
rime-雾凇拼音-配置记录
linux·junit·软件·拼音·kde
HAHAXX84 小时前
电商RPA批量上架通用方案:一套流程如何同时跑通拼多多、抖店、淘宝和跨境平台
java·运维·rpa
零基础1234 小时前
LLM Agent 驱动的物模型构建:从设备手册到边缘接入的自动化实践
运维·人工智能·经验分享·python·自动化