介绍

Oracle 是市场目前很流行的大型数据库,适用于大型项目的数据库存储。
作用:
合理的管理数据的存储和读取
结构:
关系型数据库

版本

Oracle数据库管理系统:

  • Oracle 公司的核心产品
  • 基于C/S系统结构
  • 主要版本Oracle8/9(internet)、Oracle0g/11g(grid)
  • 2013年6月26日,Oracle Database 12c(cloud)版本正式发布
  • 2020年4月25日,19c稳定版、20c前瞻

使用

# 安装和卸载

  • 学习用 oracle 11g
    为了方便,我们使用 Oracle XE 版本
    (Express Edition 简化版、比较轻量级的一个版本)
    参考:oracle xe 11g下载和安装教程
    下载地址:https://www.oracle.com/database/technologies/xe-prior-releases.html
    (2020年4月25日)

    限制
    Oracle是这样解释XE的,一个强大的,性能已经得到证实的业界领先的软件,而且升级简单无需其他成本和复杂的移植。
    为什么需要升级,因为这是一个精简版,精简的根本在于如下的限制,正是因为有了这个限制,XE才是真正的精简版而不至于才华横溢。

    资源项 限制
    CPU 一台机器上不超过一CPU
    内存 内存不会超过1G
    数据 数据库存储的数据量不会超过11G
  • PLSql:第三方提供的客户端插件

  • 卸载
    https://jingyan.baidu.com/article/922554468d4e6b851648f4e3.html
    (oralce 11g 完全卸载。卸载不完全,无法重新安装)

安装几个重要步骤

123.com

# 验证安装成功


conn system/密码

system 是用户名

或者命令行 sqlplus 登录

sys 是比system 更高的账号,也是自带的。
登录 sys 需要用 as 指明 sysdba 角色

# 安装内容&服务

安装内容:

  • 数据库系统(一个)
  • 数据库(多个)
    SID:数据库的唯一标识
    注意:Oracle XE版本默认安装数据库名为XE

SID:System IDentifier的缩写,是 Oracle 实例的唯一标识。
因为 Oracle 中一个实例只能操作一个数据库的原因,Oracle 中也会使用 SID 来作为库的名称。

软件服务介绍

  • OracleServiceXE:相当于oracle的开关
  • OracleXETNSListener:Oracle的监听器

# 软件目录结构介绍

H:\oraclexe\app\oracle>tree
卷 软件 的文件夹 PATH 列表
卷序列号为 5C67-0905
H:.
├─admin - 记录Oracle实例的配置,目录日志等文件。每个实例一个目录
│
├─diag - Oracle 11g新添加的一个重组目录。
│       其中的子目录,基本上Oracle每个组件都有了自己单独的目录,在Oracle 10g中我们一直诟病的 log 文件散放在四处的问题终于得到解决
│       无论是 asm 还是 crs 还是 rdbms,所有组件需要被用来诊断的log文件都存放在了这个新的目录下。
│
├─fast_recovery_area - 闪回区:分配一个特定的目录位置来存放一些特定的恢复文件,用于几种和简化管理数据库恢复工作。
│
├─oradata - 数据库空间
│           包含三种文件
│           CTL 控制文件
│           LOG 日志文件
│           DBF 数据文件
│
└─product - 数据库管理系统软件相关的目录└─11.2.0└─server├─bin - 工具目录,比如:sqlplus├─jdbc - 数据库和java连接所需的jar包│  └─lib├─network - 网络配置目录│  ├─ADMIN│  │  └─sample│  └─mesg├─lib├─log - oracle异常日志信息存储目录│  ├─diag。。。。。

# 链接配置

文件位置
Oracle 目录\product\11.2.0\server\network\ADMIN

文件作用

  • sqlnet.ora
    名称解析。通过这个文件来决定怎么样找一个连接中出现的连接字符串。
    如:sqlplus scott/scott@xe

    NAMESS.DIRECTORY_PATH=(TNSNAMES,EZCONNECT)

  • tnsnames.ora
    用在 oracle client 端,用户配置连接数据库的别名参数,就像系统中的 hosts 文件一样

  • listener.ora

# 访问原理、本地网络服务

软件体系架构

  • B/S架构:Browser/Server(浏览器服务器模式)
  • C/S架构:Client/Server(客户端服务器模式)

Oracle 是基于C/S架构的。
基本交互流程:
oracle客户端(位置地域不限) ⇒ oracle服务器 ⇒ 数据库

客户端需要指明: ip、端口号、协议、库名
默认的值在:安装目录\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN

PLsql 访问

远程登录

# 监听器配置


监听器常见错误:ora-12514
解决:
在 H:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN\listener.ora
中添加

(SID_DESC =(GLOBAL_DBNAME = XE)(ORACLE_HOME = H:\oraclexe\app\oracle\product\11.2.0\server)(SID_NAME = XE)
)

ORACLE_HOME 是你的目录
然后,重启监听服务:
OracleXETNSListener

# 表空间

需要 sys、system 用户的权限

永久表空间
表空间是数据库的逻辑划分,一个表空间只能属于一个数据库。所有的数据库对象都存放在指定的表空间中。但主要存放的是表,所以称作表空间
临时表空间
Oracle 临时表空间主要用来做查询和存放一些缓冲区数据,临时表空间消耗的主要原因是需要对查询的中间结果进行排序。重启数据库可以释放临时表空间。

创建永久表空间命令

create tablespace 永久表空间名称 datafile '永久表空间物理文件位置' size 15M autoextend on next 10M permanent online create tablespace MYSPACE datafile 'H:\oraclexe\app\oracle\oradata\XE\MYSPACE.DBF' size 15M autoextend on next 10M permanent online

# 创建用户

OracleXE自带账户
账户名:

  • sys:超级用户(攻城狮)
  • system:系统账户(管理员)
  • scott:普通用户

    Oracle 11g和Oracle 10g自带一个普通用户 scott,默认密码为 tiger,并给该用户提供了一些学习 oracle 操作的数据表。如: emp、dept 等表
    注意:
    OracleXE版本安装好后,不自带普通用户的。

区别:
sys账户比system账户的权限要多

  • sys可以完成数据库的所有管理任务。
  • system通常用来创建一些用户查看管理信息的表或视图。
    (不建议使用 system 用户来创建一些与管理无关的表或者视图)

sys 和 system 在登录 Oracle 时,sys 只能以系统管理员(sysdba)或者系统操作员(sysoper)的权限登录,而 system 可以直接登录(normal)


Oracle 新建用户:

需要 sys 或 system 权限

  • 打开 plsql,使用system账户登录,注意:登录身份选择sysdba

概要文件(profile):一些对用户限定的命令,封装成的一个文件。可以不设置。
设置好后,点击应用

虽然是可视化界面,但是底层仍然用的sql语句,可以点击查看

这时候账号还无法登陆。
因为没有授权登陆权限

# 分配权限

编辑用户

  • 对象权限(Object privileges)
    对象权限是指在指定的表、视图、序列上制定执行动作的权限或权利。
  • 角色权限(Oole privileges)
    角色是可以授予用户的相关权限的组。该方法使权限的授予、收回更加容易管理。
  • 系统权限(System privileges)
    为用户分配创建表、创建用户、创建视图、创建存储过程等权限。

## 授予登录权限

登录,需要为当前用户分配一个 connect 链接角色

查看 sql 可以看到变化

## 授予资源权限

如果资源权限没有被授予,无法创建表格

授予创建表格权限

授予表空间权限


dba权限

分配权限更多是开发环境下的需求,学习期间避开分配权限的麻烦,可以直接给用户一个dba 用户权限

DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。
所以,设置dba权限后,前面设置的权限,像登录,表创建等权限授予就不用设置了,已经包含在 dba 中。(当然设置也不会报错)

参考:Oracle权限管理详解

视频:

  • 讲 oracle+jdbc
  • 讲 ql/sql
  • 讲 oracle (相对全)

【待整合】Oracle数据库 1 - 版本、安装、目录、网络监听配置、创建用户相关推荐

  1. 在centos上,oracle数据库更改IP后无法启动监听,解决方法

    在centos上,oracle数据库更改IP后无法启动监听,解决方法 参考文章: (1)在centos上,oracle数据库更改IP后无法启动监听,解决方法 (2)https://www.cnblog ...

  2. oracle12541 linux,PLSQL连接Linux上的oracle数据库出现,ORA-12541 TNS 无监听程序

    PLSQL连接Linux上的oracle数据库出现,ORA-12541 TNS 无监听程序 外部的PLSQL无法连接Linux上的oracle数据库,出现ORA-12541 TNS 无监听程序错误.待 ...

  3. 连接ORACLE数据库提示:ORA-12541: TNS: 无监听程序

    背景 在连接ORACLE数据库提示:ORA-12541: TNS: 无监听程序问题,在网上搜了许多文章使用了很多方法,比如重启监听,重启数据库等都无效 解决方案 1.检查listener.ora中的h ...

  4. oracle数据库本地连接报错:监听程序当前无法识别连接描述符中请求的服务

    解决办法: 在安装目录下打开D:\app\oracle\product\12.1.0\dbhome_1\NETWORK\ADMIN下的listener.ora文件 在图中标记处添加以下,其中ORACL ...

  5. 连接Linux服务器下Oracle数据库提示:ORA-12541: TNS: 无监听程序

    文章目录 原因1:实例服务被关闭 原因2:监听服务关闭 原因1:实例服务被关闭 解决: 切换到Oracle用户 su – oracle sqlplus /nolog 启动服务 connect /as ...

  6. 【Linux Centos6/7连接Oracle11g数据库,提示:ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务】

    Linux Centos6/7连接Oracle11g数据库,提示:ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 1.登录oracle用户权限并查看监听状况 2.修改配置文件(* ...

  7. oracle数据库生产,从安装系统到oracle数据库生产环境(centos6.8)搭建

    大纲服务器安装 JDK配置 Oracle数据库安装配置 1.安装服务器 服务器的安装参考这篇教程 关于安装中可能出现的几个问题,在这里进行解决: 1.使用u盘安装完后,系统进入GRUB引导,无法启动: ...

  8. 查看oracle版本及补丁,检查及升级Oracle数据库补丁版本

    第一部分:检查Oracle数据库补丁版本 1. 查看所有版本信息: oracle@www.linuxidc.com:~/product/11g/db/OPatch> ./opatch lsinv ...

  9. Oracle数据库19C的安装与配置-2022年最新版

    1.访问Oracle19C下载官网 https://www.oracle.com/database/technologies/oracle-database-software-downloads.ht ...

最新文章

  1. 激光点云格式转换 bin-to-pcd
  2. 手机数控模拟器安卓版_车床模拟器2手机版下载-车床模拟器2游戏 v2.5.0安卓版_5577安卓网...
  3. input border IE6 bug
  4. Gson 字符串与对象相互转换工具类
  5. python路3--tuple、str
  6. python使用opencv_教你快速使用OpenCV/Python/dlib進行眨眼檢測識別!
  7. 软件测试开发实战| Java版本,Gson解析json比较常用的2种方式
  8. python 操作同花顺下单程序_Py(76)Python/C API 参考手册:操作系统实用程序
  9. 2.2使用urllib的简单传输
  10. HDU1874 畅通工程续【Dijkstra算法】
  11. linux中ifi_info的英文全称,【DNS服务器IP地址-域名注册查询-CDN加速技术】
  12. Azure实践之通过automation管理资产
  13. Linux之镜像源篇
  14. soapUI 接口测试断言
  15. C基础:程序执行时间的计算方法的三种方式
  16. Python求解非齐次线性方程组代码
  17. 手机会员积分 html,会员积分系统主要有什么作用和功能?
  18. 百度AI 开放平台 - 各大AI 开放平台开放能力解读和分析,技术的应用场景,技术前景
  19. 谈谈BGA芯片S3C2440的焊接
  20. 【学习笔记】Windows格式文档转换成Unix格式

热门文章

  1. 面试总结3——计算机网络
  2. 【工具】VSCODE使用教程
  3. 学习-Springboot禁止内置Tomcat不安全的HTTP方法
  4. 原来湖北籍计算机人才这么多,LOL最强选手UZI也是湖北人
  5. OSSIM开源安全信息管理系统(九)
  6. 个人工作计划管理软件盘点_计划软件产品时功能方法如何帮助管理工作范围
  7. python startswith() 函数
  8. python将图片转换成二进制文本_python图片转为二进制文本
  9. 【安全咨讯】发早安、晚安图片会被黑客攻击?老谣言“扩容”后再热传
  10. 惰性求值 php,惰性求值——lodash源码解读