linux命令,quota 命令显示磁盘使用情况和限额。缺省情况下,或者带 -u 标志,只显示用户限额。quota 命令报告 /etc/filesystems 文件中列出的所有文件系统的限额。如果 quota 命令以非零状态退出,一个或多个文件系统超过限额。

quota 是一个Linux命令
用途
显示磁盘使用情况和限额。
语法
quota [ -u [ User ] ] [ -g [ Group ] ] [ -v | -q ]
描述
root 用户可以使用带有可选 User 参数的 -u 标志查看其它用户的限制。没有 root 用户权限的用户可以通过使用带有可选 Group 参数的 -g 标志来查看它们所属的组的限制。
注:
如果某个特定用户在对他有限额的文件系统上没有文件,该命令为那个用户显示 quota: none。当用户在文件系统中有文件时,显示用户的实际限额。
标志
-g 显示用户组的限额。
-u 显示用户限额。该标志是缺省选项。
-v 显示没有已分配存储器的文件系统上的限额。
-q 打印扼要消息,只包含关于使用超过限额的文件系统的信息。
注:
-q 标志优先于 -v 标志。
安全性
访问控制:该命令由 root 用户和 bin 组拥有。
特权控制:该程序是 setuid 为了允许非特权用户查看个人限额。
示例
1. 要显示用户 keith 的限额,请输入:
quota
系统显示下列信息:
User quotas for user keith (uid 502):
Filesystem blocks quota limit grace Files quota limit grace
/u 20 55 60 20 60 65
2. 要作为 root 用户显示用户 davec 的限额,请输入:
quota -u davec
系统显示下列信息:
User quotas for user davec (uid 2702):
Filesystem blocks quota limit grace files quota limit grace
/u 48 50 60 7 60 60
文件
quota.user 指定用户限额。
quota.group 指定组限额。
/etc/filesystems 包含文件系统名称和位置。

https://blog.csdn.net/tete2csdn/article/details/77481806

数据库中

一、解决问题:

解决表空间很大,总显示空间不足的问题
ORA-01536:space   quota   exceeded   for   table   space   'AAA '
二、三个解决办法: 
        (1)   alter   user   USERNAME   quota   100M   on   TABLESPACENAME; 
        (2)   alter   user   USERNAME   quota   unlimited   on   TABLESPACENAME; 
        (3)   grant   unlimited   tablespace   to   USERNAME;
quota是为了限制用户对表空间的使用 
比如你限制用户a在tablespace   a中的quota为10m,当用户a在tablespace   a中的数据量达到10m后,无论你的tablespace   a中有多少空间,a都无法再使用tablespace   a   了。 
所以你需要 
alter   user   a   quota   1000M   on   a; 
alter   user   a   quota   unlimited   on   a; 
grant   unlimited   tablespace   to   a 
你可以查询dba_ts_quotas来获取相关信息

二、Quota 说明

配额大小指的是用户指定使用表空间的的大小。在1.1 节里提到,默认情况下,用户对所有表空间都是没有配额的,即不受空间的限制。 查看几个用户的创建脚本来验证一下:

CREATE USER SYSTEM

IDENTIFIED BY <password>

DEFAULT TABLESPACE SYSTEM

TEMPORARY TABLESPACE TEMP

PROFILE DEFAULT

ACCOUNT UNLOCK;

-- 2 Roles for SYSTEM

GRANT AQ_ADMINISTRATOR_ROLE TO SYSTEM WITH ADMIN OPTION;

GRANT DBA TO SYSTEM WITH ADMIN OPTION;

ALTER USER SYSTEM DEFAULT ROLE ALL;

-- 5 System Privileges for SYSTEM

GRANT GLOBAL QUERY REWRITE TO SYSTEM;

GRANT CREATE MATERIALIZED VIEW TO SYSTEM;

GRANT CREATE TABLE TO SYSTEM;

GRANT UNLIMITED TABLESPACE TO SYSTEM WITH ADMIN OPTION;

GRANT SELECT ANY TABLE TO SYSTEM;

CREATE USER DAVE

IDENTIFIED BY <password>

DEFAULT TABLESPACE USERS

TEMPORARY TABLESPACE TEMP

PROFILE DEFAULT

ACCOUNT UNLOCK;

-- 2 Roles for DAVE

GRANT CONNECT TO DAVE;

GRANT RESOURCE TO DAVE;

ALTER USER DAVE DEFAULT ROLE ALL;

-- 1 System Privilege for DAVE

GRANT UNLIMITED TABLESPACE TO DAVE;

从这2个脚本来看,默认情况下,都会对用户赋 unlimited tablespace 的权限。这是是在创建的时候指定的,当我们的用户创建好之后,我们也可以修改用户的配额。

有关用户的配额的操作说明

1. 创建用户时,指定限额

SQL> conn / as sysdba;

Connected.

SQL> create user anqing identified by anqing default tablespace users temporary tablespace temp quota 10M on users;

User created.

查询用户配额的信息:

SQL> select tablespace_name,username,max_bytes from  DBA_TS_QUOTAS where username='ANQING';

TABLESPACE_NAME      USERNAME    MAX_BYTES

------------------------------ ---------- ----------

USERS                    ANQING       10485760

2.更改用户的表空间限额:

不对用户做表空间限额控制:

SQL> grant unlimited tablespace to anqing;

Grant succeeded.

这种方式是全局性的. 即修改用户多所有表空间的配额。

如果我们想改某个具体的,即针对用户的某个特定的表空间,可以使用如下SQL:

SQL> alter user anqing quota unlimited on users;

User altered.

查看配额:

SQL> select tablespace_name,username,max_bytes from  DBA_TS_QUOTAS where username='ANQING';

TABLESPACE_NAME                USERNAME    MAX_BYTES

------------------------------ ---------- ----------

USERS                          ANQING             -1

这时候max_bytes 为-1,即不受限制。

3. 回收用户对表空间的配额:

同样两种方式,

全局:

SQL> revoke unlimited tablespace from anqing;

Revoke succeeded.

在查看配额,已经没有了相关信息:

SQL> select tablespace_name,username,max_bytes from  DBA_TS_QUOTAS where username='ANQING';

no rows selected

针对某个特定的表空间:

SQL> alter user anqing quota 0 on users;

数据库与linux中quota的作用的更多相关文章

  1. Linux中各个目录作用

    对于linux新手来说,最感到迷惑的问题之一就是文件都存在哪里呢?特别是对于那些从windows转过来的新手来说,linux的目录结构看起来有些奇怪哦.比如没有C盘,没有分盘符,一大堆不知道用途的文件 ...

  2. Linux中常用目录作用

    Linux一般相应的文件都会会放在相应的目录下.这样更有利于文件的查找. 1.可以在家目录root或home,以及temp目录下随便放东西. 2.根目录下的bin和sbin,usr目录下的bin和sb ...

  3. Postgres数据库在Linux中优化

    I/O 优化1 打开 noatime nodirtime,async 方法: 修改 /etc/fstab stat 命令查看 2 调整预读方法: 查看 sudo blockdev --getra /d ...

  4. linux中export的作用

    设置环境变量. 为什么设置环境变量?---->全局使用. 不设置环境变量会怎么样?->只有当前shell中能够调用,其他的shell不能调用. 设置了之后呢?->全局都能调用.

  5. Postgres数据库在Linux中的I/O优化

    I/O 优化1 打开 noatime方法: 修改 /etc/fstab2 调整预读方法: 查看 sudo blockdev --getra /dev/sda 设置 sudo blockdev --se ...

  6. 如丝般顺滑地从Windows迁移SQLServer数据库到Linux

    老鸟看过菜鸟的上一篇<MSSQL On Linux备份与还原>文章后,很满意,但是还是忍不住发问:"这篇文章讲的是MSSQL在Linux系统上的备份与还原,如果我之前是Windo ...

  7. linux中bin与sbin目录的作用及区别介绍

    linux中bin与sbin目录的作用及区别介绍 本文介绍下,linux中的二个主要目录:bin与sbin,它们的作用与区别,学习linux的朋友可以参考下 在linux系统中,有两个重要的目录:bi ...

  8. Linux中常用头文件的作用--转

    http://blog.sina.com.cn/s/blog_5c93b2ab0100q62k.html 1. Linux中一些头文件的作用: <assert.h>:ANSI C.提供断言 ...

  9. linux中常用的60个命令及作用详解

    Linux 必学的 60 个命令 Linux 提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在 Linux 系统上工作离不开使用系统 ...

随机推荐

  1. 4.解析配置文件 redis.conf

    将原始的redis.conf拷贝,得到一个myRedis.conf文件,修改配置文件时,就修改这个文件,不对原始的配置文件进行修改 redis配置文件中主要有以下内容: 1.units单位 a)配置大 ...

  2. Java架构师告诉你Spring IoC有什么好处呢

    前言: 这个问题也一直困惑我很久,毕竟其他语言没有IOC也活的很好. 但是Spring在当时能够一统江湖,跟IOC真的有很大的关系. 在没有IOC的时代,New代表一切,女朋友都是可以New出来的. ...

  3. logstash+elasticsearch+kibana搭建日志收集分析系统

    来源: http://blog.csdn.net/xifeijian/article/details/50829617 日志监控和分析在保障业务稳定运行时,起到了很重要的作用,不过一般情况下日志都分散 ...

  4. linux centos安装nginx1.7.4

    原文转自 jerryhe326:https://www.cnblogs.com/jerrypro/p/7062101.html一.安装准备 首先由于nginx的一些模块依赖一些lib库,所以在安装ng ...

  5. linux 欢迎界面

    开博第一篇文章,简单地写一篇linux欢迎界面吧 可以通过修改/etc/motd 或/etc/issue两个文件实现修改登录显示 区别:/etc/motd:( 登录成功才会显示 ) /etc/issu ...

  6. IntelliJ IDEA常用快捷键整合

    一.视图查看 Ctrl+F12 查看file,method结构图.类继承机构图 (不知道方法结构,Ctrl+F12一下,方法,参数,返回值,一清二楚的展现出来) Ctrl+shift+Alt+U   ...

  7. 【Jenkins】忘记admin密码,可以用此方法帮你解决

    突然有一日发现自己忘记了jenkins的管理员密码,因为我一直登录的是另外一个非管理员账户.如果出现必须要使用管理员账户操作的,比如用户管理那里的,必须要管理员账号吧,这就尴尬了. 很方的我打开安装j ...

  8. axios封装,使用拦截器统一处理接口

    1.项目路径下,引入axios.qs依赖 npm install axios npm install qs 2.在项目的src路径下新建一个commJs文件夹,在commJs文件夹里新建aps.js和 ...

  9. php截取特定字符前面或后面的内容

    1.php 截取特定字符后面的内容 可以使用函数strripos,获取一个字符串在另一个字符串中第一次出现的位置. $number = '1_0'; $result = substr($number, ...

  10. C语言calloc()函数:分配内存空间并初始化——stm32中的应用

    经常在代码中看到使用malloc来分配,然后memset清零,其实calloc更加方便,一句顶两句~ 头文件:#include <stdlib.h> calloc() 函数用来动态地分配内 ...