使用Oracle VM VirtualBox安装centOS7、oracle12c



因为Windows安装oracle桌面版报错很烦人所以整理编辑了此文档。

(把Oracle安装在虚拟机,好处大大的有! 具体好在哪儿,自己脑补😄)
也就本地随便用用



一 软件包下载

夸克网盘:
链接:https://pan.quark.cn/s/eb56ffe7fd3c
提取码:r89t
在这里插入图片描述

二 安装Oracle VM VirtualBox、centOS7

VM:自行安装。
Oracle VM VirtualBox ↓
在这里插入图片描述

centOS7:↓
在这里插入图片描述

在这里插入图片描述

Rule1 : 添加端口映射,例如主机端口为22(随便设置),子系统端口为22(必须是这个)
Rule2 : 1521端口是安装oracle后在本地连接时用到的(类似腾讯云等服务器开放端口号)

在这里插入图片描述

选择下载好的centOS7在这里插入图片描述

点击启动按钮,运行虚拟主机,然后进入到Linux安装界面,什么都不需要做,等候几分钟
在这里插入图片描述
在这里插入图片描述

三 安装oracle

参考文章:https://blog.youkuaiyun.com/weixin_48546276/article/details/130008264

ssh连接我用的是MobaXterm

hostnamectl set-hostname oracledb
ip addr show #查看ip
echo "10.0.2.15 oracledb" >> /etc/hosts #本机ip 10.0.2.15
#关闭防火墙
systemctl stop firewalld
systemctl disable firewalld

#关闭selinux
setenforce 0  #临时关闭
sed 's/^SELINUX=.*/SELINUX=disibled/' /etc/selinux/config   #永久关闭

依赖下载

#备份源
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
#下载新的CentOS-Base.repo 到/etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
#或
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
#添加EPEL
curl -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all
yum makecache

#确保oracle所需依赖都安装完成,不然安装时会报错
yum install -y binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33.i686 glibc glibc.i686 glibc-devel glibc-devel.i686 ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libX11 libX11.i686 libXau libXau.i686 libXi libXi.i686 libXtst libXtst.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel libstdc++-devel.i686 libxcb libxcb.i686 make nfs-utils net-tools smartmontools sysstat unixODBC unixODBC-devel gcc gcc-c++ libXext libXext.i686 zlib-devel zlib-devel.i686

sudo yum install unzip #解压oracle用

在这里插入图片描述

groupadd -g 10001 oinstall  #创建组用户安装数据库,组id:123456
groupadd -g 10002 dba       # 创建组dba用于管理数据库
groupadd -g 10003 oper      #
useradd -u 10001 -g oinstall -G dba,oper oracle #创建用户oracle,主组为oinstall,其他组为dba,oper
passwd oracle  #手动设置oracle用户密码为oracle


mkdir -p /usr/local/products/oracle12c
chown -R oracle:oinstall /usr/local
chmod -R 775 /usr/local/

用MobaXterm找到文件地址直接粘贴吧

# /home/oracle/.bash_profile 粘贴下面的内容

# .bash_profile
# 加载 .bashrc 配置
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# Oracle 环境设置
export PATH=/usr/local/bin:/usr/sbin:/usr/local/sbin:/usr/bin:/root/bin:$ORACLE_HOME/bin

export ORACLE_HOSTNAME=oracledb
export ORACLE_UNQNAME=orcl
export ORACLE_BASE=/usr/local/products
export ORACLE_HOME=/usr/local/products/oracle12c  # 使用完整路径
export TNS_ADMIN=$ORACLE_HOME/network/admin

export ORACLE_SID=orcl

export TMP=/tmp
export TMPDIR=$TMP

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:$LD_LIBRARY_PATH

export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$CLASSPATH

export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"

#确保 .bash_profile 被加载
source ~oracle/.bash_profile

#验证变量是否生效:
echo $ORACLE_HOME

上传oracle12C到/home/oracle下,解压

cd /home/oracle
unzip Oracle_12C_liunx_64.zip

cd /home/oracle/database

#/home/oracle/database/response/db_install.rsp修改以下参数
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/usr/local/products/oracle12c/oraInventory
ORACLE_HOME=/usr/local/products/oracle12c
ORACLE_BASE=/usr/local/products

cd /home/oracle/database #在此目录下执行安装脚本
su oracle 
./runInstaller -ignoreSysPrereqs -ignorePrereq -waitforcompletion \
-showProgress -silent -responseFile /home/oracle/database/response/db_install.rsp

#等待完成
#切换root 必须执行下面两段
su root

/usr/local/products/oracle12c/oraInventory/orainstRoot.sh
/usr/local/products/oracle12c/root.sh


#执行后切换回oracle用户,登录sqlplus成功,证明数据库安装成功
sqlplus / as sysdba
exit
#创建监听程序
netca -silent -responseFile /home/oracle/database/response/netca.rsp
lsnrctl status #查看监听器

#创建数据库
#按需修改/home/oracle/database/response/dbca.rsp以下参数
templateName /usr/local/products/oracle12c/assistants/dbca/templates/General_Purpose.dbc 
gdbname orcl     #这里要和环境变量一致
sid orcl               #这里要和环境变量一致
characterSet AL32UTF8 
sysPassword s123456
systemPassword s123456 
createAsContainerDatabase true 
numberOfPDBs 1 
pdbName=orclpdb 
pdbAdminPassword p123456 
automaticMemoryManagement false
dbca -silent -createDatabase -responseFile /home/oracle/database/response/dbca.rsp -ignorePreReqs

#等待完成

#验证数据库是否创建成功
sqlplus / as sysdba; #以dba身份登录数据库
select status from v$instance;

# 创建表空间my_tablespace01
alter session set container=orclpdb;
ALTER SESSION SET CONTAINER = orclpdb;
CREATE TABLESPACE my_tablespace01 
    DATAFILE '/usr/local/products/oradata/orcl/orclpdb/my_tablespace01.dbf' SIZE 500M 
    AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED
    LOGGING
    ONLINE 
    PERMANENT;

alter session set container=CDB$ROOT;
CREATE TABLESPACE my_tablespace01 
    DATAFILE '/usr/local/products/oradata/orcl/my_tablespace01.dbf' SIZE 500M 
    AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED
    LOGGING
    ONLINE 
    PERMANENT;

#创建C##用户 test
CREATE USER C##test IDENTIFIED BY t123456 DEFAULT TABLESPACE MY_TABLESPACE01 TEMPORARY TABLESPACE temp;

#授予连接权限
GRANT CONNECT TO C##test;

# 授予开发权限,允许创建表、视图、存储过程等
GRANT RESOURCE TO C##test;

#允许 C##test 用户管理其他用户的对象(比如:视图、存储过程)
GRANT DBA TO C##test;

#以 C##test 用户创建表
CREATE TABLE C##test.test_table (
    id NUMBER PRIMARY KEY,
    name VARCHAR2(100)
) TABLESPACE my_tablespace01;


# 授予 C##test 在 my_tablespace01 表空间的使用权限
GRANT UNLIMITED TABLESPACE TO C##test;

在这里插入图片描述

四 遇到问题

每次重启linux都需要执行<source ~oracle/.bash_profile>?
把/home/oracle的.bash_profile配置追加到/etc/profile和/root .bash_profile中

将就用吧 只能遇到问题解决问题了

五 linux启动oracle

su oracle
sqlplus / as sysdba
  > startup
lsnrctl status#查看监听程序
lsnrctl start

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值