centos7.6 安装 oracle19c

工具准备

一定是对应的19c版本的Basic Package 包很重要,否则是安装好数据库远程是无法连接的

  • 打开nivicat ,找到如下图位置,替换自己的目录


    image.png

以下所有的操作都是基于本机win10,远程系统CentOS7.6,安装DB为Oracel19c

下载预安装和oracle

下载oracle19c的地址:https://www.oracle.com/technetwork/database/enterprise-edition/downloads/oracle19c-linux-5462157.html
下载预安装oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm的下载地址:http://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
我本人是通过提前下载后,通过FileZilla 将两个文件上传到了在了 root的根目录
)

image.png

开始安装

  • 第一步
yum localinstall -y oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
  • 第二步
yum localinstall -y oracle-database-ee-19c-1.0-1.el7.x86_64.rpm

注意这里的名称有可能会变化的哦,以你下载的文件全名为主

  • 第三步
/etc/init.d/oracledb_ORCLCDB-19c configure

这一步会很耗时,当然服务器配置好的话不会太慢,20分钟左右

  • 第四步,设置环境变量,否则sqlplus / as sysdba 是不识别的
#执行 
vi .bash_profile

#添加一下内容
export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export PATH=$PATH:/opt/oracle/product/19c/dbhome_1/bin
export ORACLE_SID=ORCLCDB

#保存退出后 {esc -> :wq} 执行以下命令,使环境变量生效
source .bash_profile
  • 第五步 启动服务和监听
su oracle   #切换到oracle
sqlplus / as sysdba  #打开sql窗口
startup  #启动服务
exit  #退出命令窗口
cd $ORACLE_HOME/bin   #定位到bin目录
lsnrctl start  #启动监听

防火墙设置

网上关闭防火墙的做法实在是有点不负责任,防火墙在实际生产环境是必须要开启的

 systemctl start firewalld.service
 systemctl enable firewalld.service
 firewall-cmd --permanent --zone=public --add-port=22/tcp
 firewall-cmd --permanent --zone=public --add-port=1521/tcp
 firewall-cmd --reload
 firewall-cmd --permanent --zone=public --list-ports

现在已经可以和远程数据库连接了。

创建表和表空间

  • 创建表空间
create tablespace bettem_ts1 datafile '/opt/oracle/oradata/newdata/BETTEM_TS1.dbf' size 500M autoextend on next 100M maxsize unlimited;
# /opt/oracle/oradata/newdata/BETTEM_TS1 修改为自己的路径,如果有权限问题,使用 777 授权即可
  • 创建用户,直接在CDB下创建
create user c##test identified by test_123
  • 授权用户
grant create session to c##test;  
grant create table to  c##test;  
grant create tablespace to  c##test;  
grant create view to  c##test;
grant unlimited tablespace to c##test;
  • 授权表空间
alter user c##test quota unlimited on bettem_ts1;

此刻就可以连接了


image.png

切换CDB
alter session set container=CDB$ROOT;
切换PDB
alter session set container=ORCLPDB;
创建本地用户 (不需要加c##)
create user test identified by 123456;

猜你会遇到的问题

  • sql命令窗口的中文乱码问题
# 切换oracle 账户
su oracel
# 进入sql
sqlplus / as sysdba

#查看数据库编码
select userenv('language') from dual;   // copy 下编码

# 退出sql 命令行
ctrl+D 

# 切换到主用户
su root

# 编辑配置文件
vi .bash_profile

确定添加
export LANG="zh_CN.UTF-8"
export NLS_LANG=AMERICAN_AMERICA.UTF8   // 替换的数据库编码字符串

#生效配置
source .bash_profile
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。