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

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

相关推荐
新加坡内哥谈技术28 分钟前
Meta计划借助AI实现广告创作全自动化
运维·人工智能·自动化
zyjyyds11335 分钟前
win11系统 Docker Desktop 突然提示Docker Engine stopped解决情况之一
运维·docker·容器
Altairr35 分钟前
Docker基础(一)
运维·docker·容器·eureka
筏.k1 小时前
grep、wc 与管道符快速上手指南
linux
文牧之1 小时前
PostgreSQL 的扩展pageinspect
运维·数据库·postgresql
Johny_Zhao1 小时前
华为MAAS、阿里云PAI、亚马逊AWS SageMaker、微软Azure ML各大模型深度分析对比
linux·人工智能·ai·信息安全·云计算·系统运维
CodeOfCC1 小时前
c语言 封装跨平台线程头文件
linux·c语言·windows
科文小白狼1 小时前
Linux下VSCode开发环境配置(LSP)
linux·vscode·里氏替换原则·lsp
小兔子酱#1 小时前
【Docker 01】Docker 简介
运维·docker·容器
jugt3 小时前
CentOS 7.9安装Nginx1.24.0时报 checking for LuaJIT 2.x ... not found
linux·运维·centos