oracle(19c)用户管理

简介

本文介绍 Oracle 中的用户管理,包含以下内容:

  1. 概念介绍

  2. 系统用户

  3. 解锁 hr 用户

  4. 创建用户

  5. 用户相关案例

  6. 使用 Profile 管理用户口令

  7. Oracle 的认证方式

  8. 重置管理员(sys)密码

1. 概念介绍

  1. Oracle 中可以创建多个 Database 实例,而每个实例下可以创建多个用户和表空间;

  2. 多个用户可以对同一个表空间进行管理;

  3. 一个数据库实例中的用户名不能重复;

2. 系统用户

当数据库服务器安装完成后,并创建数据库实例后,就会默认创建:sys、system、scott 等用户。sys、system 用户具有对数据库操作的最高权限,以下是这三个用户的对比:

用户描述默认密码角色
sys1. 超级管理员用户(相当于 mssql sa;mysql root);
2. 具有 Oracle 的最高权限;
3. 具有创建数据库的权限;
4. 可以更改 system 或其他普通用户的密码。
19c需自己设置sysdba
system1. 操作管理员用户;
2. 权限仅次于 sys;
3. 没有创建数据库的权限,其他与 sys 相同;
4. 可以更改 sys 或其他普通用户的密码。
19c需自己设置sysoper
hr1.普通用户;
2. 该用户默认是锁定的,可以用 system 去进行解锁;
hr

注:一般数据库维护,使用 system 用户登录即可。

3. 解锁 hr 用户

hr 是 Oracle(19c) 自带的一个普通用户,默认情况下该用户是被锁定的(不能登录),我们需要使用该用户时就需要进行解锁。下面是解锁步骤:

  1. 打开 shell 命令终端

  2. sqlplus /nolog

  3. conn sys/1 as sysdba #使用 sys 超级管理员登录

  4. alter user scott account unlock; #解锁 scott 用户

  5. conn hr/hr

在这里插入图片描述

4. 创建用户

语法:

create user ljjbb identified by pwdforljbb[default tablespace ts_name][temporary tablespace temp_ts_name][quota 200m on ts_name];

解释如下:

identified by: 设置 ljbb 用户的登录密码;default tablespace: 指定该用户创建的表存放的表空间;temporary tablespace: 指定该用户创建的临时表存放的表空间;quota 200m on: 表名该用户创建的数据对象(表,索引,视图,pl/sql块)最大只能为200m;

1) 创建用户

conn system/1@o19c;  #以 SYS、SYSTEM 用户登录,其他用户没有权限create user ljbb identified by pwdforljbb@abd123;或者(指定默认存放的表空间)create user learn identified by learnpwd default tablespace myts01;

2) 删除用户

drop user learn [cascade];cascaed 参数:表示级联删除。当删除的用户下没有数据对象(表、视图等)时,该参数可选;否则必须指定该参数。

5. 用户相关案例

以 ljbb 用户为例。

1) 创建表

create table stud(id number, name varchar(20));

2) 创建并打开 SQL 脚本文件

edit /ljbb/oracle/sql/insert_stud.sql写入 insert 语句:insert into stud values(1, '张三');insert into stud values(2, '李四');commit;            #注意:一定要加提交命令

3) 执行 SQL 脚本文件

start /ljbb/oracle/sql/insert_stud.sql
select * from stud;

4) 锁定用户

alter user ljbb account unlock;

5) 删除用户

drop user ljbb cascade;

6) 查询用户

SELECT * FROM dba_users;                                  --查询所有用户
SELECT * FROM all_users;                                  --查询所有用户

6. 使用 Profile 管理用户口令

我们可以把 Profile 理解为一个数据对象(文件或规则),使用 DBeaver 以 system 用户登录,可以看到 Profiles(配置) 文件夹下已经有了默认的安全策略:
在这里插入图片描述

1) 限制用户恶意登录

语法:create profile profile_name limit failed_login_attempts 3 password_lock_time 2;
解释:3表示最多允许3次尝试;2表示锁定的时间(天)

案例: 允许某用户最多尝试登陆3次,如果3次都登陆失败,则锁定该用户,并且锁定后2天内不允许登陆。

  1. 创建 Profile 对象
create profile profile1 limit failed_login_attempts 3 password_lock_time 2;

在这里插入图片描述
创建成后会在 Profiles(配置) 文件夹下多一个 profile1,编辑可以看到以上内容。

  1. 将 profile1 对象应用于指定用户
alter user hr profile profile1;

在这里插入图片描述

  1. 使用 scott 用户登录
conn hr/hr@db2            #连续三次失败,将看到如下提示ORA-28000: the account is locked
  1. 然后,可以使用 system 用户进行解锁
alter user hr account unlock;

2) 限制口令的使用期限

语法: create profile profile_name limit password_life_time 10 password_grace_time 2;

案例: 对某个用户的密码做出限制,最多使用10天,宽限期为2天,到时必须修改密码。

1、创建 Profile 对象

create profile profile2 limit password_life_time 10 password_grace_time 2;

在这里插入图片描述
创建成后会在 Profiles 文件夹下多一个 profile1,编辑可以看到以上内容。

2、将 profile2 对象应用于指定用户

alter user hr profile profile2;

3、hr用户 10天后登录(测试可以修改数据库服务器时间)

conn hr/hr@o19c;ORA-28002: the password will expire within 2 days #密码将在2天内过期

4、scott 用户 12天后登录(测试可以修改数据库服务器时间)

conn hr/hr@o19c;ORA-28001: the password has expired        #密码已过期

提示:需要重新设置新密码,但前提是旧密码一定要正确

3) 删除 Profile

drop profile profile1 cascade;         #cascade 表示级联删除(有用户关联时)

7. Oracle 的认证方式

Oracle 有两种认证方式:

1. 操作系统认证

类似于 SQL Server 中的以 Windows 方式登录。

该认证方式只能登录到服务器中进行,直接认证操作系统登录用户是否隶属于 dba 组中,该用户组表示为 Oracle DBA Group(即:数据库管理员),如图(计算机管理 -> 本地用户和组):
在这里插入图片描述
在 Oracle 安装前需要创建 dba、oinstall 这两个组。所以,在服务器中登录,可以直接使用 as sysdba,而不会验证用户名和密码,该认证方式的用户称为特权用户。登录例如:

conn abcdef/aaabbb@db2 as sysdba #错误的用户名和密码也能登录成功

2. 数据库认证(用户密码认证)

类似于 SQL Server 中以 sa(用户名) + 密码的方式登录,该认证方式的用户成为普通用户,登录例如:conn hr/hr@db2

8. 重置管理员(sys)密码

有时候我们有可能忘记了 Oracle 数据库的管理员(sys)的密码,这时我们该怎么重置呢?下面是具体的操作步骤:

linux(19c)

1、停止数据库实例
– 这通常通过运行数据库管理工具或使用命令行实用程序来完成,例如使用SQL*Plus:

sqlplus / as sysdba
SQL> shutdown immediate;

在这里插入图片描述

2、以启动模式启动实例
– 这通常通过运行数据库管理工具或使用命令行实用程序来完成,例如使用SQL*Plus:

SQL> startup mount;

在这里插入图片描述
3、打开数据库

SQL> ALTER DATABASE OPEN;

在这里插入图片描述

4、重置SYS用户密码
使用SQL*Plus连接到数据库:

SQL> ALTER USER sys IDENTIFIED BY new_password;
注意将new_password替换为您想要设置的新密码

在这里插入图片描述
5、登录数据库

 conn sys/new_password as SYSDBA

在这里插入图片描述

window

1、生成新的密码文件,打开 dos 窗口执行以下命令:

C:\Users\Administrator>orapwd file=D:\oracle\product\11.2.0\dbhome_1\database\PWDorcl.ora password=syspwd entries=10

解释:password 表示新密码;entries 表示允许多少个客户端同时连接 Oracle 服务器。

2、重启 Oracle,使新密码生效

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(STM32笔记)九、RCC时钟树与时钟 第一部分

我用的是正点的STM32F103来进行学习,板子和教程是野火的指南者。 之后的这个系列笔记开头未标明的话,用的也是这个板子和教程。 九、RCC时钟树与时钟 九、RCC时钟树与时钟1、时钟树HSE时钟HSI时钟锁相环时钟系统时钟HCLK时钟PCLK1时钟PCLK2时钟RTC时钟独…

后端学习笔记(3)--Maven

1.Maven ​ *专门用于管理和构建Java项目的工具,主要功能有: ​ 1.提供了一套标准化的项目结构 ​ 2.提供了一套标准化的构建流程(编译,测试,打包,发布) ​ 3.提供了一套依赖管理机制 1.简介 ​ *Apache Maven是一…

服务器自动部署网络安装环境

实验环境 rhel7:IP地址为172.25.254.200、主机名为node1.rhel7.org 实验配置 一.kickstart自动安装脚本制作 1.安装图形化生成kickstart自动安装脚本的工具 [rootnode1 ~]# yum install system-config-kickstart 2. 启动图形制作工具 [rootnode1 ~]# system-…

【网络编程】网络原理(一)

系列文章目录 1、 初识网络 2、网络编程的基础使用(一) 文章目录 系列文章目录前言一、端口号的使用二、UDP报文学习1.报文格式2.MD5算法 总结 前言 在前文中,主要对UDP和TCP协议有了简单的了解,而这两种协议是负责传输层的内容…

部署k8s+conatinerd环境

1、准备系统环境 禁用默认休眠(可选) 禁用:systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target启用:sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target …

美林数据Tempo Talents | 两大资源中心,打造开放、成长型数智人才能力平台

在数字化时代的大潮中,高校作为知识与人才培养的重要阵地,独立分散的课程资源管理方式已无法满足现代教育的需求,而数据资源的分散和碎片化也阻碍了科研和教学工作的深入进行。那么,高校如何打造一个集中、高效的课程与数据资源中…

【redis 第五篇章】持久化之AOF和RDB

一、概述 Redis 是内存数据库,如果不能将内存中的数据保存到磁盘中,那么一旦服务器进程退出,数据库中数据会消失,所以 Redis 提供了持久化的功能, Redis 分为两种持久化方式:RDB 和 AOF,有以下几个特点&am…

【Gold菜鸟】Linux知识回忆(8)——进程和计划任务

前言 这部分让我们来继续了解Linux中进程和计划任务的相关知识吧~ 相关技术交流欢迎添加VX: wenjinworkon 目录 进程和内存管理 什么是进程 进程结构 进程相关概念 物理地址空间和虚拟地址空间 用户和内核空间 进程使用内存问题 进程状态 内存淘汰数据机制:…

Meta Reality Labs:巨额亏损背后的挑战与展望

一、财务概况 自2020年以来,Meta的Reality Labs部门累计亏损已超过450亿美元,其中2023年的亏损达到160亿美元,2024年第一季度亏损38亿美元,分析师预计第二季度亏损可能接近50亿美元。尽管投入巨大,Reality Labs的收入却呈现下降趋势,与不断增加的支出形成鲜明对比。 二…

基于人工智能的口试模拟、LLM将彻底改变 STEM 教育

概述 STEM教育是一种整合科学(Science)、技术(Technology)、工程(Engineering)和数学(Mathematics)的教育方法。这种教育模式旨在通过跨学科的方式培养学生的创新能力、问题解决能力…

vue2怎么上传文件夹,并展示文件夹内的图片?

我使用的是element-ui组件库,发现el-upload组件并不能满足需求,于是用原生实现一下,这里贴一下关键代码,如果大家有更好的实现方法,欢迎分享!! 实现效果:

鸿蒙HarmonyOS开发:常用布局及实用技巧

文章目录 一、概述二、盒子模型三、线性布局(Column/Row)1、space属性2、justifyContent属性3、alignItems属性 四、实用技巧1、Blank组件的使用2、layoutWeight属性的使用 一、概述 布局是指对页面组件进行排列和定位的过程,其目的是有效地…

【分隔链表】python刷题记录

R3-双指针&#xff08;快慢指针&#xff09; 新建两个链表 一个链表记录<x的值 一个链表记录>x的值 拼接即可 # Definition for singly-linked list. # class ListNode: # def __init__(self, val0, nextNone): # self.val val # self.next ne…

智能驾驶学习笔记,第一天

智能驾驶是智能汽车的核心&#xff0c;指基于先进的传感器和计算平台&#xff0c;通过人工智能技术,让汽车具备自主行驶的能力&#xff0c;旨在辅助驾驶员安全、便捷、高效地完成驾驶任务。智能驾驶有助于减少交通事故、改善交通拥堵&#xff0c;并提高行驶安全性和驾乘舒适性。…

Photoshop的下载和安装教程

找到Adobe 的官网 https://www.adobe.com/cn/ 创建一个新的账户,如果你没有账户的话 后面安装步骤来注册 下载和安装 登录之后 点击 点击 点击 然后进行下载和安装 然后就是漫长的等待 安装完成 点击 这只是一个安装Photoshop的教程,也可以根据别人的安装包来进行安装

C语言指针(2)

今天我们接着前两天的内容继续讲解 一、数组名的理解 1、&arr[0]与arr 有时候我们需要获取数组首元素&#xff0c;有两种方法可以获取。 使用这两种方法都可以获得数组首元素&arr[0]&#xff0c;arr。 int main() {int arr[10] { 1,2,3,4,5,6,7,8,9,10};printf(&…

物理笔记-八年级上册

0.梦开始的地方 物理研究什么&#xff1f; 电学&#xff0c;力学&#xff0c;声学&#xff0c;光学&#xff0c;热学。 1.1.1长度的单位 国际基本单位制 单位转换 魔法记忆&#xff1a;千米-米-毫米-微米-纳米&#xff08;进率都是1000&#xff09; 单位换算计算方法 用科学…

web高可用群集架构部署----超详细

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…

Leaf分布式ID

文章目录 系统对Id号的要求UUIDsnowflakeLeafLeaf-snowflakeLeaf-segmentMySQL自增主键segment双buffer 系统对Id号的要求 1、业务 1&#xff09;全局唯一性&#xff1a;不能出现重复的ID号&#xff0c;既然是唯一标识&#xff0c;这是最基本的要求 2&#xff09;趋势递增&a…

贪心系列专题篇四

​​​​​​​ 目录 整数替换 解法一 解法二 俄罗斯套娃信封问题 堆箱子 可被三整除的最大和 距离相等的条形码 重构字符串 声明&#xff1a;接下来主要使用贪心法来解决问题&#xff01;&#xff01;&#xff01; 整数替换 题目 思路 下面将使用两种方法来解决这…