redhat7 RPM 安装oracle 19c详细步骤和相关问题的解决方法

redhat7 RPM 安装oracle 19c详细步骤和相关问题的解决方法

说明:本人在安装中遇到了很多问题,查阅了很多博文和资料,现将问题和解决方案编入本人,感谢所有分享的博主。

1. 下载需要的安装包:

1.1 preinstall的rpm 安装包

http://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm

preinstall主要用于检查当前系统是否满足oracle安装所需的条件,可能缺少其他插件,进行对应的安装即可。
常见的缺少:
ksh-20120801-26.el7.x86_64.rpm
libaio-devel-0.3.109-13.el7.x86_64.rpm
compat-libcap1-1.10-7.el7.x86_64.rpm
compat-libstdc+±33-3.2.3-72.el7.x86_64.rpm

(前3个rpm可以在安装redhat的镜像文件中找到,最后一个需要在网上下载,找到rpm包,
同理使用rpm -ivh **.rpm或者yum localinstall -y  **.rpm进行安装)

镜像文件中找到对应的rpm包,以及安装可以查看一下链接:
使用镜像光盘作为安装源-在VMware上挂载ios镜像,并安装vsftpd(ksh同理)
1.2 Oracle 的rpm 安装包

https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
2. 安装.
yum localinstall -y oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
安装完成之后 进行安装
yum localinstall -y oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
等待安装结果即可.

可能存在问题1:
虚拟机存储空间不足,不能进行安装,需要进行扩容处理:扩容处理链接

安装完结果:

Total size: 6.9 G
Installed size: 6.9 G
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : oracle-database-ee-19c-1.0-1.x86_64                                                                                           1/1 
[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
  Verifying  : oracle-database-ee-19c-1.0-1.x86_64                                                                                           1/1 

Installed:
  oracle-database-ee-19c.x86_64 0:1.0-1                                                                                                          

Complete!

注意安装完成之后的配置 需要使用root用户.

3.使用root用户进行配置.
#root 用户执行命令:
/etc/init.d/oracledb_ORCLCDB-19c configure

等待Oracle数据库执行初始化操作即可.
在这里插入图片描述

4. 执行完成之后的处理.

4.1增加环境变量处理:

#配置文件/etc/profile.d目录下的环境变量,是会作用于全部用户的
vim /etc/profile.d/oracle19c.sh
增加内容为:
export  ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export  PATH=$PATH:/opt/oracle/product/19c/dbhome_1/bin
#设置数据库实例
export  ORACLE_SID=ORCLCDB
#设置字符集问题,避免sqlplus连接时,输出信息全是问号问题
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

4.2增加系统用户:

新建用户:useradd oracle
新建组:groupadd dba
修改用户所属组:chgrp -R dba oracle
修改用户密码:passwd oracle

4.3使用Oracle用户登录进行相关的处理:

sqlplus / as sysdba

4.4查看pdb信息:这个很重要,后续建用户会用到

show pdbs

在这里插入图片描述
4.5创建自动启动pdb的触发器(不设置PDB的开机启动 很多程序无法连接上PDB, 建议使用show pdbs 查看状态, 手工启动也可以. 不能在CDB创建业务数据, 会提示创建的用户名不符合 c##的要求)

CREATE TRIGGER open_all_pdbs
   AFTER STARTUP ON DATABASE
BEGIN
   EXECUTE IMMEDIATE 'alter pluggable database all open';
END open_all_pdbs;
/
5.创建oracle数据库用户

此处可能出现问题:
Oracle 12c创建用户时出现“ORA-65096: invalid common user or role name”的错误
主要是oracle从12c开始,出现了CDB和PDB的基本管理,在oracle 12c中,使用了一个container(容器)的概念。
基本概念:
Multitenant Environment:多租户环境
CDB(Container Database):数据库容器
PDB(Pluggable Database):可插拔数据库

COMMON USERS(普通用户):经常建立在CDB层,用户名以C##或c##开头;
(如果不介意c##用户名的话,可直接创建create user c##test identified by test;然后授权:grant dba to c##test;然后登陆时使用用户名c##test ,密码test即可)
LOCAL USERS(本地用户):仅建立在PDB层,建立的时候得指定CONTAINER。
(如果想创建本地用户的话,需要做一下修改:就是指定PDB容器,然后创建用户)
操作步骤:(sysdba进入数据库后)
1、查看Oracle 的版本

SQL> select * from v$version;

查看当前使用的容器

SQL>select sys_context ('USERENV', 'CON_NAME') from dual; 

在这里插入图片描述

2、查询pdbs

SQL>select con_id,dbid,NAME,OPEN_MODE from v$pdbs;

![在这里插入图片描述](https://img-blog.csdnimg.cn/416141a79a6445948dde0cf66db635ec.png

3、将Pdb open:

SQL> alter pluggable database pdborcl open;

在这里插入图片描述
4、切换容器到pdb

SQL> alter session set container=ORCLPDB1;(注意自己的PDB名称,是第2步中查询出的)

在这里插入图片描述

5.查看当前使用容器

SQL>select sys_context ('USERENV', 'CON_NAME') from dual; 

在这里插入图片描述
可以看出由原来的CDB$ROOT修改为了ORCLPDB1了

6、创建用户

SQL>create user zhangsanidentified by zhangsan;

SQL>grant dba to zhangsan;

以上就完成了PDB的本地用户创建

PS:ORACLE 12C新特性——CDB与PDB

6.连接数据库

6.1 redhat7通过客户端sqlplus直接登录
如果是创建的CDB 普通用户,先查看安装路径下的客户端的连接符(/opt/oracle/product/19c/dbhome_1/network/admin/tnsnames.ora)

ORCLCDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCLCDB)
    )
  )

则登录就是 sqlplus c##test/test@ORCLCBD (sqlplus 用户/密码@连接符)

如果是PDB本地用户,则需要新增连接符,否则会报错: 用sys登录SQLplus新建用户后,用新建的用户登录plsql程序,提示“ora-01017:用户名/口令无效;登录被拒绝。”

vi /opt/oracle/product/19c/dbhome_1/network/admin/tnsnames.ora

#新增:注意service_name是pdb的NAME(select NAME from v$pdbs;),
ORCLPDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCLPDB1)
    )
  )

登录就是 sqlplus zhangsan/zhangsan@ORCLPDB (sqlplus 用户/密码@连接符)

6.2 通过plsql登录
1.首先检查网络是否连通,端口是否连通(oracle默认端口是1521)
如果网络连通,但是端口不通,则可能是防火墙的问题,解决方案如下
Centos7系统,关闭了防火墙,但是有些端口仍然不能telnet通,解决方案
2.oracle客户端新增连接符(tnsnames.ora)

#注意:链接名前没有空格;服务器IP;服务名,参照redhat7 oracle客户端上的tnsnames.ora配置
链接名自己定 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = oracle服务器IP)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = 数据库名)
      #注意此处数据库名,如果是oracle12c以后版本,则需要使用用户对应的数据库容器,可能是pdb名称。默认的是CDB名称;
      #用户对应的pdb名称,可以使用select NAME from v$pdbs;查询
    )
  )

附:linux启停ORACLE数据库脚本链接

后续补充:windows上的oracle客户端以及plsql安装

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
安装Oracle 19c的步骤如下: 1. 首先,你需要下载Oracle 19c安装。你可以从Oracle官网下载安装,下载链接为:http://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm。 2. 下载完成后,将安装上传到Linux服务器的ROOT路径下。 3. 接下来,在root目录下执行以下命令进行预安装:yum -y localinstall oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm。这个命令会安装Oracle 19c所需的预安装,并且需要等待安装完成。 4. 安装完成后,你可以按照文档中的详细步骤继续进行Oracle 19c安装。文档中会记录CentOS7和Redhat7系统安装Oracle19C详细步骤RPM安装说明。 请确保按照上述步骤进行操作,并参考文档进行详细安装。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Linux安装oracle 19c](https://blog.csdn.net/cizhao3600/article/details/121093749)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [Linux安装Oracle19C详细步骤](https://download.csdn.net/download/changxiaowei1990/12222634)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值