Oracle 常用命令总结

news2024/11/26 21:47:33

文章目录

  • 一、数据库启动 & 关闭&查看
    • 1、启动数据库
    • 2、关闭数据库
    • 3、连接数据库
    • 4、查看数据库名
    • 5、查看实例
  • 二、用户
    • 1、创建用户
    • 2、重置密码
    • 3、账户解锁
    • 4、账号赋权
    • 5、账户撤销权限
    • 6、删除用户
    • 7、查询所有用户(DBA账号执行)
    • 8、查看当前用户连接
    • 9、查看用户角色
    • 10、查看当前用户权限
    • 11、查看所有用户所拥有的角色(DBA账号执行)
    • 12、创建用户并指定表空间
    • 13、查看当前用户的缺省表空间
  • 三、视图
    • 1、创建视图
    • 2、删除视图
  • 四、角色
    • 1、创建角色
    • 2、给角色赋权
    • 3、将角色赋予某用户:grant 角色名 to 用户名
    • 4、删除角色:drop role 角色名
  • 五、表空间
    • 1、创建表空间
    • 2、删除表空间
    • 3、查看数据库的表空间使用状态

一、数据库启动 & 关闭&查看

1、启动数据库

SQL> startup nomount;
SQL> alter database mount;
SQL> alter database open;

2、关闭数据库

SQL> shutdown immediate;

3、连接数据库

  • 登陆普通用户
SQL>sqlplus 用户名/密码@实例名//登陆普通用户,@实例名可省略
  • 登陆sys帐户
SQL>sqlplus / as sysdba;//登陆 sys 帐户

说明:sys :系统管理员,拥有最高权限
system :本地管理员,次高权限
scott :普通用户,密码默认为tiger,默认未解锁

4、查看数据库名

SELECT NAME FROM V$DATABASE;

5、查看实例

  • Linux下查看oracle上已启动实例,如果多实例,会展示多个smon进程
ps -ef|grep smon
  • 查看当前启动的实例
SQL>select * from global_name;
  • 查看默认实例
 $ echo $ORACLE_SID
  • 切换实例
$ export ORACLE_SID=实例名 

二、用户

1、创建用户

create user 用户名 identified by 密码;

2、重置密码

alter user 用户名 identified by 密码;

3、账户解锁

alter user 用户名 account unlock;

4、账号赋权

grant create session to zhangsan;//授予zhangsan用户创建session的权限,即登陆权限

grant unlimited session to zhangsan;//授予zhangsan用户使用表空间的权限

grant create table to zhangsan;//授予创建表的权限

grant drop table to zhangsan;//授予删除表的权限

grant insert table to zhangsan;//插入表的权限

grant update table to zhangsan;//修改表的权限

grant alert all table to zhangsan;//授予zhangsan用户alert任意表的权限

grant all to public//授予所有权限(all)给所有用户(public)

tip:oracle对权限管理比较严谨,普通用户之间也是默认不能互相访问的,需要互相授权

grant select on tablename to zhangsan;//授予zhangsan用户查看指定表的权限

grant drop on tablename to zhangsan;//授予删除表的权限

grant insert on tablename to zhangsan;//授予插入的权限

grant update on tablename to zhangsan;//授予修改指定表的权限

grant insert(id) on tablename to zhangsan;//授予对指定表特定字段的插入权限

grant update(id) on tablename to zhangsan;//授予对指定表特定字段的修改权限

grant role1 to test;//授予角色role1(role1为已存在的角色)

5、账户撤销权限

基本语法同 grant,关键字为 revoke

6、删除用户

drop user zhangsan; //仅删除用户

drop user zhangsan cascade; //删除用户的同时,删除此用户名下所有的对象

7、查询所有用户(DBA账号执行)

select * from all_users;

8、查看当前用户连接

select * from v$Session;

9、查看用户角色

SELECT * FROM USER_ROLE_PRIVS;

10、查看当前用户权限

select * from session_privs;

select * from user_sys_privs;//查看当前用户所有权限

11、查看所有用户所拥有的角色(DBA账号执行)

SELECT * FROM DBA_ROLE_PRIVS;

12、创建用户并指定表空间

create user 用户名 identified by 密码 
default tablespace 默认表空间名
temporary tablespace 默认临时表空间名;

13、查看当前用户的缺省表空间

select username,default_tablespace from user_users;

三、视图

1、创建视图

CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW view_name
    [(alias[, alias]...)]
AS subquery
     [WITH CHECK OPTION [CONSTRAINT constraint]]
     [WITH READ ONLY]

参数说明:

  • OR REPLACE :若所创建的试图已经存在,则替换旧视图;

  • FORCE:不管基表是否存在ORACLE都会自动创建该视图(即使基表不存在,也可以创建该视图,但是该视图不能正常使用,当基表创建成功后,视图才能正常使用);

  • NOFORCE :如果基表不存在,无法创建视图,该项是默认选项(只有基表都存在ORACLE才会创建该视图)。

  • alias:为视图产生的列定义的别名;

  • subquery :一条完整的SELECT语句,可以在该语句中定义别名;

  • WITH CHECK OPTION :插入或修改的数据行必须满足视图定义的约束;

  • WITH READ ONLY :默认可以通过视图对基表执行增删改操作,但是有很多在基表上的限制(比如:基表中某列不能为空,但是该列没有出现在视图中,则不能通过视图执行insert操作),WITH
    READ ONLY说明视图是只读视图,不能通过该视图进行增删改操作。现实开发中,基本上不通过视图对表中的数据进行增删改操作。

2、删除视图

drop BIEW view_name;

四、角色

1、创建角色

create role myrole;

2、给角色赋权

grant select on table1 to role1;//给角色 role1 赋予查询表 table1 的权限

3、将角色赋予某用户:grant 角色名 to 用户名

grant role1 to zhangsan;//role1为已存在的角色

4、删除角色:drop role 角色名

drop role myrole;

五、表空间

1、创建表空间

create tablespace 表空间名 datafile '/oracle/.../数据文件名.dbf' size 100m autoextend on next 100m maxsize 400m extent management local;

2、删除表空间

drop tablespace 表空间名 ;

3、查看数据库的表空间使用状态

select a.tablespace_name tnm,b.FILE_PATH,--b.autoextensible,
       b.cnt,
       trunc(a.bytes/1024/1024/1024) total_G,
       trunc(a.bytes/1024/1024/1024/b.cnt) avg_G,
       trunc(c.bytes/1024/1024/1024) free_G,
       trunc((a.bytes-c.bytes)*100/a.bytes,2) used--,(c.bytes*100)/a.bytes "% FREE"
     from SYS.SM$TS_AVAIL A,SYS.SM$TS_FREE C,
         (select tablespace_name,substr(file_name,1,instr(file_name,'/',2)) FILE_PATH, --f.autoextensible,
         count(*) cnt 
          from dba_data_files  f group by tablespace_name,substr(file_name,1,instr(file_name,'/',2))--,autoextensible
          ) b
     WHERE  A.TABLESPACE_NAME=C.TABLESPACE_NAME(+)
          AND A.TABLESPACE_NAME=B.TABLESPACE_NAME
       --   AND A.TABLESPACE_NAME IN (select distinct tablespace_name from dba_tablespaces)
          order by  avg_g desc;

在这里插入图片描述

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

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

相关文章

卫星影像联合无人机实现农业保险全生命周期监管监测

随着科技的进步,农业保险监管系统的发展日新月异。特别是近年来,随着卫星技术与无人机技术的结合,为农业保险监管系统带来了前所未有的革新。本文将深入探讨如何利用卫星与无人机方案构建高效的农业保险监管系统,并结合实例进行说…

面试经典算法系列之二叉树3 -- 二叉树的层序遍历

面试经典算法18 - 二叉树的层序遍历 LeetCode.102 公众号:阿Q技术站 问题描述 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 示例 1: 输入:roo…

虚拟机中,IP地址查询失败怎么办

有时候ifconfig查出来的地址是下面这样,只有ipv6 只需要运行下面这两条命令,再次查询即可成功! systemctl stop NetworkManagersystemctl start network.service

Python如何安装第三方模块

cmd窗口中使用pip install命令安装 1、键盘按下win R,然后在输入框中输入cmd,回车,就打开了cmd窗口。 下图的运行框会出现到屏幕左下角。 2、输入下面的命令,回车即可。 pip install xxx # xxx为要安装的模块名 如图所示&…

RabbitMQ消息模型之Simple消息模型

simple消息模型 生产者 package com.example.demo02.mq.simple;import com.example.demo02.mq.util.ConnectionUtils; import com.rabbitmq.client.Channel; import com.rabbitmq.client.Connection;import java.io.IOException;/*** author Allen* 4/10/2024 8:07 PM* versi…

【论文阅读笔记】Head-Free Lightweight Semantic Segmentation with Linear Transformer

莫名地这篇论文我特别难理解,配合代码也食用不了 1.论文介绍 Head-Free Lightweight Semantic Segmentation with Linear Transformer 基于线性Transformer的无头轻量级语义分割 2023年 AAAI Paper Code 2.摘要 现有的语义分割工作主要集中在设计有效的解码器&am…

MATLAB GUI图形化界面设计计算器

MATLAB GUI界面设计教程可以帮助用户创建交互式的图形用户界面,以简化与MATLAB程序的交互过程。以下是一个简化的教程,指导你如何进行MATLAB GUI界面设计: 1. 启动GUIDE或App Designer GUIDE:在MATLAB命令窗口中输入guide命令&a…

锐化空间滤波器--二阶微分图像增强(提高清晰度的另一种方式)

书上一阶微分的定义可以理解,毕竟这里不死数学上的曲线的概念,而是像素点上的曲线。所以,不同于数学的严格单调递增曲线的导数是大于等于零,这里的严格单调递增曲线,只能是大于零。 至于二阶微分的定义,就…

Scala实战:打印九九表

本次实战的目标是使用不同的方法实现打印九九表的功能。我们将通过四种不同的方法来实现这个目标,并在day02子包中创建相应的对象。 方法一:双重循环 我们将使用双重循环来实现九九表的打印。在NineNineTable01对象中,我们使用两个嵌套的fo…

如何使用pgvector为RDS PostgreSQL构建专属ChatBot?

背景 越来越多的企业和个人希望能够利用LLM和生成式人工智能来构建专注于其特定领域的具备AI能力的产品。目前,大语言模型在处理通用问题方面表现较好,但由于训练语料和大模型的生成限制,对于专业知识和时效性方面存在一些局限。在信息时代&…

Day37:LeedCode 738.单调递增的数字 968.监控二叉树 蓝桥杯 翻转

738. 单调递增的数字 当且仅当每个相邻位数上的数字 x 和 y 满足 x < y 时&#xff0c;我们称这个整数是单调递增的。 给定一个整数 n &#xff0c;返回 小于或等于 n 的最大数字&#xff0c;且数字呈 单调递增 。 示例 1: 输入: n 10 输出: 9 思路: 假设这个数是98,…

三次 Bspline(B样条曲线) NURBS曲线的绘制 matlab

先来了解几个概念&#xff1a; 1.1 节点向量&#xff1a; B-Spline需要定义曲线的节点向量U&#xff0c;它可以对应到Bezier曲线的参数u。 其元素个数 (m1) 和曲线阶数 k 、控制点个数n满足&#xff1a;m1k1n1 如果U的每段的距离是相等&#xff0c;那么这个B-Spline就被称为均…

labview中FP.isFrontmost不生效?

主GUI界面中调用子GUI程序FP.isFrontmost不生效&#xff1f; 如果主GUI程序使用“floating”,子GUI程序使用default动作&#xff0c;则子GUI无法打开到最前。子GUI程序只能使用“模态”才能置顶。 主GUI程序&#xff1a; 子GUI程序&#xff1a; 改正的方法很简单&#xff0c…

浙大恩特客户资源管理系统 i0004_openFileByStream.jsp 任意文件读取漏洞复现

0x01 产品简介 浙大恩特客户资源管理系统是一款针对企业客户资源管理的软件产品。该系统旨在帮助企业高效地管理和利用客户资源,提升销售和市场营销的效果。 0x02 漏洞概述 浙大恩特客户资源管理系统 i0004_openFileByStream.jsp接口处存在任意文件读取漏洞,未经身份验证攻…

代码随想录 Day17 字符串 | LC344 反转字符串 LC541 反转字符串II 卡码网54替换数字

一、反转字符串 题目&#xff1a; 力扣344&#xff1a;反转字符串 编写一个函数&#xff0c;其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额外的空间&#xff0c;你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题…

时间序列突破性创新!与对比学习结合,性能超越SOTA

对比学习可以通过自我监督的方式捕捉时间序列数据中的时间依赖性和动态变化&#xff0c;这使得它特别适合处理时间序列数据&#xff0c;因为时间序列的本质特征就在于其随时间的演变和变化。 因此&#xff0c;相较于传统的时序&#xff0c;基于对比学习的时间序列能够适应更广…

npm创建Vue3项目

npm创建Vue3项目 1 创建Vue项目说明 2 安装3 运行 1 创建Vue项目 创建最新版的Vue项目&#xff0c;已经不推荐使用CLI构建方式了。参考如下即可。 npm create vuelatest如果发现一直动不了&#xff0c;切换网络试一下&#xff0c;个人热点尝试一下。 按下图的选项按需引入自…

移位寄存器

移位寄存器是如何工作的&#xff1f; 移位寄存器按照移位方向可分为左移位寄存器、右移位寄存器、双向移位寄存器。图11-15所示为用D触发器构成的4位左移位寄存器。待存数码由触发器F0的输入端D0输入&#xff0c;在移位脉冲作用下&#xff0c;可将数码从高位到低位向左逐步移入…

如何选择适用于Mac的文件恢复软件?适用于 Mac 的最佳数据恢复软件清单

有人会说&#xff0c;我们的数字生活正变得几乎和我们的物理生活一样重要。我们在线工作&#xff0c;将记忆保存在数码照片库中&#xff0c;在信使中交流&#xff0c;并保留各种文档的数字扫描。 每个人都知道备份是必不可少的。建议每天至少同步一个数字备份&#xff08;例如…

CDHD高创驱动器恢复出厂设置的具体方法演示

CDHD高创驱动器恢复出厂设置的具体方法演示 首先,下载并安装高创驱动器的调试软件,有需要的可以从以下链接中获取:高创CDHD伺服调试软件ServoStudio安装包-V2.38.6.30 安装完成后,打开软件,如下图所示, 如下图所示,在左侧找到配置—通信,点击连接, 如下图所示,正常情…