Estimate of Flashback logs to expect for my database

Hi all,
Please I need to know (roughly) the size of flahback logs to expect for my database.
My database is about 500G in size, grows at about 1% per month and I hope to keep flashback logs for 48 hrs.
If you currently use the flashback technology, let me know your database size, how many hours of flashback logs you keep and the size of your logs. If I get 2 or 3 responses, then I'll be able to make an intelligent guess for what my database flahback log size might be.
Regards
baffy

The value of the DB_FLASHBACK_RETENTION_TARGET parameter (1440
minutes in our example) determines how much flashback data the database should
retain in the form of flashback database logs in the flash recovery area. In order to
estimate the space you need to add to your flash recovery area for accommodating
the flashback database logs, first run the database for a while with the flashback
database feature turned on. Then run the following query:
SQL> select estimated_flashback_size, retention_target,
flashback_size from v$flashback_database_log;
ESTIMATED_FLASHBACK_SIZE RETENTION_TARGET FLASHBACK_SIZE
126418944 1440 152600576

Similar Messages

  • Side effect of SQl server upgrade from 2008 R2 to Server 2012, logical name of log file changed for one database

    I came to know that name has changed when I tried to shrink the file. Here is the error message I got:
    Shrink failed for LogFile "Tfs_TESTTFS_Log'. (Microsoft.SqlServer.Smo)
    Additonal information
    An exception occured while executing a Transact-SQL statement or batch.
    (Microsoft.SqlServer.COnnectionInfo)
    Could not locate file 'Tfs_TESTTFS_Log' for database 'Tfs_TESTTFS' in sys.database_files. The file 
    either does not exist, or was dropped. (Microsoft Sql Server, Error: 8995)
    This is test environment upgrade and I checked on production environment which is still on SQL 2008R2, shrink works fine.
    Please help.

    I did in place Upgrade.
    Before Upgrade
    Logical Names
    Database Name: Tfs_TESTTFS
    Database Log: Tfs_TESTTFS_Log
    After Upgrade
    Logical Names
    Database Name: Tfs_TESTTFS
    Database Log: TfsVersionControl_Log
    Thx

  • How to Force Flashback Logs to Grow

    Hi, I want to test RMAN and Oracle's handling of disk space over time as a database is used, specifically flashback logs.
    For this I want to increase the size of the flashback logs and see oracle delete the old flashback logs as the sizes grow. Is there a way to force the flashback logs to grow? Or at least an efficient way to do it? I know flashback logs are block level deltas of my datafiles but I don't want to modify the entire database to generate flashback data.
    Thanks

    Hi,
    Is there a way to force the flashback logs to grow? Or at least an efficient way to do it? I know flashback logs are block level deltas of my datafiles but I don't want to modify the entire database to generate flashback dataThe size of flashback logs generated by the database for a given time period can vary considerably, however, depending on the specific database workload.
    When flashback is in use, a before image of each block that is updated is copied to the flashback log ; this only needs to be done once since no matter how many times the same block is updated as, if we flash back, we only care about the initial contents of the block. The size of the before image will be the same as db_blocksize. So the key to understanding how much flashback data will be generated is not just how much redo is generated but how many physical blocks are updated. If more blocks are affected by database updates during a given interval, then more disk space is used by the flashback log data generated for that interval and you will find that the size of the flashback data may greatly exceed the size of the redo generated.
    Read it:
    CALCULATE THE VOLUME OF FLASHBACK LOG GENERATION [ID 761126.1]
    Regards,
    Levi Pereira

  • How to suppress Log Shipping alert for a specific database?

    I want to disable log shipping for a database temporarily.   I have disabled the backup job, copy job, and restore job created automatically when log shipping is configured for the database.  However, I cannot disable the Log Shipping alert
    job since there are other databases configured for log shipping.   How can I suppress Log Shipping alert for specific database?  I don't want to disable the log shipping for the primary database since it will delete all jobs and history
    related to the log shipping configuration at the primary, secondary and monitor server instances.

    Too late but this is possible. We just need to set the value threshold_alert_enabled to 0 in the system table msdb.dbo.log_shipping_monitor_primary on the primary server and in msdb.dbo.log_shipping_monitor_secondary on the secondary server.
    I just tested it out and it should work.
    To test this out, perform the below:-
    1. Run exec master.sys.sp_check_log_shipping_monitor_alert will show the same error message that thresholds have been crossed. This is the same script used in LSAlert job.
    Use something like the below command to edit:-
    2. Run the below to change the values:
    update msdb.dbo.log_shipping_monitor_primary
    set threshold_alert_enabled = 0
    where primary_database = 'XYZ'
    Run this for all databases that needs to be excluded from monitoring.
    3. Run the script in step 1 again and it should run now. 
    Please mark the answer as helpful if i have answered your query. Thanks and Regards, Kartar Rana

  • 11g block recover doesn't look for flashback logs

    dear all
    could you please let me know the reason of why rman doesn't uses flashback logs for block recovery? Here's the thread I've opened in ddatabase-general
    Re: 11g block recover doesn't look for flashback logs
    thanks
    john

    dear all
    could you please let me know the reason of why rman doesn't uses flashback logs for block recovery? Here's the thread I've opened in ddatabase-general
    Re: 11g block recover doesn't look for flashback logs
    thanks
    john

  • Reduce flashback log - disable flashback for a table

    Hi,
    We have a table which we use only for logging. This information is not essential but there is a lot (given our scale of data :p ) of data (5.000.000 by day)
    So we have put the table in nologging (reduce redo => archived),
    the insert are /*+ append*/ (reduce undo)
    Now, we want to reduce the flashback logs?
    Is there a way to disable flashback for a given table ?
    thanks
    Nicolas

    Hi,
    first i would use:
    alter table tablename nologging;
    So you won't generate a lot of redo.
    http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_3001.htm#CJAHHIBI
    I'm not sure you can disable flashback at table level.
    You can do that on tbs level.
    Hope this helped..
    Bye
    Acr

  • DR server flashback error : Unable to allocate flashback log

    Hi,
    I have a Standby Database and the DR log synchronization with Primary Database was interrupted due to below errors:
    Unable to allocate flashback log of 1946 blocks from
    current recovery area of size 2147483648 bytes.
    Recovery Writer (RVWR) is stuck until more space is
    available in the recovery area.
    Unable to write Flashback database log data because the
    recovery area is full, presence of a guaranteed
    restore point and no reusable flashback logs.
    Use ALTER SYSTEM SET db_recovery_file_dest_size command
    to add space. DO NOT manually remove flashback log files
    to create space.
    --> On DR server
    SQL> SELECT DATABASE_ROLE, DB_UNIQUE_NAME INSTANCE, OPEN_MODE PROTECTION_MODE, PROTECTION_LEVEL, SWITCHOVER_STATUS FROM V$DATABASE;
    DATABASE_ROLE INSTANCE PROTECTION PROTECTION_LEVEL
    SWITCHOVER_STATUS
    PHYSICAL STANDBY A80 MOUNTED MAXIMUM PERFORMANCE
    SESSIONS ACTIVE
    SQL> select process, status, thread#, sequence#, block#, blocks from v$managed_standby;
    PROCESS STATUS THREAD# SEQUENCE# BLOCK# BLOCKS
    ARCH CONNECTED 0 0 0 0
    ARCH CONNECTED 0 0 0 0
    MRP0 APPLYING_LOG 1 29118 125049 186723
    RFS IDLE 0 0 0 0
    RFS IDLE 0 0 0 0
    RFS IDLE 0 0 0 0
    6 rows selected.
    --> Alert log
    Sat Mar 17 04:51:00 2012
    RFS[606]: Archived Log: 'L:\ORACLE\A80\ORAARCH\A80ARCH\ARC29222_0681431456.001'
    Primary database is in MAXIMUM PERFORMANCE mode
    Sat Mar 17 05:51:07 2012
    RFS[606]: Archived Log: 'L:\ORACLE\A80\ORAARCH\A80ARCH\ARC29223_0681431456.001'
    Primary database is in MAXIMUM PERFORMANCE mode
    Sat Mar 17 06:51:04 2012
    RFS[606]: Archived Log: 'L:\ORACLE\A80\ORAARCH\A80ARCH\ARC29224_0681431456.001'
    Primary database is in MAXIMUM PERFORMANCE mode
    Sat Mar 17 08:50:40 2012
    RFS[606]: Archived Log: 'L:\ORACLE\A80\ORAARCH\A80ARCH\ARC29225_0681431456.001'
    Sat Mar 17 12:28:30 2012
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL
    I did a "ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL" to stop the log shipping on DR server but the command is hanging.
    I also tried freeing up the disk space in my flashback drive but I think it won't help as indicated in the error message:
    "DO NOT manually remove flashback log files to create space".
    What is the best way to set the DR server back to normal operation?
    I do not need the flashback logs and will disable the flashback once this is rectified.
    This is Oracle 10.2.0.4 Physical Standby using Oracle Dataguard.
    Thanks a lot!

    <smacking forehead on the table>
    Bloody hell! How the heck I missed that darn "B" ? I guess, time to get some sleep and after that some coffee.Please don't do ;-)
    When knowledge is in extreme level, there is possibilities to miss small and small things some time.
    @OP,
    Here some practice
    sys@ORCL> show parameter db_reco
    NAME                                 TYPE        VALUE
    db_recovery_file_dest                string      C:\Oracle\flash_recovery_area
    db_recovery_file_dest_size           big integer 3852M
    sys@ORCL> alter system set db_recovery_file_dest_size=3900mb scope=both;
    alter system set db_recovery_file_dest_size=3900mb scope=both
    ERROR at line 1:
    ORA-02065: illegal option for ALTER SYSTEM
    sys@ORCL> alter system set db_recovery_file_dest_size=4gb scope=both;
    alter system set db_recovery_file_dest_size=4gb scope=both
    ERROR at line 1:
    ORA-02065: illegal option for ALTER SYSTEM
    sys@ORCL>  alter system set db_recovery_file_dest_size=3900m scope=both;
    System altered.
    sys@ORCL> alter system set db_recovery_file_dest_size=4g scope=both;
    System altered.
    sys@ORCL> show parameter db_reco
    NAME                                 TYPE        VALUE
    db_recovery_file_dest                string      C:\Oracle\flash_recovery_area
    db_recovery_file_dest_size           big integer 4G
    sys@ORCL>

  • Oracle not using space occupied by flashback logs

    Hi,
    oracle 10g R2 10.2.0.1 on RHEL 4 64-bits.
    my db_flashback_retention_target is set to 1440 and my db_recover_file_dest_size is set to 40G.
    flashback logs are occupying about 36G so whenever rman tries to backup the database, it breaks saying it cannot reclaim enough space from the 40G limit.
    when checking the flashback logs,i saw that the DB is keeping 3 day old logs. should it not reclaim the space occupied by these logs and delete them?

    Others have reported similar issues: http://www.wayneadamsconsulting.com/
    >
    One thing that I have not seen the database do, however, is delete reclaimable flashback logs in order to make room for a backup. If there is not enough free space in you FRA for a backup but there is plenty of space used by relcaimable flashback logs, RMAN and the database will not delete flashback logs to free up room in the FRA for the backup. This seems like a fairly large gap in the flashback log functionality, but hopefully Oracle will handle it in a future release.
    >
    See MOS note: Space issue in Flash Recovery Area( FRA ) [ID 829755.1] .
    Note also that 10.2.0.1 is a old 10.2 release and that you could consider upgrading to 10.2.0.4.

  • Remove the flashback logs in EBS envoirnment.

    Hi,
    In my production database(primary) machine flashback is ON.
    So, logs are creating in following directory:
    /d01/silprod/SILP/db/apps_st/data/archives/SILP01_SER/flashback
    In my physical standby database flashback is OFF.
    So, My question is that:
    Can I remove the flashback logs from production safely?
    Thanks.

    Hi,
    How to identified that which archive logs no longer needed and can delete, and how to reclaim the archive space?
    Is below steps are correct?
    Archive location: /d01/silprod/SILP/db/apps_st/data/archives/SILP01_SER/archivelog
    Archive files name like: o1_mf_1_894_5jpkly8k_.arc -------------> Sequence#=894
    Archive Size occupied:
    > du -sh archivelog/ ------------> 2.7G archivelog/
    STEP#1:
    SQL> SELECT THREAD#, SEQUENCE# FROM V$LOG WHERE STATUS='CURRENT'; -----------> RESULT: THREAD#=1 AND SEQ$= 894
    SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;---------------->DONE
    SQL> SELECT THREAD#, SEQUENCE# FROM V$LOG WHERE STATUS='CURRENT'; -----------> RESULT: THREAD#=1 AND SEQ$= 895
    Confirm the current file have been applied to the standby database with the below query
    SQL> SELECT MAX(SEQUENCE#) FROM V$LOG_HISTORY; -----------------> RESULT: THREAD#=1 AND SEQ$= 894
    Step#2:(Memory)
    > delete unwanted archive log files from disk (rm, del commands)---------> all archives files deleted expected of PROD_1_894.arc
    RMAN> crosscheck archivelog all; - marks the controlfile that the archives have been deleted
    RMAN> delete expired archivelog all; - deletes the log entries identified above.
    But, How to identified that which flashback files no longer needed and can delete, and how to reclaim the flashback space?
    Flashback location: /d01/silprod/SILP/db/apps_st/data/archives/SILP01_SER/flashback
    Flashback files name like: o1_mf_5jlc8gb0_.flb, o1_mf_5jlcb2bv_.flb etc ------------> how to identified which file(File Name has no sequence#) should I delete?
    Flashback Size occupied:
    > du -sh flashback/ ------------> 3.5G flashback/

  • Delete flashback log dynamically.

    i want to delete flashback log dynamically.
    suppose today is 1st feb while running shell script it will remove flashback log 31stjan ...
    i have set retention policy 1 days.
    following is the my sh script
    =====================
    #!/bin/sh
    # Daily Backup
    . oraenv.oratest
    export NLS_DATE_FORMAT="Dy DD-Mon-YYYY HH24:MI:SS"
    LOG_DIR="/var/log/oracle"
    LOG_FILE="$LOG_DIR/$ORACLE_SID-daily-backup.log"
    EMAIL_TO="[email protected]"
    echo -e "\nBackup Commenced: " $(date) "\n"
    pushd $HOME/rman
    rman target / cmdfile="daily-backup.rman" log="$LOG_FILE" append
    retcode=$?
    if [ "$retcode" -ne "0" ]; then
    echo -e "\n***\n*** BACKUP FAILURE: Database $ORACLE_SID on $HOSTNAME \n***"
    mail -s "BACKUP FAILURE: Database $ORACLE_SID on $HOSTNAME" $EMAIL_TO < $LOG_FILE
    exit 1
    else
    mail -s "INFO: Backup success: $ORACLE_SID on $HOSTNAME" $EMAIL_TO << EOF
    Database $ORACLE_SID on $HOSTNAME backed up successfully.
    EOF
    fi
    popd
    echo -e "\nBackup Completed: " $(date) "\n"
    rman script
    run {
    # Remove any obsolete files prior to backup
    crosscheck backupset;
    crosscheck copy;
    delete noprompt obsolete;
    delete noprompt expired backup;
    delete noprompt expired copy;
    # Incremental backup and update of current image copy
    allocate channel oem_disk_backup device type disk;
    recover copy of database with tag 'ORA\$OEM_LEVEL_0';
    delete noprompt obsolete;
    delete noprompt expired backup;
    delete noprompt expired copy;
    backup incremental level 1 cumulative copies=1 for recover of copy with tag 'ORA\$OEM_LEVEL_0' database;
    # Following backup - remove any now-obsolete files
    delete noprompt obsolete;
    delete noprompt expired backup;
    delete noprompt expired copy;

    RMAN cannot delete flashback logs, these are maintained automatically according to parameter 'db_flashback_retention_target'. Don't confuse FLASHBACK DATABASE with RMAN point-in-time recovery.
    RMAN backups become obsolete as soon as no longer needed to meet the defined retention policy, 'delete obsolete' will never delete flashback logs.

  • Flashback Logs Location

    Well, I am confused whether Oracle Flashback Technology uses Undo Tablespace or Flash Recovery Area. I was going through http://www.oracle.com/technology/deploy/availability/htdocs/Flashback_Overview.htm, and the page mentions both Undo Tablespace and Flash Recovery Area.
    Can someone please clarify.
    Thanks

    furqan_sindhu wrote:
    Well, I am confused whether Oracle Flashback Technology uses Undo Tablespace or Flash Recovery Area. Completely wrong thought process. Oracle Flashback Technology is based on the Undo data which is stored Undo Tablespace. The Flash Recovery Area is nothing but a destination where the Flashback Logs are stored but they are used for a different purpose, which is for sending the complete database back into the past. So comparing both Flashback and FRA is actually a wrong thing to do.
    I was going through http://www.oracle.com/technology/deploy/availability/htdocs/Flashback_Overview.htm, and the page mentions both Undo >Tablespace and Flash Recovery Area.
    Read my reply above. Flashback is based on the Undo data which is not stored in the FRA but in the Undo tablespace. The FRA is used to store the backup files, archive files and a sepcial set of files called flashback logs (which I mentioned above) . Don't compare both and a suggestion, don't read white papers since they contain snippets of information only. Read oracle docs since they contain the complete stuff.
    HTH
    Aman....

  • During EXPDP .flb (Flashback logs) generation is very High

    hi,
    my database is in flashback log mode and i created a gurented restore point to take back my DB to restore point..in this status i start logical backup by EXPDP of a schema and during expdp lot of .flb logs were generated..
    what is the concern of this EXPDP with the huge generation of .flb log ...plz guide
    DB Version is 10g(10.2.0.4)
    regards,

    Hi,
    As per my undestanding,
    1) Datapump uses "flashback query."
    2)Flashback query does not use flashback logs. It uses UNDO.
    3)Flashback Query uses Oracle's multiversion read-consistency capabilities to restore data by applying undo as needed. Oracle Database 10g automatically tunes a parameter called the undo retention period. The undo retention period indicates the amount of time that must pass before old undo information—that is, undo information for committed transactions—can be overwritten. The database collects usage statistics and tunes the undo retention period based on these statistics and on undo tablespace size
    Your expdp job has nothing to do with flashback log.
    Best regards,
    Rafi.
    http://rafioracledba.blogspot.com

  • Excessive flashback log generates with select statement

    Hi everyone;
    We have some extractions taken from a "flashback on" database.
    Extractions are just select statements but when they are run, database produces excessive flashback logs.
    What may be the reason database produce flashback logs with just select statements?
    (It's certain that there are no insert-update-delete operations)
    Version: 10.2.0.4.3
    Thanks...

    Do you do heavy update/delete before you select the statements ?
    I am not very sure if delayed block cleanout also have the same effect on flashback logs but the output below is leading me to think that way
    HR@ORACOS> select * from v$flashback_database_stat;
    BEGIN_TIME        END_TIME          FLASHBACK_DATA    DB_DATA  REDO_DATA ESTIMATED_FLASHBACK_SIZE
    20100527 15:32:53 20100527 15:50:16      875266048 1207132160 2038729728                        0
    20100527 14:32:50 20100527 15:32:53      248160256  127295488  450139648               1.3215E+10
    20100527 13:32:48 20100527 14:32:50       10452992   15646720    4400640               1.5549E+10
    20100527 12:32:43 20100527 13:32:48      745693184  948461568 1311620608               2.2789E+10
    20100527 11:25:56 20100527 12:32:43     1262026752 1984741376 2358546432               2.7212E+10
    HR@ORACOS> set autotrace traceonly statistics
    HR@ORACOS>  update base_table_np set y='INVALID';
    commit;
    4021808 rows updated.
    Statistics
           2512  recursive calls
        8341430  db block gets
        4069140  consistent gets
         120569  physical reads
    1908471980  redo size
            848  bytes sent via SQL*Net to client
            793  bytes received via SQL*Net from client
              3  SQL*Net roundtrips to/from client
              1  sorts (memory)
              0  sorts (disk)
        4021808  rows processed
    HR@ORACOS> set autotrace off;
    HR@ORACOS> select * from v$flashback_database_stat; 
    HR@ORACOS>
    BEGIN_TIME        END_TIME          FLASHBACK_DATA    DB_DATA  REDO_DATA ESTIMATED_FLASHBACK_SIZE
    20100527 15:32:53 20100527 16:00:36     1236664320 2021974016 4019910656                        0
    20100527 14:32:50 20100527 15:32:53      248160256  127295488  450139648               1.3215E+10
    20100527 13:32:48 20100527 14:32:50       10452992   15646720    4400640               1.5549E+10
    20100527 12:32:43 20100527 13:32:48      745693184  948461568 1311620608               2.2789E+10
    20100527 11:25:56 20100527 12:32:43     1262026752 1984741376 2358546432               2.7212E+10
    HR@ORACOS> set autotrace traceonly statistics
    HR@ORACOS> select * from base_table_np;
    4021808 rows selected.
    Statistics
            139  recursive calls
              0  db block gets
          53908  consistent gets
           4404  physical reads
        1652384  redo size                                                  ------->delayed block cleanout effect
      175008833  bytes sent via SQL*Net to client
          88996  bytes received via SQL*Net from client
           8045  SQL*Net roundtrips to/from client
              4  sorts (memory)
              0  sorts (disk)
        4021808  rows processed
    HR@ORACOS> set autotrace off
    HR@ORACOS> select * from v$flashback_database_stat;    ----flashback data size increases
    HR@ORACOS>
    BEGIN_TIME        END_TIME          FLASHBACK_DATA    DB_DATA  REDO_DATA ESTIMATED_FLASHBACK_SIZE
    20100527 15:32:53 20100527 16:01:11     1305264128 2054594560 4021728256                        0
    20100527 14:32:50 20100527 15:32:53      248160256  127295488  450139648               1.3215E+10
    20100527 13:32:48 20100527 14:32:50       10452992   15646720    4400640               1.5549E+10
    20100527 12:32:43 20100527 13:32:48      745693184  948461568 1311620608               2.2789E+10
    20100527 11:25:56 20100527 12:32:43     1262026752 1984741376 2358546432               2.7212E+10Basically what I do is I update a 4 million table big redo generated with flashback logs
    When I do select after the update I still see the redo generated because of delayed block cleanout but what I also see is the slight increase in flashback data size (check the first row of flashback_database_stat) which suits what you asking for. Select statement generates flashback log
    Tested on 11.2.0.1 with single active session on the db
    Coskan Gundogar
    Blog: http://coskan.wordpress.com
    Twitter: http://www.twitter.com/coskan
    Linkedin: http://uk.linkedin.com/in/coskan
    ---------

  • Flashback log purge

    Hi
    I`ve set db_recovery_file_dest_size to 20m and flashback retention target to 60mins.
    As far as I know flashback logs are automatically deleted when the fra is filled up.
    I notice that there are 4 flashback logs and they are never deleted in the last two days.
    What is the reason for that ?
    log_1.287.760141739
    log_2.281.759973635
    log_2.285.760141745
    log_3.298.760145161

    It only possible it will reuse it.
    Most of the time it will create a new log from my experience.
    It all depends on your settings.
    I watch v$flash_recovery_area_usage fairly close on my systems and the flashback logs are a fairly small piece of my FRA.
    Archive and RMAN backups use up most of the space. For the most part I let Oracle just handle the flashback logs.
    Best Regards
    mseberg
    Query I like for this :
    SELECT
      ROUND((A.SPACE_LIMIT / 1024 / 1024 / 1024), 2) AS FLASH_IN_GB,
      ROUND((A.SPACE_USED / 1024 / 1024 / 1024), 2) AS FLASH_USED_IN_GB,
      ROUND((A.SPACE_RECLAIMABLE / 1024 / 1024 / 1024), 2) AS FLASH_RECLAIMABLE_GB,
      SUM(B.PERCENT_SPACE_USED)  AS PERCENT_OF_SPACE_USED
    FROM
      V$RECOVERY_FILE_DEST A,
      V$FLASH_RECOVERY_AREA_USAGE B
    GROUP BY
      SPACE_LIMIT,
      SPACE_USED ,
      SPACE_RECLAIMABLE ;And
    column FILE_TYPE format a20
    select * from v$flash_recovery_area_usage;Edited by: mseberg on Aug 24, 2011 9:01 PM

  • Automatically log back in for a given period of time

    I just started to work on web and have the following issue:
    We want some (mobile) users to be able to automatically log back in for a given period of time. It is not difficult to set cookie (valid user information without clear text) on the mobile device. For now the question is how we can log in using this cookie info.
    Web application uses "j_security_check", "j_security_check" checks the user/password.
    Question is how we can autologin using cookie information. Thanks guys!

    it is not problem to check cookie on exists and valid. Problem is 'where' where can I do it using 'j_security_check'

Maybe you are looking for