当前位置: 首页 > news >正文

【Oracle】玩转Oracle数据库(六):模式对象管理与安全管理

 

前言

嘿,数据库大冒险家们!准备好迎接数据库管理的新挑战了吗?今天我们要探索的是Oracle数据库中的模式对象管理与安全管理!🛡️💻

在这篇博文【Oracle】玩转Oracle数据库(六):模式对象管理与安全管理中,我们将揭开数据库管理的神秘面纱,学会如何高效地管理数据库中的模式对象,并确保数据的安全与隐私!🔒🔍

无论你是想成为数据库安全专家,还是希望提升数据库管理的技能,相信我,本文都将成为你的灯塔!我们要掌握模式对象的创建、修改和删除,了解权限管理的重要性,学会如何保护数据库免受未授权访问和恶意攻击!准备好和我一起踏上数据库安全之路了吗?让我们的数据堡垒更坚固,让数据库的守护者更强大!🏰🔐

目录

前言

☀️一、研究目的

🌼二、研究内容

🌷三、研究结论

🔥1. 创建一个TESTUSER用户,密码为test,默认表空间为users表空间

🔥2. 创建用户后为其授予登录数据库和创建数据库对象的权限

🔥3. 用TESTUSER用户登录数据库

🔥4. 创建学生信息表(学号,姓名,性别,入学成绩),定义主键和输入数据(至少5条数据),提交添加的数据。

🔥5. 创建一个表簇,名为empl_dep,容纳empl表和dep表,有公共字段depno(簇键),大小为500,默认表空间为USERS表空间,存储参数为,初始化区间大小为100K,第二区间为200K等。

🔥6. 在表簇中建立empl表和dep表

🔥7. 在表簇中建立一个簇键索引,名为empl_dep_index。

🔥8.授予scott用户在empl表上的所有权限,提示:授权和收回权限可在sys/system/testuser用户登录以后进行授权。

🔥9. 收回scott用户拥有的empl表上DELETE权限

📝四、研究心得


☀️一、研究目的

1.了解模式对象的类型

2.掌握在OEM中操作模式对象的方法

3.掌握命令方式建立表、视图、索引等常见对象的方法

4.熟悉Oracle中权限分类和设置,理解系统提供用户的角色和权限

5.熟练使用建立用户、角色,为用户授权、授予角色的命令


🌼二、研究内容

1.创建一个TESTUSER用户,密码为test,默认表空间为users表空间

2.创建用户后为其授予登录数据库和创建数据库对象的权限

3.用TESTUSER用户登录数据库

4.创建学生信息表(学号,姓名,性别,入学成绩),定义主键和输入数据(至少5条数据),提交添加的数据。并完成下面的题目:

(1)再继续添加2条数据,设置一个保存点savepoint,再添加1    条数据,执行回退到保存点的回退命令。查看此时表中数据

(2)查询入学成绩大于480的学生信息

(3)建立男生信息视图(创建视图的权限需要提前授予)

(4)在“成绩”字段上建立B-树索引

5.创建一个表簇,名为empl_dep,容纳empl表和dep表,有公共字段depno(簇键),大小为500,默认表空间为USERS表空间,存储参数为,初始化区间大小为100K,第二区间为200K等。

6.在表簇中建立empl表和dep表

(1)empl表(职员表)的主键为eno,外键为depno

(2)dep表(部门表)的主键为depno。

7.在表簇中建立一个簇键索引,名为empl_dep_index。

8.授予scott用户在empl表上的所有权限,提示:授权和收回权限可在sys/system/testuser用户登录以后进行授权。

9.收回scott用户拥有的empl表上DELETE权限


🌷三、研究结论

准备工作:

按住win+r输入sqlplus,如图1.

图1

输入用户名:sys as sysdba,密码:Csuft123.并输入startup启动实例如图2.

图2

【实验内容开始】

🔥1. 创建一个TESTUSER用户,密码为test,默认表空间为users表空间

答:创建语句如下

create user testuser
identified by test
default tablespace users
quota 5M on users;

运行结果如图3

图3


🔥2. 创建用户后为其授予登录数据库和创建数据库对象的权限

答:创建语句为

grant create session,create table to testuser;

运行结果如图4

图4


🔥3. 用TESTUSER用户登录数据库

使用命令

conn testuser/test

运行结果如图5

图5


🔥4. 创建学生信息表(学号,姓名,性别,入学成绩),定义主键和输入数据(至少5条数据),提交添加的数据。

(1)再继续添加2条数据,设置一个保存点savepoint,再添加1    条数据,执行回退到保存点的回退命令。查看此时表中数据

答:创建命令为

create table student
(s_num varchar2(10) Primary key,
s_name varchar2(20) not null,
s_sex varchar2(8) not null,
s_grade int );

运行结果如图6

图6

查询表结果如图7

图7

此时表中无数据,向表中添加五条数据如图8

图8

(2)查询入学成绩大于102的学生信息

答:输入命令如图9

select * from student where s_grade>102;

图9

(3)建立男生信息视图(创建视图的权限需要提前授予)

答:输入命令如图10

create or replace view view_man
as
select * from student
where s_sex='男';

图10

(4)在“成绩”字段上建立B-树索引

答:创建语句,结果如图11.

create index s_grade_index on student(s_grade);

图11


🔥5. 创建一个表簇,名为empl_dep,容纳empl表和dep表,有公共字段depno(簇键),大小为500,默认表空间为USERS表空间,存储参数为,初始化区间大小为100K,第二区间为200K等。

答:输入指令结果如图12

create cluster empl_dep(depno varchar2(4))
size 500
tablespace users
storage(
initial 100k
next 200k)

图12


🔥6. 在表簇中建立empl表和dep表

(1)empl表(职员表)的主键为eno,外键为depno

答:如图13

图13

(2)dep表(部门表)的主键为depno。

答:如图14

图14


🔥7. 在表簇中建立一个簇键索引,名为empl_dep_index。

答:如图15

图15


🔥8.授予scott用户在empl表上的所有权限,提示:授权和收回权限可在sys/system/testuser用户登录以后进行授权。

答:由于需要授权,此处需要连接到sys即超级管理员用户,再输入命令进行授权如图16

grant all on testuser.empl to scott;

图16


🔥9. 收回scott用户拥有的empl表上DELETE权限

答:由于需要收回权限,此处需要连接到sys即超级管理员用户,再输入命令进行授权如图17

revoke delete on testuser.empl from scott;

图17


📝四、研究心得

嘿,数据库探险家们!这次的Oracle数据库管理实验简直就像是一场火爆的技术狂欢!我不仅熟悉了模式对象的种类和创建方式,还潜入了Oracle权限的秘境,尝试了各种神奇的授权操作!🔑💻

但是,技术之路永远都是充满挑战和惊喜的!在这次实验中,遇到了各种小插曲和技术困境。比如,授权的时候,我可是碰了不少壁!ORA-01031错误简直就是技术小怪兽!👾😅后来,我才发现,创建视图的权限没给全,导致了这场小插曲!

还有,授权操作可不是那么容易就能搞定的!一不小心就会掉进权限的迷宫!必须要返回到更高权限的用户进行操作,否则就是一触即发的错误!🚨

总的来说,这次实验虽然不算太难,但却要求我们做到认真细致!比如,创建表设置主键和外键时,属性格式一定要一致,稍有不慎就会出现技术小烦恼!😉💡

这就是技术之路的魅力所在!每一次挑战都是一次成长,每一次困境都是一次启迪!让我们继续探索,让数据库的世界更加精彩!💪🌟

相关文章:

【Oracle】玩转Oracle数据库(六):模式对象管理与安全管理

前言 嘿,数据库大冒险家们!准备好迎接数据库管理的新挑战了吗?今天我们要探索的是Oracle数据库中的模式对象管理与安全管理!🛡️💻 在这篇博文【Oracle】玩转Oracle数据库(六)&#…...

微服务篇之限流

一、为什么要限流 1. 并发的确大(突发流量)。 2. 防止用户恶意刷接口。 二、限流的实现方式 1. Tomcat限流 可以设置最大连接数,但是每一个微服务都有一个tomcat,实现起来非常麻烦。 2. Nginx限流 (1)控…...

react脚手架

1.react概述 1.1 什么是react React是一个用于构建用户界面的JS库。 用户界面:HTML页面(前端) React主要用来写HTML界面,或构建Web应用 如果从MVC的角度来看,React仅仅是视图层(V),也就是只负…...

【Vue3】插槽使用和animate使用

插槽使用 插槽slot匿名插槽具名插槽插槽作用域简写 动态插槽transition动画组件自定义过渡class类名如何使用animate动画库组件动画生命周期appear transition- group过渡列表 插槽slot 插槽就是子组件中提供给父组件使用的一个占位符父组件可以在这个占位符智能填充任何模板代…...

HarmonyOS—低代码开发Demo示例

接下来为大家展示一个低代码开发的JS工程的Demo示例,使用低代码开发如下华为手机介绍列表的HarmonyOS应用/服务示例。 1.删除模板页面中的控件后,选中组件栏中的List组件,将其拖至中央画布区域,松开鼠标,实现一个List组…...

Spring体系下解决请求统一加解密之ResponseBodyAdvice和RequestBodyAdvice

在日常写项目中经常一般正规的项目都需要将信息加密后返回前端,前端进行解密后再展示出来给用户,这样做的目的无一不是为了安全,在Java开发中,如何简单快速的完成这个功能呢,这里就需要用到这两个接口ResponseBodyAdvi…...

C# 经典:ref 和 out 的区别详解

在C#中,ref和out关键字用于按引用传递变量,它们在变量传递、输出参数、返回值以及异常处理等方面有一些重要区别。本文将详细阐述这些差异。 1. 变量传递 ref和out关键字都可以用于方法的参数传递。它们的主要区别在于如何处理变量的引用。 ref关键字…...

Linux 系统添加虚拟内存的方法

https://cloud.189.cn/t/6nqy2m3YnUN3 (访问码:ic3i) 云服务器 群晖NAS 切换到 root 模式 sudo su 或者 sudo -i #群晖/volume2 是你添加的硬盘挂载路径 不一定是 volume2 有可能是 volume1 #如果你只有1快硬盘 volume2 改成 volume1 …...

PHP 函数四

一 fgets(resource $stream, ?int $length null) 从文件指针中读取一行。 返回字符串,如果文件指针中没有更多的数据了则返回 false。错误发生时返回 false。 $stream 为文件资源,必须指向fopen()或fscokopen()成功打开的文件。文件打开之后&#x…...

【Android】反编译APK及重新打包

1.下载 APK 反编译工具 首先,需要下载一个 APK 反编译工具,例如 Apktool。可以在官网(https://apktool.org/docs/install)上下载最新版本的 Apktool,也可以使用包管理器来安装。 2.反编译 APK 文件 将要修改包名的 …...

下载huggingface数据集到本地并读取.arrow文件遇到的问题

文章目录 1. 524MB中文维基百科语料(需要下载的数据集)2. 下载 hugging face 网站上的数据集3. 读取 .arrow 文件报错代码4. 纠正后代码 1. 524MB中文维基百科语料(需要下载的数据集) 2. 下载 hugging face 网站上的数据集 要将H…...

.NET高级面试指南专题十一【 设计模式介绍,为什么要用设计模式】

设计模式是软件工程中常用的解决特定问题的通用设计方法。它们提供了经过验证的解决方案,可用于解决在软件开发过程中经常遇到的一些常见问题。设计模式不是一种具体的编程语言特性或语法,而是一种通用的设计思想或模板,可以帮助开发人员设计…...

【Web】关于jQuery萌新必须要知道的那些基础知识

目录 DOM对象和jQuery包装集对象 jQuery选择器 jQuery操作元素的属性,样式,内容 jQuery创建元素和添加元素,删除元素和遍历元素 jQuery-ready加载事件 jQuery绑定事件 jQuery中ajax的使用 DOM对象和jQuery包装集对象 DOM对象&#xf…...

第 1 章 微信小程序与云开发从入门到实践从零开始做小程序——开发认识微信小程序

小北的参考工具书 小程序开发的图书并不少,这本书仍然值得你拥有! 首先,这是一本全栈小程序开发教程,循序渐进,由浅入深,介绍了小程序开发你想了解的方方面面,包括近其小程序开发的各种新技术应…...

数据隐私安全趋势

在当今社交媒体和开源开发的世界中,共享似乎已成为社会常态。毕竟,我们都被教导分享就是关怀。这不仅适用于个人,也适用于公司:无论是有意在社交媒体帐户和公司网站上,还是无意中通过员工的行为,公司可能会…...

学习磁盘管理

文章目录 一、磁盘接口类型二、磁盘设备的命名三、fdisk分区四、自动挂载五、扩容swap六、GPT分区七、逻辑卷管理八、磁盘配额九、RAID十、软硬链接 一、磁盘接口类型 IDE、SATA、SCSI、SAS、FC(光纤通道) IDE, 该接口是并口。SATA, 该接口是串口。SCS…...

C语言从入门到精通(一) - C语言开发神器CLion

clion安装配置 下载安装 下载 安装 运行clion clion设置 配置快捷键 配置快捷键为eclipse模式 [可以选择自己喜欢的快捷键模式] 添加cygwin编译器 下载cygwin Cygwin Installation Cygwin是一个在windows平台上运行的类UNIX模拟环境,是Cygnus Solutions公司开发的…...

【办公类-16-10-02】“2023下学期 6个中班 自主游戏观察记录(python 排班表系列)

背景需求: 已经制作了本学期的中4班自主游戏观察记录表 【办公类-16-10-01】“2023下学期 中4班 自主游戏观察记录(python 排班表系列)-CSDN博客文章浏览阅读398次,点赞10次,收藏3次。【办公类-16-10-01】“2023下学…...

SpringBooot之RestTemplate接口返回多层泛型导致java.util.LinkedHashMap cannot be cast to异常

统一泛型返回对象 Data public class Res<T> implements Serializable {private static final long serialVersionUID 6558796578827818466L;private Integer code; //状态码private String msg; //返回消息private T data; //数据 }data里包裹的泛型对象假设是DZPJ D…...

【新三板年报文本分析】第二辑:从pdf链接的列表中批量下载年报文件

第一辑中已经获取了新三板年报的pdf链接&#xff0c;使用request库进行批量下载。 send_headers为requests的headers&#xff0c;不需要做变动。 在for循环中读取每一行数据的链接数据&#xff0c;创建一个空pdf&#xff0c;将链接指向的pdf文件写入空pdf文件。 for循环内容…...

行标识符机制的技术演进与实践(上)——从OID说起

文章目录从对象标识说起——OID的前世今生OID到底是全局的还是局部的?OID的历史演进——从默认到逐步弃用regclass——OID的语法糖OID在系统表中的应用细节sys_class——数据库对象的"户口本"sys_type和sys_proc——类型和函数的OID管理OID与ctid的关系和区别OID与其…...

kdmapper 代码架构分析:深入理解各个组件的设计原理与实现

kdmapper 代码架构分析&#xff1a;深入理解各个组件的设计原理与实现 【免费下载链接】kdmapper KDMapper is a simple tool that exploits iqvw64e.sys Intel driver to manually map non-signed drivers in memory 项目地址: https://gitcode.com/gh_mirrors/kd/kdmapper …...

WindowsCleaner:终极系统优化解决方案,彻底解决C盘空间不足问题

WindowsCleaner&#xff1a;终极系统优化解决方案&#xff0c;彻底解决C盘空间不足问题 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服&#xff01; 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner WindowsCleaner是一款专为…...

GLM-4.1V-9B-Base在Web开发中的融合:Node.js后端服务集成实践

GLM-4.1V-9B-Base在Web开发中的融合&#xff1a;Node.js后端服务集成实践 1. 引言&#xff1a;当Node.js遇见多模态AI 想象一下&#xff0c;你的电商网站用户上传了一张商品图片&#xff0c;系统不仅能自动识别商品类别&#xff0c;还能生成吸引人的营销文案——这就是GLM-4.…...

NEURAL MASK 惊艳效果案例:城市景观照片的4K超分辨率重建

NEURAL MASK 惊艳效果案例&#xff1a;城市景观照片的4K超分辨率重建 每次翻看手机相册&#xff0c;是不是总有些照片让你觉得可惜&#xff1f;明明当时光线、构图都挺好&#xff0c;可放大一看&#xff0c;细节糊成一团&#xff0c;远处的招牌看不清&#xff0c;建筑的纹理也…...

避开这4个坑,你的FANUC数据采集项目能省一个月:从DLL缺失到状态判断逻辑

FANUC数据采集实战&#xff1a;从DLL缺失到状态机设计的避坑全指南 第一次接触FANUC CNC数据采集时&#xff0c;我天真地以为这不过是调用几个API的简单任务。直到项目延期三周后&#xff0c;我才明白工业设备数据采集的复杂性远超想象——从动态链接库缺失到参数地址定位&…...

CoPaw助力前端开发:自动生成React组件代码与UI文案

CoPaw助力前端开发&#xff1a;自动生成React组件代码与UI文案 1. 前端开发的效率痛点 想象一下这个场景&#xff1a;产品经理刚开完需求评审会&#xff0c;设计师交付了最新版原型图&#xff0c;而前端团队需要在三天内完成一个包含20多个React组件的标准化库。更棘手的是&a…...

技术分享 | PG基于备份和WAL日志恢复数据

在技术领域&#xff0c;我们常常被那些闪耀的、可见的成果所吸引。今天&#xff0c;这个焦点无疑是大语言模型技术。它们的流畅对话、惊人的创造力&#xff0c;让我们得以一窥未来的轮廓。然而&#xff0c;作为在企业一线构建、部署和维护复杂系统的实践者&#xff0c;我们深知…...

SiameseUIE中文-base实战教程:Python requests调用7860端口抽取接口示例

SiameseUIE中文-base实战教程&#xff1a;Python requests调用7860端口抽取接口示例 1. 引言&#xff1a;告别复杂配置&#xff0c;三步搞定信息抽取 你是不是也遇到过这样的场景&#xff1f;面对一堆非结构化的文本数据&#xff0c;比如新闻、报告、用户评论&#xff0c;想从…...

排序(五)【数据结构】

快速排序 核心思想 将待排序序列&#xff0c;围绕着基本值分成两部分&#xff0c;左边部分都小于基准值&#xff0c;右边部分都大于基准值 第一种方法&#xff1a;递归 优点:简单 缺点:需要单独开辟辅助空间brr数组 第二种方法&#xff1a;挖空法&#xff08;很重要&…...