CentOS 7 安装oracle19

vmw虚拟机 CentOS 7 安装oracle

参考:http://blog.itpub.net/69975956/viewspace-2706044/

关闭selinux:

  • 编辑/etc/selinux/config 文件
    [root@byh ~]# vi /etc/selinux/config

    SELINUX=disabled

配置系统参数

# 编辑/etc/pam.d/login 添加如下内容:
 vi /etc/pam.d/login 
 session    required     pam_limits.so
 
# 编辑vi /etc/profile添加如下内容:   #系统环境变量
if [ /$USER = "oracle" ] ; then
  if [ /$SHELL = "/bin/ksh" ]; then
  ulimit -p 16384
  ulimit -n 65536
else
  ulimit -u 16384 -n 65536
fi
  umask 022
fi

 # 编辑/etc/security/limits.conf 添加如下内容:
vi /etc/security/limits.conf 
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
  • yum -y localinstall oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
  • yum -y localinstall oracle-database-ee-19c-1.0-1.x86_64.rpm

配置oracle环境

  • 配置文件vim /etc/init.d/oracledb_ORCLCDB-19c
    export ORACLE\_VERSION=19c
    export ORACLE\_SID=ORCLCDB
    export TEMPLATE\_NAME=General\_Purpose.dbc
    export CHARSET=AL32UTF8
    export PDB\_NAME=ORCLPDB1
    export LISTENER\_NAME=LISTENER
    export NUMBER\_OF\_PDBS=1

    # true 表示创建容器数据库,若果是容器数据库,创建用户的时候普通用户要使用 c## 作为前缀

    export CREATE\_AS\_CDB=true # 改为 export CREATE\_AS\_CDB=false
  • root 用户执行命令:
  • /etc/init.d/oracledb_ORCLCDB-19c configure # 执行后先玩一盘王者等待
 # 执行完显示如下
Database configuration completed successfully. The passwords were auto generated, you must change them by connecting to the database using 'sqlplus / as sysdba' as the oracle user.

  • 配置oracle 环境
    export ORACLE\_BASE=/opt/oracle
    export ORACLE\_HOME=/opt/oracle/product/19c/dbhome\_1
    export PATH=`$ORACLE_HOME/bin:$`PATH
    export ORACLE\_SID=ORCLCDB
  • vim ~/.bash_profile
  • source ~/.bash_profile

安装错误

    The install cannot proceed because ORACLE_BASE directory (/opt/oracle)
    is not owned by "oracle" user. You must change the ownership of ORACLE_BASE
    directory to "oracle" user and retry the installation.


    The install cannot proceed because ORACLE_BASE directory (/opt/oracle)
    is not owned by "oinstall" group. You must change the ownership of
    ORACLE_BASE directory to "oinstall" group and retry the installation.
  • 这两个错误意思是oracle用户没有操作/opt/oracle目前权限,且不属于oinstall

目录授权

  • chown -R oracle:oinstall ./oracle

在oracle用户下查看监听器是否启动

  • lsnrctl status (查看监听器状态)
  • lsnrctl start (启动监听器)

Linux下安装Oracle后重启无法登录数据库ORA-01034:ORACLE not available

  • 执行 sqlplus / as sysdba命令
  • 然后输入startup启动oracle

启动oracle 报错

    could not open parameter file '/opt/oracle/product/10.2/db_1/dbs/initorcl.ora
  • 将 /opt/oracle/product/10.2/db_1/dbs/目录下的 init.ora 更改为 initorcl.ora

链接错误

    状态: 失败 -测试失败: IO 错误: The Network Adapter could not establish the connection (CONNECTION_ID=4sqFYx9UTb6zL1+u056jGg==)
  • 可能是防火墙拦截端口导致无法链接
  • 尝试关闭防火墙
# 临时关闭防火墙
systemctl stop firewalld
# 查看防火墙状态
systemctl status firewalld
# 永久关闭防火墙(先关闭防火墙在执行命令禁用防火墙)
systemctl disable firewalld
  • 如果还是这个错误,oracle用户下查看监听器是否启动

重置system密码

  • 执行 sqlplus / as sysdba;命令
  • 然后执行alter user system identified by 123456;重置system用户密码为123456

修改Oracle用户的密码:

    passwd oracle

创建数据库用户

# 创建表空间
CREATE TABLESPACE bdc_yc datafile '/u01/app/oracle/my_db/DDATA.dbf'  size 500M autoextend on next 5M maxsize unlimited;

# 创建临时表空间
CREATE temporary TABLESPACE bdc_yc_tmp tempfile '/opt/oracle/my_db/DDATA_TMP.dbf'  size 300M autoextend on next 5M maxsize unlimited;

# 创建用户并指定表空间以及临时表空间
create user bdc_yc identified by "123456" default tablespace bdc_yc temporary tablespace bdc_yc_tmp;

# 授予用户使用表空间的权限
alter user bdc_yc quota unlimited on bdc_yc;

# 授权(如果不是授权,则账号无法链接数据库)
grant create session to bdc_yc;
grant create table to  bdc_yc;
grant create tablespace to  bdc_yc;
grant create view to  bdc_yc;
posted @ 2025-04-03 15:04  程序员の奇妙冒险  阅读(56)  评论(0)    收藏  举报