User quotas on tablespace

Hi,
I created a tablespace and made it default to a user. immediateley i issued a command to apply a quota 0m for that user to that tablespace.Now when i am trying to create a table by logging on that newley created user and inserting the table on that tablespace i am able to do that no error. can any one say why it is happening? if i repeated the inserting operation after some time i get the error message of quota full.remember that i have already inserted arround 10000 of rows on that table which has only 2 columns on it.
thx
pradeep

This is entirely expected behaviour. Setting a quota of zero means 'you may not consume space... and if you already have consumed space before, you may not consume any extra space'. It does not mean 'you cannot insert data into objects which already have space assigned to them'.
In other words, creating a table causes an extent to be allocated. The table thus acquires some space (say, 1MB). You can think of that as your user 'consuming' or using up 1MB of space in the tablespace. You THEN set quota to zero. That means that table still exists; it's still allowed to be its (say) 1MB; but it can never acquire any **extra** space.
So now you start inserting rows into that table -of course you're not going to get any errors, because you aren't asking the table to grow. You're simply filling up the 1MB that your table had already acquired when it was legal for it to do so. Eventually, however, you will fill up the initial extent and your next insert will cause the table to want to acquire a new extent -which it is not allowed to do because of the Quota 0 setting. At that point, you'll get the error.
I see you've had some not-very-helpful replies in this thread already. Well, Daljit of course won't be able to replicate the behaviour you see, because in his example, he is trying to create a new table: that immediately seeks to acquire an initial extent; it's thus immediately trying to consume fresh space in the tablespace; it therefore immediately fails. The thing he didn't test properly was doing INSERTs when quota is zero: those will work fine, until one insert causes the table to want to extend.
Similarly, since nothing is going wrong, it's pointless you worrying about whether it's a role or privilege thing. It's doubly pointless because quota enforcement has never had anything whatsoever to do with roles or privileges, with the sole exception of having unlimited quota via a grant of a particular system privilege (which we know can't be an issue here, since eventually the quota is being enforced).
And, just for once, the repeated calls from others for your Oracle version are irrelevant: quotas have behaved this way since at least version 8.0, and quite possibly version 7 before that (but I have trouble remembering that far back with any certainty).
I think we see in some of the replies to this thread that you are not alone in not knowing properly how quotas actually work!

Similar Messages

  • Issue while assigning the user quota to tablespace

    Hi,
    I am trying to assign 11000m quota to user CIMGRPT on DATA tablespace
    once I entered the alter command is showing user alterd but while checking the quota its showing 0bytes.
    please echeck the below query and sugeest accordingly.
    SQL> select username from dba_users where default_tablespace='DATA';
    USERNAME
    CIMGRPT
    HPCMSASRPT
    DETEST
    SQL> alter user CIMGRPT quota 11000M on DATA;
    User altered.
    SQL> select bytes/1024/1024,tablespace_name from dba_ts_quotas where username='C
    IMGRPT';
    BYTES/1024/1024 TABLESPACE_NAME
    0 DATA
    SQL> select bytes/1024/1024 from dba_data_files where tablespace_name='DATA';
    BYTES/1024/1024
    63127
    63127
    63127
    63127
    63127
    63127
    6 rows selected.
    Regards,
    Edited by: user9945534 on Mar 11, 2009 12:54 AM

    sorry, I don't understand your question.
    select bytes/1024/1024 as USED, MAX_BYTES , tablespace_name from dba_ts_quotas where username='C';
    use MAX_BYTES to find Quota and bytes=usedIdea:
    alter user scott quota 100M on TBS_T;
    select bytes/1024/1024 as USED, MAX_BYTES/1024/1024 as MAX, tablespace_name from dba_ts_quotas where username='SCOTT';
    USED MAX TABLESPACE_NAME
    0 100 TBS_T

  • Create object on user's default tablespace only

    Hi all,
    Is there anyway I can limit a user to create tables NOT on system tablespace , besides alter user quota 0M on system ?
    Can I limit a user to create objects only on his own default tablespace ?
    alter user quota 0M on < all other tablespaces except user's default> ?
    Thanks.

    Hi,
    I have really no idea why oracle is behaving like this. How can you create a table without a quota.
    1) Write here the oracle version for your database software
    2) Can you try connecting to the database with same user id but from a remote client using TNS method instead of logging in locally, and they try creating the table.
    3) Can you give only CREATE SESSION privilege (not create table) and then perform the same task again.
    PS: Please paster your code/output enclosed withing code tag. Write **, then your code/output and then again *{code*
    Salmam                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • PDB_DBA has DBA role, but no quota on tablespace

    Hi all,
    I have weird situation and I can't find in doco why is that:
    I have created PDB with role DBA for admin user, I can see that PDB_DBA role has DBA role. I can  create table in admin user schema, but can't insert rows there, as there are no quota on tablespace. If I grant DBA to admin user directly- I can insert rows - so, I got "quota unlimited" as part of DBA role:
    SQL> conn / as sysdba
    Connected.
    SQL> create pluggable database P1 admin user a identified by a roles=(dba);
    Pluggable database created.
    SQL> alter session set container=P1;
    Session altered.
    SQL> alter pluggable database P1 open;
    Pluggable database altered.
    SQL> create table a.t(id integer);
    Table created.
    SQL> insert into a.t values(1);
    insert into a.t values(1)
    ERROR at line 1:
    ORA-01950: no privileges on tablespace 'SYSTEM'
    SQL> select * from dba_role_privs where grantee = 'A';
    GRANTEE
    GRANTED_ROLE ADM DEL DEF COM
    A
    PDB_DBA YES NO  YES NO
    SQL> select granted_role from dba_role_privs where grantee = 'PDB_DBA';
    GRANTED_ROLE
    DBA
    SQL>
    SQL> grant dba to a;
    Grant succeeded.
    SQL> insert into a.t values(1);
    1 row created.
    SQL> revoke dba from a;
    Revoke succeeded.
    SQL> insert into a.t values(1);
    1 row created.
    SQL>

    What is the full version of Oracle 12c that you are using?
    That does seem odd. Especially since revoking the direct grant leaves the privilege intact which could only come from the role.
    What happens if you bounce the DB after the initial INSERT failure? Does it continue to fail if the direct grant isn't made?
    Also - did you specify FILE_NAME_CONVERT as an init parameter?
    If you have a MOS account I suggest you search to see if there are any bugs related to PDB privileges.
    There have been some known issues with the whole PDB metadata link thing. System tables only exist in the root and the PDBs only have metadata links to the actual system entries. It's possible that the metadata link didn't get created or propagated properly after the PDB was created.
    That is why I ask if you can try bouncing the database to see if the problem still persists.
    The other, related, test to try is to first create the PDB (no other action at all such as grants, users, or anything). Then open the PDB and then shut it all down.
    When you restart the entire DB and open the PDB then perform your test and see if you get the same results. The intent of that test is to see if the metadata entries are properly created and propogated AFTER the PDB actually exists.
    Unfortunately (for you at least for now) there are so many nuances to the whole multitenant thing in the way privileges (among other things) work it will be a while until they all get sorted out.
    Many of those are the management of privileges (roles, grants, etc) for PDBs given that some PDBs aren't open at the time the privilege change is made. If a PDB isn't open and you modify a common privilege there won't be any replication to that PDB and you will later have to update that PDBs privileges manually.

  • One user for multiple tablespaces

    Hello.
    Oracle 11g enterprise.
    Whenever I setup a new tablespace on my server, I create a user for each tablespace on the server.
    Is is possible to create only one user for all tablespaces on a server?
    What is the easiest way to create this one user to have all roles and privileges across all tablespaces?
    Any suggestions are greatly appreciated.

    I would seriously question a design with 'N' databases (whether they are on 1 or more or 'N' servers is not the issue) and DBLink from each of the databases to every other database.
    Not only is it going to be hell to manage (how and when can you decide to shutdown a database for maintenance / patching / server/hardware maintenance when you have N-1 others connecting to it online), but it indicates a possibly high level of data duplication.
    So we still revert to why you think you need that many databases and that many users and that many database links.
    As has been pointed out, there is no relation between tablespaces and DBLinks. NONE whatsoever.
    As for tablespaces and users, I can have
    a. One Tablespace and 10 database accounts with any 1 to 10 of the accounts storing data objects in the tablespace
    b. Ten Tablespaces and 1 database account storing data objects across all 10 tablespaces
    c. 100 database accounts but only 1 to N of them having any data objects, the others only doing SELECT/INSERT/UPDATE/DELETE on objects owned by 1 to N schemas. (This one schemas all being in 1 tablespace or M tablespaces).
    There is no one-to-one correspondence between users and tablespaces necessary. Tablespaces are for logical grouping of data objects.
    I keep referring to data objects as these (Tables, Indexes, LOBs, IOTs, Clusters etc) require storage. Objects like Sequences do not require separate tablepaces although they have persistent values. Objects like DBLinks and Views are only definitions and require no storage (other than in the data dictionary !). Objects like Procedures and Packages and Triggers are code objects and require no storage (other than in the data dictionary).
    So :
    1. Such a design needs to be questioned.
    2. Even if you need such a design, do not tie DBLinks to Tablespaces.
    3. Even if you need DBLinks, do not tie Users to Tablespaces.

  • How to set user quotas on a certain filesystem

    Hi
    It may be simple and easy question but I'm really new to this
    I need to know how to set user quotas on a certain file system in details
    I know it can be done easily in one step in Solaris ZFS
    but how is it done in Linux ?
    Thanks in Advance :)

    See also:
    How to set user quotas on a certain filesystem

  • Different User Quotas

    Hellooos,
    I have setted default user quotas for our ims5.2, but now i need to set different quotas, i.e. certain users to have different account quotas than the rest users of the domain!???

    You can set a users mail message quota via the delegated admin, or via ldapmodify by setting the attribute "mailQuta" to the number of bytes. If you use ldapmodify, the number should be an even power of 2, ie for a 200Mb quota, put in 209715200. I'm not sure if this will cause a problem if you don't follow it, but I do know the iDA will modify your input to conform to the rule.
    HTH,
    Roger S.

  • How to kick guest user when user quota has exhausted

    Hi,
    I have wlc and acs v4.0. Currently, I am using layer 3 security with web authentication and has been succesfully integrated with ACS for authentication. User quota has been set so that when user has reached its quota, may not be able to log in again. But problem occurs when the user has not logged out, it still can connect to network although its account at ACS shows disabled because of its quota limitation. So, is it a way to kick the user out, when the user has reached its quota ?
    Radius accounting has been properly set. and AAA override has been set on appropriate wlan ssid.
    Regards,
    Suwandy

    thanks for your reply.
    do you mean "allow AAA override" ? If so, I have tried it and it works for changing user session by radius server. But the problem is, radius server do not send the user-session parameter dynamically. How can the radius send/calculate the remaining session time to wlc ?

  • Mail Per User Quotas Not Working

    We just migrated from 10.9 server to the new 10.10 server and noticed that our per user mail quotas were no longer working.  If I change the Server app - Mail setting - to have a global mail quota on it work, however, we have a few accounts that we need to leave unlimited and the per user quota will not override the global quota.  So far we have had to leave the global quota disabled because of this.
    Even without global quota turned off - trying to set per user mail limits is still not working.  We are changing it thru the Server app and clicking users - selecting a user - then select edit mail options - and changing the setting for the limit size.  No matter what we set it to - it will not work.
    Does anyone know what command or how to change the per user quota limits from the command line?  I found that Dovecotadm quota -u username  shows you what the quota is, but I am stumped as how to change it via a command line or thru another method since the server app is not working.
    Any help would be appreciated!
    ps. Also posted my doveconf -n file below, but I am missing if there is anything not configured properly.
    bash-3.2# dovecot -n
    bash: dovecot: command not found
    bash-3.2# doveconf -n
    # 2.2.5: /Library/Server/Mail/Config/dovecot/dovecot.conf
    # OS: Darwin 14.1.0 x86_64  hfs
    aps_topic = com.apple.mail.XServer.a1c54f6d-f4ad-4431-b882-0f11570dd637
    auth_mechanisms = cram-md5 plain login
    auth_socket_path = /var/run/dovecot/auth-userdb
    auth_username_format = %n
    debug_log_path = /Library/Logs/Mail/mail-debug.log
    default_internal_user = _dovecot
    default_login_user = _dovenull
    disable_plaintext_auth = no
    first_valid_gid = 6
    first_valid_uid = 6
    imap_id_log = *
    imap_id_send = "name" * "version" *
    imap_urlauth_submit_user = submit
    info_log_path = /Library/Logs/Mail/mail-info.log
    log_path = /Library/Logs/Mail/mail-err.log
    login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c
    mail_access_groups = mail
    mail_attribute_dict = file:/Library/Server/Mail/Data/attributes/attributes.dict
    mail_location = maildir:/Library/Server/Mail/Data/mail/%u
    mail_log_prefix = "%s(pid %p user %u): "
    mail_plugins = quota zlib acl fts fts_sk
    managesieve_notify_capability = mailto
    managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date ihave
    mdbox_rotate_size = 200 M
    namespace acl-mailboxes {
      list = children
      location = maildir:/Library/Server/Mail/Data/mail/users/%%u:INDEX=/Library/Server/Mail/Dat a/mail/shared/%%u
      prefix = shared.%%u.
      separator = .
      subscriptions = no
      type = shared
    namespace inbox {
      inbox = yes
      location =
      mailbox Drafts {
        special_use = \Drafts
      mailbox Junk {
        special_use = \Junk
      mailbox Sent {
        special_use = \Sent
      mailbox "Sent Messages" {
        special_use = \Sent
      mailbox Trash {
        special_use = \Trash
      prefix =
    namespace list-archives {
      list = children
      location = maildir:/Library/Server/Mail/Data/listserver/messages/archive/lists/%%u:INDEX=/ Library/Server/Mail/Data/listserver/messages/archive/shared/%%u
      prefix = archives.%%u.
      separator = .
      subscriptions = no
      type = shared
    passdb {
      driver = od
    passdb {
      args = /Library/Server/Mail/Config/dovecot/submit.passdb
      driver = passwd-file
    plugin {
      acl = vfile:/Library/Server/Mail/Config/dovecot/global-acls:cache_secs=300
      acl_shared_dict = file:/Library/Server/Mail/Data/shared/shared-mailboxes
      fts = sk
      quota = maildir:User quota
      quota_warning = storage=100%% quota-exceeded %u
      quota_warning2 = storage=85%% quota-warning %u
      sieve = /Library/Server/Mail/Data/rules/%u/dovecot.sieve
      sieve_dir = /Library/Server/Mail/Data/rules/%u
      stats_refresh = 30 secs
      stats_track_cmds = yes
    protocols = imap lmtp sieve pop3
    quota_full_tempfail = yes
    service auth {
      extra_groups = _keytabusers
      idle_kill = 15 mins
      unix_listener auth-userdb {
        user = _dovecot
    service dns_client {
      unix_listener dns-client {
        mode = 0600
    service imap-login {
      inet_listener imap {
        port = 143
      inet_listener imaps {
        port = 993
        ssl = yes
      service_count = 0
    service imap {
      client_limit = 5
      process_limit = 200
      service_count = 0
    service indexer-worker {
      user = _dovecot
    service lmtp {
      unix_listener lmtp {
        mode = 0600
    service managesieve-login {
      inet_listener sieve {
        port = 4190
    service pop3-login {
      inet_listener pop3 {
        port = 110
      inet_listener pop3s {
        port = 995
        ssl = yes
    service pop3 {
      client_limit = 5
      process_limit = 200
      service_count = 0
    service quota-exceeded {
      executable = script /Applications/Server.app/Contents/ServerRoot/usr/libexec/dovecot/quota-exceeded .sh
      unix_listener quota-exceeded {
        group = mail
        mode = 0660
        user = _dovecot
      user = _dovecot
    service quota-warning {
      executable = script /Applications/Server.app/Contents/ServerRoot/usr/libexec/dovecot/quota-warning. sh
      unix_listener quota-warning {
        group = mail
        mode = 0660
        user = _dovecot
      user = _dovecot
    service stats {
      fifo_listener stats-mail {
        mode = 0600
        user = _dovecot
    ssl = required
    ssl_ca = </etc/certificates/mail.maxxx.com.3524D1A33970C65E8A8DFF78E757DDE3C66AED10.chai n.pem
    ssl_cert = </etc/certificates/mail.maxxx.com.3524D1A33970C65E8A8DFF78E757DDE3C66AED10.cert .pem
    ssl_cipher_list = ALL:!LOW:!SSLv2:!EXP:!aNULL:!ADH:!eNULL
    ssl_key = </etc/certificates/mail.maxxx.com.3524D1A33970C65E8A8DFF78E757DDE3C66AED10.key. pem
    ssl_key_path = /etc/certificates/mail.maxxx.com.3524D1A33970C65E8A8DFF78E757DDE3C66AED10.key.p em
    userdb {
      args = partition=/Library/Server/Mail/Config/dovecot/partition_map.conf global_quota=0 enforce_quotas=yes
      driver = od
    userdb {
      args = /Library/Server/Mail/Config/dovecot/submit.passdb
      driver = passwd-file
    verbose_proctitle = yes
    protocol lmtp {
      mail_plugins = quota zlib acl fts fts_sk sieve
    protocol lda {
      mail_plugins = quota zlib acl fts fts_sk sieve push_notify
    protocol imap {
      mail_max_userip_connections = 20
      mail_plugins = quota zlib acl fts fts_sk imap_acl imap_quota imap_zlib
    protocol pop3 {
      mail_max_userip_connections = 6

    I guess the problem didn't resolve itself, rather it has revealed that it is intermittent (my favorite kind).
    What could made a message sent to a legitimate alias username not get picked up during the imap connection. I know the smtp server accepted the message (see logs above).

  • Script for Users, Roles,Grant,Tablespace

    Hi,
    Please guide me on the following .
    I am moving database to new Unix server .
    so can I create the script which will check the existing Users, Roles, Grants, Tablespaces from current database and store that data.
    And using same soared data I want to create the same " Users, Roles, Grants, Tablespaces" using the script.
    Can i do this. Please guide me how to do this so I will help me to move database
    Thanks,
    Amol

    You should run ?\rdbms\admin\utlrp (note the ?, which is shorthand for ORACLE_HOME) from the database server. to make sure you have the correct script. You can call sqlplus from Toad easily.
    The script affects PL/SQL only. PL/SQL resides in the SYSTEM tablespace in the SYS schema. You don't have 400G of PL/SQL. It should take a few minutes only.
    The SYSTEM schema WILL be imported. SYS will not be imported, but automagically recreated. The only thing you will miss is Grants which have been made by SYS directly to end-users or roles, outside those defined in catalog.sql
    Sybrand Bakker
    Senior Oracle DBA

  • Is there a log to register a change user quota ?

    Hi, 
    I would like to know if there´s a specific log or event to verify with someone changed the user quota from a specific user.
    Or with there´s an ID on eventviewer to check it 
    I have an user that for some reason I change the quota and a few days later the quota come back to the old quota. 
    Thanks 

    It should be in Admin Audit Log if any admin has changed it...
    Admin Audit log is by default enabled when you install Exchange and keeps 90 days of data (unless someone changed it)
    Administrator Audit Logging
    Blog |
    Get Your Exchange Powershell Tip of the Day from here

  • Authentication & User Quotas

    Hello,
    I have two problems with ACS 3.1
    1 - The dialog box for authentication reappear during the user connexion to Internet
    2 - The user quotas does not work althought the function was selected
    Thanks for help

    I think you have enabled click the LEAP Authentication Status or EAP-FAST Authentication Status tab in the Windows system tray and uncheck the Shown minimized next time check box.

  • Increase Individual Users Quota

    In the past I was able to right click on a Users Home Directory > Properties > Novell Info and change their Quota.
    Now when I do this, even though it says the change was made, it is not updating for the Users. They still cannot save to their Home Directory as it tells them their disk is full.
    There is ample room on the Volume.
    NSM does not report any errors on the Engine or Agent monitor screens.
    NSM 2.5.1 (I know. An upgrade is on our list :)) On Netware 6.5
    Windows 7 User machines
    eDir 8.8.6
    NSS data on OES2 SP3
    Any ideas. This is probably the first request we have had for a quota increase since we went to Windows 7. Could that be the issue?
    Thanks!!

    On 9/10/2012 1:06 PM, kbannister wrote:
    >
    > In the past I was able to right click on a Users Home Directory >
    > Properties > Novell Info and change their Quota.
    >
    > Now when I do this, even though it says the change was made, it is not
    > updating for the Users. They still cannot save to their Home Directory
    > as it tells them their disk is full.
    >
    > There is ample room on the Volume.
    >
    > NSM does not report any errors on the Engine or Agent monitor screens.
    >
    > NSM 2.5.1 (I know. An upgrade is on our list :)) On Netware 6.5
    > Windows 7 User machines
    > eDir 8.8.6
    > NSS data on OES2 SP3
    >
    > Any ideas. This is probably the first request we have had for a quota
    > increase since we went to Windows 7. Could that be the issue?
    >
    > Thanks!!
    >
    >
    kbannister,
    Are you able to increase these users' quota through NSM's Quota
    Management interface? Or through iManager? Or have you only attempted
    this through ConsoleOne?
    If none of those tools work, the problem might be the NSS settings on
    the volume in question. Verify those with NSSMU.
    - NFMS Support Team

  • Xsan User Quotas

    I got the official word from Apple regarding a bug in the Xsan User Quotas program: Although the program accurately reports quotas for the users, the program will NOT report quotas for the groups that the user is in. You'll have to use Xsan Admin to check on the group quotas. I'm annoyed that such a simple tool doesn't work, but I'm glad to find out the problem's not on my side.
    Xsan   Mac OS X (10.4.3)   Xsan 1.2

    Hi,
    mess_user wrote:
    Does anyone know if messaging server 6.3 supports mailbox user quotas over 6 Gb?, because in messaging server 5.2 we had some problems using user quotas of 3GbAs Jay said, larger quota's are supported in 6.3. The reason why iMS5.2 was unable to support a quota larger then 4GB is that it didn't support the use of the K,M,G extensions in the mailquota: user attribute.
    http://docs.sun.com/app/docs/doc/819-4437/6n6jckqv5?a=view
    So for iMS5.2 the limit was restricted to the largest value of a signed integer. For MS6.3 "The maximum quota value of the user mailbox is 4096G".
    Regards,
    Shane.

  • Assign to one user a temporary tablespace

    Hi,
    I would know how to assign to one user called scott a tempory tablespace called GTEMP
    Thanks with anticipation
    Roberto

    Hi,
    Please see this
    SQL> alter user scott temporary tablespace gtemp;
    User altered.Regards

Maybe you are looking for

  • What to do if after your MacBook Crashed & iTunes over writes your media folder

    So my MacBook Pro hard drive was starting to fail, and before it died I copied my music through itunes over to an external drive. I reformatted the drive, updated to Mountain Lion & have started to get back to "life as normal" after having to reinsta

  • Opportunities / survay data

    hello, Can anybody tell in which tables the opportunities / survay data (CRM) results stored. and also how the survay results data can transfer from one system to system. thanks Babu

  • Excel files suddenly use Adobe logo ?

    Sommige  Excel-files gebruiken plots ongevraagd en onbedoeld het Acrobat Reader logo. Ze zijn dan niet met Acrobat te openen, wel met Excel. Heb Acrocat al ge-herinstalleerd, maar dat is niet de oplossing. Wie helpt ?

  • After resetting my iPod Touch I cant get to the page that list all the games I have purchased

    After resetting my iPod Touch I cant get to the page tha list all the games that I have purchased & downloaded on my iPod. Why?

  • ProRes Render Issues

    I am having an issue with ProRes movies rendered in After Effects and imported into Premiere Pro. They don't seem to work very well since the last update. Specifically, the movies barely play in the timeline and they lock up the program when I try to