Need query to find the minimum size of a datafile

Hi All,
I need to reduce the size of a datafile. Before that i need to find out  how far i can reduce the size of the datafile. Please help
DB version:11.2.0.3
OS:AIX 6.1

Below SQL will ask you blocksize (I guess it is default i.e. 8192) :
select 'alter database datafile '''||file_name||''' resize ' ||
           ceil( (nvl(hwm,1)*&&blksize)/1024/1024 ) || 'm;' cmd
from dba_data_files a,
( select file_id, max(block_id+blocks-1) hwm
             from dba_extents
            group by file_id ) b
where a.file_id = b.file_id(+)
and ceil( blocks*&&blksize/1024/1024) -
ceil( (nvl(hwm,1)*&&blksize)/1024/1024 ) > 0
It will tell you upto how much extend you can shrink your datafile.
Regards
Girish Sharma

Similar Messages

  • Query to find the size of trigger?

    query to find the size of trigger?

    Can you define what the size of a trigger would be?
    I suppose one measure might be to get the DDL for the trigger (DBMS_METADATA.GET_DDL) and do a DBMS_LOB.GetLength on the CLOB that is returned. I'm hard-pressed to find that a meaningful number, but it is a measure of "size".
    Justin

  • Query to find the size of a schema

    Hi,
    Can you give me the Oracle query to find the size of a schema ?
    Thanks,
    Smitha

    Hi,
    Following query tell you the size of schema.
    SELECT owner,
    Sum(bytes)/1024/1024 AS total_size_mb
    FROM dba_segments
    WHERE owner = Upper('&1')
    GROUP BY owner
    Regards,
    Awais Riaz

  • Need help to find the "leading point size"

    Hi,
    I need help to find the "leading point size".
    Any para style leading is more than 2 points of my font size, I need the alert message "Its more than 2 points for your font size". For instance my para font size is 10 here my leading should be 12 points rather than its 14 points, I need the alert message.
    Is this possible by script?
    by
    hasvi

    Hi Hasvi,
    Try this.
    var doc = app.activeDocument;
    var texts = doc.stories.everyItem().textStyleRanges.everyItem().getElements();
    var pstyle = "Following paragraph styles have more leadings:\r\r";
    for(var i=0;i<texts.length;i++)
        var ps = texts[i].pointSize;
        if(texts[i].leading > ps + 2)
            pstyle += texts[i].appliedParagraphStyle.name;
    alert(pstyle)
    If it is correct than mark the answer as correct and don't mark your question as correct answer.
    Regards,
    Chinna

  • How to find the db size

    Hi ,
    Please tell me how to find the db size.
    Thanks,
    Kumar.

    If I understand correctly, the above query will give the space allocated to the database. This isn't necessarily the same as the space used by the database. Or do I need to clean my glasses ?
    I use the following to get sizes for tablespaces (may need some formatting done - works in 9i and 10g) :
    SELECT
         Total.name "TABLESPACE_NAME",
         total_space "TABLESPACE_SIZE",
         nvl(Free_space, 0) Free_space,
         nvl(total_space-Free_space, 0) Used_space
    FROM
         select
              tablespace_name,
              sum(bytes/1024/1024) Free_Space
         from
              sys.dba_free_space
         group by
              tablespace_name
         ) Free,
         select
              b.name,
              sum(bytes/1024/1024) TOTAL_SPACE
         from
              sys.v_$datafile a,
              sys.v_$tablespace B
         where
              a.ts# = b.ts#
         group by
              b.name
         ) Total
    WHERE
         Free.Tablespace_name(+) = Total.name
    ORDER BY
         Total.name
    ;

  • How to find the total size of the database before the Restore.

    Hi Guys,
    I'll do a Restore, but I do not know the environment and need to know what the total size of the database to create a storage area.
    Is there any way to find out the total size of the database(including all datafiles and temp) using only the RMAN catalog before running the Restore.
    I'm using Tivoli TSM with ASM.
    Levi Pereira

    Hi tychos,
    break on report
    compute sum of TOTAL_DB on Report
    select 'DataFiles' NAME, SUM(ROUND(bytes/1024/1024/1024)) TOTAL_DB from rc_datafile
    where db_name = 'ORCL'
    UNION ALL
    select 'TempFiles' NAME, SUM(ROUND(bytes/1024/1024/1024)) TOTAL_DB from rc_tempfile
    where db_name = 'ORCL'This query returned I had 372 Gbytes of data.
    At the end of the Restore Database got the size of 408 Gbytes.
    The total size of all Redo was 3Gbytes that was not being counted anyway there was a difference of 33Gbytes.
    I need to understand the reason for the difference in sizes.
    It makes no sense to me RMAN catalog does not inform the total size of the database (Datafiles, tempfiles, Redo and controlfile) before the Restore since it's information is already somewhere.
    Thanks for your help.
    Levi

  • Query to find the list of users having access to a particular scenario

    Hi,
    I am learning Hyperion Planning 9.2 x version. I wanted to know the query to find the list of users having access to Plan Iteration - 1 scenarion.
    As I am new to Hyperion Essbase and Hyperion Planning, I am assuming these ideas work out to get the desired result.
    1) As Hyperion Planning uses Relational DB to store the User Security information, we can query the list of users who is having access to Plan Iteration - 1 Scenario.
    I am not sure if this solution works. Please correct me If I am wrong.
    2) We can also query from the essbase editor to find out who all having access to this scenario.
    If the above is correct, can you please provide me the query.
    I am really need of this and I will be happy if any one provide the solution.
    Thanks & Regards,
    Upendra. Bestha

    Hi,
    If you are looking for some SQL to retrieve the access rights by member then you can use something like (SQL Server code though can easily be modified for Oracle)
    SELECT usr.object_name as Username,mem.object_name as Member,
    'Access Rights' = CASE acc.access_mode
    WHEN -1 THEN 'None'
    WHEN 1 THEN 'Read'
    WHEN 2 THEN 'Write'
    WHEN 3 THEN 'Write'
    ELSE 'Unknown' END,
    'Relation' = CASE acc.flags
    WHEN 0 THEN 'Member'
    WHEN 5 THEN 'Children'
    WHEN 6 THEN 'Children (inclusive)'
    WHEN 8 THEN 'Descendants'
    WHEN 9 THEN 'Descendants (inclusive)'
    ELSE 'Unknown' END
    FROM
    hsp_access_control acc, hsp_object mem, hsp_object usr
    WHERE acc.object_id = mem.object_id
    AND acc.user_id = usr.object_id
    AND mem.object_name = 'Plan Iteration - 1'
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • Finding the minimum with a for statement

    Ok so Ive got this program and I need to find the minimum value from the 10 values that are entered by a user, my problem is I cant figure out to initialize the variable minNum, Im not sure how to do it with a for loop, if I set it to zero, then zero will always be the minimum, so Im not sure how to make it so it takes the first value as the minimum then compares each value entered after that to see if the value is smaller, and I have to use a for loop for this problem, my professor specified which loop to use, so heres the code:
    import java.util.Scanner;
    public class Exercise52Chapt6
      public static void main(String[] args)
                Scanner scan = new Scanner(System.in);
                  int minNum;  // stores the minimum of 10 numbers
                           int number;  // stores the current input
                           for ( int i = 1; i <= 10; i++ )
                    System.out.print( "Enter an integer > " );
                                   number = scan.nextInt( );
                        if(number < minNum)
                        minNum = number;
              // process results by printing the minimum
              System.out.println( "The minimum is: " + minNum );
    }

    import java.util.Scanner;
    public class Test
      public static void main(String[] args)
                    Scanner scan = new Scanner(System.in);
                        int minNum=0;  // stores the minimum of 10 numbers
                          int number;  // stores the current input
                          for ( int i = 1; i <= 10; i++ )
                            System.out.print( "Enter an integer > " );
                                number = scan.nextInt( );
                                if(i==1){
                                    minNum = number;
                                    continue;
                                if(number < minNum)
                                    minNum = number;
                    // process results by printing the minimum
                    System.out.println( "The minimum is: " + minNum );
    }

  • Give me the sql query which calculte the table size in oracle 10g ecc 6.0

    Hi expert,
    Please  give me the sql query which calculte the table size in oracle 10g ecc 6.0.
    Regards

    Orkun Gedik wrote:
    select segment_name, sum(bytes)/(1024*1024) from dba_segments where segment_name = '<TABLE_NAME>' group by segment_name;
    Hi,
    This delivers possibly wrong data in MCOD installations.
    Depending on Oracle Version and Patchlevel dba_segments does not always have the correct data,
    at any time esp. for indexes right after being rebuild parallel (Even in DB02 because it is using USER_SEGMENTS).
    Takes a day to get the data back in line (never found out, who did the correction at night, could be RSCOLL00 ?).
    Use above statement with "OWNER = " in WHERE for MCOD or connect as schema owner and use USER_SEGMENTS.
    Use with
    segment_name LIKE '<TABLE_NAME>%'
    if you like to see the related indexes as well.
    For partitioned objects, a join from dba_tables / dba_indexes to dba_tab_partitions/dba_ind_partitions to dba_segments
    might be needed, esp. for hash partitioned tables, depending on how they have been created ( partition names SYS_xxxx).
    Volker

  • Query to find the memory of database in oracle,sql

    Hi All,
    Please let me know the query to find the memory of database in oracle,sql.
    Thanks,
    sajith

    How do I find the overall database size?
    The biggest portion of a database's size comes from the datafiles. To find out how many megabytes are allocated to ALL datafiles:
    select sum(bytes)/1024/1024 "Meg" from dba_data_files;
    To get the size of all TEMP files:
    select nvl(sum(bytes),0)/1024/1024 "Meg" from dba_temp_files;
    To get the size of the on-line redo-logs:
    select sum(bytes)/1024/1024 "Meg" from sys.v_$log;
    Putting it all together into a single query:
    select a.data_size+b.temp_size+c.redo_size "total_size"
    from ( select sum(bytes) data_size
    from dba_data_files ) a,
    ( select nvl(sum(bytes),0) temp_size
    from dba_temp_files ) b,
    ( select sum(bytes) redo_size
    from sys.v_$log ) c;
    Another query ("Free space" reports data files free space):
    col "Database Size" format a20
    col "Free space" format a20
    select round(sum(used.bytes) / 1024 / 1024 ) || ' MB' "Database Size"
    , round(free.p / 1024 / 1024) || ' MB' "Free space"
    from (select bytes from v$datafile
    union all
    select bytes from v$tempfile
    union all
    select bytes from v$log) used
    , (select sum(bytes) as p from dba_free_space) free
    group by free.p
    This is what I use :P From http://www.orafaq.com/wiki/Oracle_database_FAQ#How_do_I_find_the_overall_database_size.3F

  • Finding the minimum number greater than zero in an array

    Hi All,
    I have an Array (Attached). I need to find the minimum number that is NOT zero.
    Using the Array Max & Min returns 0 as the min. What I want is the next minimum number.
    Thank you.
    D
    Attachments:
    Array.jpg ‏72 KB

    Do you also need the position of the found element? What if several numbers have the same minimum value?
    If you just want the value of the smallest nonzero element,  here's what I would do. All you neet to do is retain is a single number.
    This assumes that your zeroes are really zero. With DBL you never know.  
    LabVIEW Champion . Do more with less code and in less time .
    Attachments:
    SmallestNEZero.png ‏20 KB

  • Sql query to find the balances for a customer account wise.

    Hi,
    Could someone help me with the sql query to find the balances for each customer account wise. This is need to generate the report.
    presently we are using this query, but the output doesnot return the expected result.
    SELECT sum(nvl(ps.acctd_amount_due_remaining,0)) "Balance"
    FROM      ra_cust_trx_line_gl_dist_all gld,
              gl_code_combinations c,
              ar_payment_schedules_all ps,
              RA_CUSTOMER_TRX_ALL rat,
              ra_customers rc
    WHERE      c.CHART_OF_ACCOUNTS_ID = 101
    and gld.code_combination_id = c.code_combination_id
         and rat.CUSTOMER_TRX_ID=gld.CUSTOMER_TRX_ID
         and rat.CUSTOMER_TRX_ID=ps.CUSTOMER_TRX_ID
    and ps.customer_id=rc.customer_id
         and ps.status='OP'
         and ps.gl_date <= :PDATE
         and ps.org_id=:PORGID
         and ps.class in ('GUAR','INV','DM','DEP')
    and c.SEGMENT4=:Account_id
    and ps.customer_id=:Customer_id
    Thanks in advance.
    Kalyan.

    Can someone help us with this.

  • Need query to find rows

    hi
    i need query to find out for one perticular row from parent table ,,which references how many rows in how many child tables , and child to child tables. in herirachy fashion.
    if anybody know please help me

    I guess it would be difficult to come up with a generic script to get answer that can help in all situations...you have to see the table definitions in your schema and try...like in case of emp and dept table,
    select * from dept where deptno in
    (select deptno,count(*) from emp group by deptno having count(*)>1)
    (this gives rows from dept table where , for corresponding deptno there are more than one rows in emp table).
    Thanks
    Nirav

  • Query to find the list of BP without having Particular GL transactions.

    Hi Experts,
    I want the query to find the List of Business partner who is not having Journal entry for Certain General ledger.
    Scenario: we are creating JE for TDS posting.
    so, i want to know the list of BP , who and all not having particular TDS GL for the particular period.
    Thanks in advance,
    Dwarak

    Hi Dwarak,
    Sure, no problem
    DECLARE @AcctCode AS NVARCHAR(100)
    SELECT @AcctCode=T0.AcctCode FROM OACT T0 WHERE T0.AcctCode='[%0]'
    DECLARE @DateFrom AS DATETIME
    SELECT @DateFrom=T1.RefDate FROM JDT1 T1 WHERE T1.RefDate=[%1]
    DECLARE @DateTo AS DATETIME
    SELECT @DateTo=T2.RefDate FROM JDT1 T2 WHERE T2.RefDate=[%2]
    SELECT CardCode FROM OCRD WHERE CardType='S'
    AND CardCode NOT IN(
    SELECT DISTINCT ContraAct FROM JDT1
    WHERE Account=@AcctCode AND RefDate BETWEEN @DateFrom AND @DateTo)
    Ok, now, here's the problem that I just encountered. This query will work, but, no matter how we fill the parameter, it will show you the very same result. To be honest, I don't know what's wrong with this query.
    If you change all the variables ( @AcctCode and @DateFrom and @DateTo ) directly, it will give you the accurate result. Take this as an example:
    SELECT CardCode FROM OCRD WHERE CardType='S'
    AND CardCode NOT IN(
    SELECT DISTINCT ContraAct FROM JDT1
    WHERE Account='10030201' AND RefDate BETWEEN '2011-09-01' AND '2011-09-20')
    I hard-code the account code, date from and date to for selection. System will show you the accurate result, but using parameter as in first query, system show same result no matter how we fill the parameter.
    Sorry, it seems that I could only partially solved your problem here. I already tried to create a stored procedure and executing the stored procedure with parameter, but still, somehow SBO show very same result no matter if we change the parameter.
    So, my solution need user to manually change the parameter in query. I know, this is a stupid solution, I'm afraid I can't help you to achieve perfect solution here. Maybe anyone here in the forum could guide me to fix my mistake in first query and how to rectify it?
    Best Regards,
    Hendry Wijaya

  • Where can I find the file sizes for each application before downloading?

    Where can I find the file sizes for each application before downloading? I have limited download (525 MBs/day) because of Hughsnet and I need to know each applications total size before I download.

    You can go to the trial page to get an estimated size.  As the Creative Cloud products change over time though this may become less accurate.
    If you are on a limited bandwidth account then you may want to consider purchasing a perpetual copy of Creative Suite 6 as opposed to subscribing to the Creative Cloud.

Maybe you are looking for

  • Error while running F110.

    Dear All, we are getting the following error while running F110. ERROR: "payment with the Currency EUR, Payment method 'S': No valid payment procedure" 1. Invoice posted in EUR 2. Vendor is not a onetime vendor& payment Methoed updated in Vendor mast

  • Folder does not appear in keynote on iPad after syncing

    After syncing a keynote file through iTunes, it appears in iTunes on my mac book pro but the folder of imported files does not appear in keynote on my iPad. I have tried creating file names with no spaces and using .key suffix, no joy. any ideas? Tha

  • Session Management / Browser WindowID

    Hi, here is my problem: is it possible to gernate a session for each Browser-Window. I want to show different Content in BrowserWindows but i only can create one session. WinNT/98/XP handles a new BrowserWindow not as a seperate Process/Task. So the

  • Approver disappears

    Hi, I am working on version 5.00 and SRM server 550. I have an issue with approval preview. In contract and Shopping cart, after that approvers are approved, the approval list is getting disappeared. Is there any OSS message available for this? Anyon

  • What exactly does the "x" mean?

    Sometimes when I try to put a transition between two clips - the transition over one or both of the clips has a small "x" (I assume it means it won't take - which it doesn't) The length of the clip doesn't change it - I have lengthened and shortened