【Oracle】Linux——Centos7安装Oracle12c

news2024/11/18 14:29:16

安装前拍快照、安装前拍快照、安装前拍快照

目录

  • ==安装前拍快照、安装前拍快照、安装前拍快照==
  • 1.下载Oracle12C安装包
  • 2.基本环境搭建
    • 2.1创建用户和组
    • 2.2创建oralce安装目录,oracle用户分配目录权限
    • 2.3上传安装包
  • 3.系统参数配置及服务器设置
    • 3.1依赖安装
    • 3.2内核参数配置
    • 3.3配置完成后,使生效
    • 3.4修改文件限制
    • 3.5pam验证登陆规则定义
    • 3.6系统环境变量配置
    • 3.7Oracle用户环境变量配置
    • 3.8防火墙开放服务器的1521端口
    • 3.9重启服务器
  • 4.安装Oracle
    • 4.1登录oracle用户
    • 4.2解压Oracle安装包
    • 4.3执行安装命令
    • 4.4图形化界面设置
    • 4.5登录root用户执行这两行命令,执行完毕侯点击确定
  • 5.测试
  • 6.创建普通用户并分配表空间、授权
    • 6.1创建用户
    • 6.2创建表空间
    • 6.3解锁
    • 6.4给用户分配表空间
    • 6.5授权
  • 7.可视化工具连接Oracle服务
    • 7.1 PLSQL
    • 7.2Navicat

1.下载Oracle12C安装包

官方网站:https://www.oracle.com
历史版本下载地址:https://edelivery.oracle.com/ (需要登录)
如果官方下载有问题,使用百度网盘:链接: https://pan.baidu.com/s/101U3P3KYUQ5p_zsAP1aCfw?pwd=6666 提取码: 6666

2.基本环境搭建

2.1创建用户和组

添加oinstall、dba 组,创建oracle用户,设置oracle用户密码(练习的话,为了方便记忆,建议不要太复杂,我这里设置123456了)

groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd  oracle

在这里插入图片描述

2.2创建oralce安装目录,oracle用户分配目录权限

mkdir -p /orcl/app/oracle/product/12.2.0/db_home
chown -R oracle:oinstall /orcl/app
chmod -R 775 /orcl/app

在这里插入图片描述

2.3上传安装包

上传oracle12c安装包到 /orcl/app/oracle目录下
在这里插入图片描述在这里插入图片描述

3.系统参数配置及服务器设置

3.1依赖安装

yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp

rpm -q binutils compat-libcap1 compat-libstdc++  gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel

如果提示未安装软件包 compat-libstdc++,此包可以忽略,不影响后续安装
安装第一个依赖时,因为一些网络原因报了这个错

Error downloading packages:
  compat-libcap1-1.10-7.el7.x86_64: [Errno 256] No more mirrors to try.

出现这个的原因是虚拟机中的主机网关不能dns到,加8.8.8.8作为dns即可,不要重启网络服务

vim /etc/resolv.conf

nameserver 114.114.114.114
nameserver 8.8.8.8

在这里插入图片描述

3.2内核参数配置

vim /etc/sysctl.conf

#添加以下配置
fs.aio-max-nr = 1048576   
fs.file-max = 6815744   
kernel.shmall = 2097152   
kernel.shmmax = 4098955264    
kernel.shmmni = 4096   
kernel.sem = 250 32000 100 128  
net.ipv4.ip_local_port_range = 9000 65500   
net.core.rmem_default = 262144   
net.core.rmem_max = 4194304   
net.core.wmem_default = 262144   
net.core.wmem_max = 1048576

3.3配置完成后,使生效

sysctl -p

3.4修改文件限制

vim /etc/security/limits.conf

#添加以下配置
oracle soft nproc 2047   
oracle hard nproc 16384 
oracle soft nofile 1024   
oracle hard nofile 65536   
oracle soft stack 10240

3.5pam验证登陆规则定义

vim /etc/pam.d/login

#添加以下配置
session    required     pam_limits.so

3.6系统环境变量配置

vim /etc/profile

#添加以下配置
if [ $USER = "oracle" ]; then  
if [ $SHELL = "/bin/ksh" ]; then   
    ulimit -p 16384   ulimit -n 65536a   
    else   
    ulimit -u 16384 -n 65536   
fi   
fi

3.7Oracle用户环境变量配置

vim ~oracle/.bash_profile

#添加以下配置
ORACLE_BASE=/orcl/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/12.2.0/db_home
ORACLE_SID=orcl
export ORACLE_BASE ORACLE_HOME ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

3.8防火墙开放服务器的1521端口

firewall-cmd --zone=public --add-port=1521/tcp --permanent
firewall-cmd --reload

为了方便,这一步可以直接用关闭防火墙替换

3.9重启服务器

reboot

4.安装Oracle

4.1登录oracle用户

su - oracle

4.2解压Oracle安装包

cd /orcl/app/oracle
unzip Oracle_12C_liunx_64.zip

4.3执行安装命令

cd /orcl/app/oracle/database
./runInstaller

在这里插入图片描述安装操作建议直接在Linux本机操作,如果是用shell工具远程连接linux系统,在安装Oracle会提示 DISPLAY 尚未设置。请设置 DISPLAY 后重试。此时需要设置 DISPLAY再进行安装,其中 192.168.2.220 是连接linux的客户机ip地址,非Linux系统ip地址

DISPLAY=192.168.2.220:0.0; export DISPLAY
./runInstaller

然后可能出现这个报错
在这里插入图片描述没关系,再打开一个ssh连接通道,使用root账号执行以下命令:

xhost +access control disabled, clients can connect from any host

再切换回 原来的通道,继续执行:

./runInstaller

然后就弹窗出安装界面了

4.4图形化界面设置

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

4.5登录root用户执行这两行命令,执行完毕侯点击确定

sh /home/oracle/app/oraInventory/orainstRoot.sh
sh /home/oracle/app/oracle/product/12.2.0/dbhome_1/root.sh

在这里插入图片描述在这里插入图片描述在这里插入图片描述

5.测试

su - oracle
lsnrctl status

#打开监听服务
lsnrctl start 
#关闭监听服务
lsnrctl stop 
sqlplus /nolog
SQL>conn /as sysdba
# 启动数据库
SQL>startup
# 关闭数据库
SQL>shutdown

6.创建普通用户并分配表空间、授权

6.1创建用户

	CREATE USER eom IDENTIFIED BY eomdev;

eom为用户名,eomdev为密码

创建用户如果报如下错误

SQL> CREATE USER eom IDENTIFIED BY eomdev;
CREATE USER eom IDENTIFIED BY eomdev
            *
ERROR at line 1:
ORA-65096: invalid common user or role name

参考以下解决办法

SQL> alter session set "_ORACLE_SCRIPT"=true;
Session altered.
SQL> commit;
Commit complete.
SQL> CREATE USER eom IDENTIFIED BY eomdev;
User created.

6.2创建表空间

  • 语法:
CREATE TABLESPACE tablespace_name 
    DATAFILE 'datafile_path_size' SIZE datafile_size 
    [AUTOEXTEND ON NEXT datafile_size_increment 
    MAXSIZE datafile_max_size] 
    [LOGGING | NOLOGGING];
属性解释
tablespace_name您要创建的表空间的名称。
datafile_path_size数据文件的路径和名称。
datafile_size数据文件的初始大小。
AUTOEXTEND ON 和 NEXT 子句用于指示Oracle自动扩展数据文件。
datafile_size_increment数据文件每次自动扩展时增加的大小。
MAXSIZE 子句指定数据文件可以增长到的最大尺寸。
LOGGINGNOLOGGING

SQL示例

	CREATE TABLESPACE kgc DATAFILE '/orcl/app/oracle/oradata/orcl/kgc01.dbf' SIZE 100M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED LOGGING;

6.3解锁

	alter user eom account unlock;

6.4给用户分配表空间

	alter user eom default tablespace kgc ;

6.5授权

	#合并写法
	grant connect ,resource,dba,exp_full_database,imp_full_database to eom;
	#单独写法,分别解释含义
	grant create session to cyz;#登录权限
	grant create table to cyz;#建表权限
	grant create view to cyz;#创建视图权限
	grant create connect to cyz;
	grant resource to cyz;
	grant all to public;#所有权限给所有用户

7.可视化工具连接Oracle服务

7.1 PLSQL

在这里插入图片描述在这里插入图片描述

7.2Navicat

在这里插入图片描述在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1540435.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【项目自我反思之vue的组件通信】

为什么子组件不能通过props实时接收父组件修改后动态变化的值 一、现象二、可能的原因1.响应式系统的限制2.异步更新队列3.父组件和子组件的生命周期4.子组件内部对 props 的处理 三、组件通信的几种场景(解决方案)1.子组件想修改父组件的数据2.子组件传…

Keepalive与idle监测及性能优化

Keepalive 与 idle监测 Keepalive(保活): Keepalive 是一种机制,通常用于TCP/IP网络。它的目的是确保连接双方都知道对方仍然存在并且连接是活动的。这是通过定期发送控制消息(称为keepalive消息)实现的。如果在预定时…

机器学习K-means算法

K-Means 算法(K-Means算法、K-Means 中心值计算、K-Means 距离计算公式、K-Means 算法迭代步骤、K-Means算法实例) 问题引入 给你如下两种图片,快读回答2个问题,问 图1 中有几类五谷杂粮?问 图2 中有几类五谷杂粮&…

深度分析鸿蒙应用开发的准确红利期、前景、未来发展方向

近年来,随着互联网技术的不断发展,鸿蒙生态开发逐渐成为热门话题。作为一种新兴的操作系统,其发展趋势备受关注。同时,鸿蒙生态开发的价值、就业岗位需求以及相关学习方面也引起了广泛关注。 那么就目前的形势来看,鸿…

6-191 拓扑排序

一项工程由一组子任务构成,子任务之间有的可以并行执行,有的必须在完成了其他子任务后才能执行。例如,下图表示了一项工程若干子任务之间的先后关系。 编写函数输出所有子任务的拓扑序列。 函数接口定义: Status Push_SeqStack(SeqStack &s, ElemType x)//入栈,x入到…

镁光的sdram手册阅读--MT48LCC16M16A2

镁光的sdram手册阅读–MT48LCC16M16A2 一、这个sdram的总容量是256Mb,MT48LC16M16A2对应的参数是:4Meg 16 4banks,也可表示为16M16。4164256Mbit。 1)其中,4Meg表示单个bank包含的存储单元个数,计算公式…

docker 数据卷 (二)

1,为什么使用数据卷 卷是在一个或多个容器内被选定的目录,为docker提供持久化数据或共享数据,是docker存储容器生成和使用的数据的首选机制。对卷的修改会直接生效,当提交或创建镜像时,卷不被包括在镜像中。 总结为两…

下载最新VMware,社区版本(免费)

VMware - Delivering a Digital Foundation For BusinessesRun any app on any cloud on any device with a digital foundation built on VMware solutions for modern apps, multi-cloud, digital workspace, security & networking.https://www.vmware.com/ 官网地址

高等数学基础篇(数二)之微分方程

微分方程: 一、常微分方程的基本概念 二、一阶微分方程 三、可降阶的高阶方程 四、高阶线性微分方程 目录 一、常微分方程的基本概念 二、一阶微分方程 三、可降阶的高阶方程 四、高阶线性微分方程 一、常微分方程的基本概念 二、一阶微分方程 帮助理解&…

适用于存储卡数据恢复的最佳 SD 卡恢复软件

在当今的数字时代,我们对 SD 卡存储关键数据的 依赖显着增加。由于其便携性和巨大的存储容量,这些紧凑的便携式存储设备越来越受欢迎。 选择最佳 SD 卡恢复软件时要考虑的事项: 兼容性: 选择最好的 SD 卡恢复软件时&#xff0c…

IPMI开源库pyghmi基本使用

简介:Pyghmi是一个纯Python(主要是IPMI)服务器管理库。IPMI(Intelligent Platform Management Interface,智能平台管理接口)是一种开放的标准,旨在帮助系统管理员在本地和远程管理服务器系统。而…

MySQL表内容的增删查改

在前面几章的内容中我们学习了数据库的增删查改,表的增删查改,这一篇我们来学习一下对表中的内容做增删查改。 CRUD : Create(创建), Retrieve(读取),Update(更新),Delete(删除) 1.创建Create 我们先创建…

C语言——字符函数

前言 字符函数是C语言中专门用来处理字符的函数,再C语言中,我们有时需要大量的处理有关字符的问题,所以字符函数就由此应运而生,接下来我来为大家简单介绍一下字符函数。 一.字符分类函数 函数如果它的参数满足下列条件就返回真…

jmeter断言使用方法

断言主流的有两种:响应断言、JSON断言 响应断言 1、http请求添加响应断言 2、三种作用域:第一种既作用主请求又作用子请求、只作用主请求、只作用子请求。我们默认选中间的仅作用主请求即可。 3、测试字段和匹配规则 测试字段一般选择响应文本即可&am…

[RootersCTF2019]I_<3_Flask -不会编程的崽

又是一个新东西哦。先看界面 源代码没提示,抓包没特别数据,没有交互界面,后台扫描也没文件。我知道是python模板,但是注入点???看来wp才知道原来还有参数爆破,哈哈哈。整笑了。有一…

深度学习(过拟合 欠拟合)

过拟合: 深度学习模型由于其复杂性,往往容易出现过拟合的问题。以下是一些深度学习中常见的过拟合原因和解决方法: 1. 数据量不足:深度学习模型通常需要大量的数据来进行训练,如果数据量不足,模型容易过度…

使用Python抓取抖音直播间数据的简易指南【第152篇—抓取数据】

👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 使用Python抓取抖音直播间数据的简易指南 说明:本文已脱敏,隐去地址…

JVM快速入门(1)JVM体系结构、运行时数据区、类加载器、线程共享和独享、分区、Java对象实例化

5.1 JVM体系结构 线程独占区-程序计数器(Program Counter Register) 程序计数器是一块较小的内存空间,它可以看做是当前线程所执行的字节码的行号指示器;在虚拟机的概念模型里,字节码解释器工作时就是通过改变这个计数…

如何解决Layui后台接口返回数据,但是table.render不渲染表格数据的问题

我这边进行了pareData数据格式转换,response重新定义了layui的参数格式规范 接口正常返回了数据 但是就是不渲染,我这个郁闷啊!! 忽然,我把后台重新定义的layui规定的格式参数,有个参数名叫data&#xff0…

Day 1 二分算法(C++)

算法简介 二分查找(Binary Search)是一种常见的查找算法,它适用于已经排序好的数组或列表。它的基本思想是不断地将待查找区间分成两半,并通过比较目标值与中间元素的大小关系来确定目标值在哪一半中,从而缩小查找范围…