Need definition of table sys.user$
I have looked webwide, did search here... no luck....
SQL> set pages 500
SQL> set long 5000
SQL> select text from dba_views
2 where VIEW_NAME = 'DBA_USERS';
TEXT
select u.name, u.user#, u.password,
m.status,
decode(u.astatus, 4, u.ltime,
5, u.ltime,
6, u.ltime,
8, u.ltime,
9, u.ltime,
10, u.ltime, to_date(NULL)),
decode(u.astatus,
1, u.exptime,
2, u.exptime,
5, u.exptime,
6, u.exptime,
9, u.exptime,
10, u.exptime,
decode(u.ptime, '', to_date(NULL),
decode(pr.limit#, 2147483647, to_date(NULL),
decode(pr.limit#, 0,
decode(dp.limit#, 2147483647, to_date(NULL), u.ptime +
dp.limit#/86400),
u.ptime + pr.limit#/86400)))),
dts.name, tts.name, u.ctime, p.name,
nvl(cgm.consumer_group, 'DEFAULT_CONSUMER_GROUP'),
u.ext_username
from sys.user$ u left outer join sys.resource_group_mapping$ cgm
on (cgm.attribute = 'ORACLE_USER' and cgm.status = 'ACTIVE' and
cgm.value = u.name),
sys.ts$ dts, sys.ts$ tts, sys.profname$ p,
sys.user_astatus_map m, sys.profile$ pr, sys.profile$ dp
where u.datats# = dts.ts#
and u.resource$ = p.profile#
and u.tempts# = tts.ts#
and u.astatus = m.status#
and u.type# = 1
and u.resource$ = pr.profile#
and dp.profile# = 0
and dp.type#=1
and dp.resource#=1
and pr.type# = 1
and pr.resource# = 1
SQL> desc dba_users
Name Null? Type
USERNAME NOT NULL VARCHAR2(30)
USER_ID NOT NULL NUMBER
PASSWORD VARCHAR2(30)
ACCOUNT_STATUS NOT NULL VARCHAR2(32)
LOCK_DATE DATE
EXPIRY_DATE DATE
DEFAULT_TABLESPACE NOT NULL VARCHAR2(30)
TEMPORARY_TABLESPACE NOT NULL VARCHAR2(30)
CREATED NOT NULL DATE
PROFILE NOT NULL VARCHAR2(30)
INITIAL_RSRC_CONSUMER_GROUP VARCHAR2(30)
EXTERNAL_NAME VARCHAR2(4000)
SQL>
[pre]
Similar Messages
-
Error in renaming the table from SYS user
Hi
I am in Schema by name jc
and I have a table by name tab1
now i logged as sys user
then I give a command
rename jc.tab1 to tab2 ;
getting the following error
rename jc.tab1 to tab2
ERROR at line 1:
ORA-01765: specifying table's owner name is not allowed
Query is
Is it notpossible to rename a table of other schema by logging as sys user ?
is there any other alternate method of doing so??
Thanks and Regards
JCSorry Guido,
I have not stolen anything from anywhere :)
All are mine ...I have created some normal users and some users with DBA privileges....
I use this schemas for testing purpose....
Also if I give command like from SYS user
Alter table jc.tab1 rename to tab2 ;
It will create tab2 in jc schema only and not in SYS schema.
So there is no question of poluting the SYS schema.
Also whatever I ask in this forum is a part of my application related,
I never give the entire program, which may be useless for others and time taking in understanding.
I just simulate whatever I require in as simplae format as I can
The person who is very perfect in this forumn can find such queries rubbish. But in learning process no question is rubbish, but there can be a rubbish answer to every intelligent question too... :)
Regards
JC -
Restricting SYS user to View other schema's Tables
Hi All,
Oracle DB Version - 10R2
O/S - UNIX
Could anyone share docs or steps to prevent SYS user to view other schema's tables;
Thanks,
DeepakDear Deepak_DBA,
If you revoke every privilege and role from the SYS user i presume the SYS will continue to select any table from the relevant schema. SYS is a special user and not like the others.
For instance if you want to revoke the SYSDBA and the SYSOPER from the SYS user;
SQL> revoke sysdba, sysoper from sys;
revoke sysdba, sysoper from sys
ERROR at line 1:
ORA-01998: REVOKE failed: user SYS always has SYSOPER and SYSDBAI have never seen such documentation that describes how to revoke everything or at least the SELECT ANY TABLE privilege from the SYS user.
Please see more about the SYS and the SYSTEM users;
SYS and SYSTEM Users;
http://download.oracle.com/docs/cd/E11882_01/server.112/e10897/users_secure.htm#ADMQS12003
Regards.
Ogan -
I have the following problem:
I do a full import from a 9.2.0.6 db in to a 10.2.0.3 db. Some of the package bodies will not compile. One of them produces
104/5 PL/SQL: SQL Statement ignored
108/11 PL/SQL: ORA-00942: table or view does not exist
That statement does a select from sys.seq$ s, sys.obj$ o, sys.user$ u. The package is owned by the user boo. If I try to run the select statement from sql plus as sys it's executed ok.
I thought that a full import would include the granted rights for all the users, and therefore assume that its not a grant that is missing. Is there a parameter that allows other users access to select from these tables? (I do not have access to the parameter file of the original base, so I can not go and check).You must grant user "boo" the required privileges because they have not been exported: see Re: Missing grant with full export/full import.
-
Problem accessing sys table from user's schema
Hi,
I had a store procedure whose owner is say user1.Inside of that store procedure i am executing the following select query.
select * from sys.all_coloumns where owner = 'USER1';
This is resulting me "no data found".
When i am executing the same select query from SQL*plus it is giving me the proper output.
I think this is happening because of less systeme privileges/role assigned to schema USER1.
Can you please suggest which priviledges i need to grant, so that my proc. will work fine.User1 needs select rights on sys.all_columns directly.
Not via the DBA role. -
Query execution is faster - as SYS user vs. application user in 11.1.07
In +11.1.0.7+ database, we have noticed execution of an application process as SYS user is faster than the application user. To quantify this execution time was 2 hours as application user and same process when executed as SYS user completed in 1 hour.
We ran tracing for this process and tkprof output showed follwoing:
OVERALL TOTALS FOR ALL RECURSIVE STATEMENTS:
_call count cpu elapsed disk query current rows_
Execute 3705586 2440.49 *4294.54* 293602 21835223 23300886 3801288 <<< ==== SYS
Execute 3703285 6356.69 *8576.50* 303175 21785419 23378086 3801291 <<< ==== Application user
We have SR open with Oracle, but thought if some one knows about this issue would be great.
Edited by: dhyani on Aug 17, 2010 3:16 PMWhat about the "Predicate Information" section of the execution plans - were those exactly the same? Did you use AUTOTRACE, EXPLAIN PLAN FOR, or the method that I showed to retrieve the execution plans? Where the SQL_ID and CHILD_NUMBERS displayed exactly the same? Is the STATISTIC_LEVEL set to TYPICAL for both sessions? You can check the setting in SQL*Plus like this:
SQL> SHOW PARAMETER STATISTICS_LEVEL
NAME TYPE VALUE
statistics_level string typicalAs a demonstration, I will change the value at the session level and then change the setting back:
SQL> ALTER SESSION SET STATISTICS_LEVEL='ALL';
SQL> SHOW PARAMETER STATISTICS_LEVEL
NAME TYPE VALUE
statistics_level string ALL
SQL> ALTER SESSION SET STATISTICS_LEVEL='TYPICAL';If the above does not show a difference, you will need to capture a 10046 trace at either level 8 or level 12 for both sessions and compare the wait events and the STAT lines in the 10046 trace to see where the additional time is being spent. Reference these two blog articles for the 10046 trace:
http://hoopercharles.wordpress.com/2009/12/01/10046-extended-sql-trace-interpretation/
http://hoopercharles.wordpress.com/2010/01/26/10046-extended-sql-trace-interpretation-2/
Keep in mind that the goal is to not change anything until we understand the problem better. Maybe, just maybe, someone created a table (or view) or two in the SYS schema (or used a table/view name that matched a SYS owned object), in a normal user's schema, or there are synonyms pointing to different tables. So, it probably would be a good idea to verify that the results are exactly the same when the SYS user executes the SQL statement and a normal user executes the SQL statement.
Charles Hooper
Co-author of "Expert Oracle Practices: Oracle Database Administration from the Oak Table"
http://hoopercharles.wordpress.com/
IT Manager/Oracle DBA
K&M Machine-Fabricating, Inc. -
ORA-01653: unable to extend table SYS.ARGUMENT$ by 13 in tablespace SYSTEM
I have created new database manually.
when I am @?/rdbms/admin/catproc.sql putting this sql to run.
for sometime it says created, granted. but after some part it give me the error.
ORA-01653: unable to extend table SYS.ARGUMENT$ by 13 in tablespace SYSTEM
Please help me on this.
Thank you in advance.Your query does not provide SYSTEM tablespace size. It provides list of tablespaces. And it can't be a complete list since I do not see UNDO and TEMP tablespaces. In any case, based on the output you did not create any user tablespaces, so all tables you are creating went to SYSTEM tablespace and eventually you ran out of space. You need to create user tablespaces if you do not have any. You need to change non-system users and set default tablespace to non-system tablespaces. Even if you do have non-system tablespaces, tables will be created in user default tablespace unless you explicitly specify one. You need to move existing user tables/indexes to non-system tablespaces.
SY.
P.S. In order to get SYSTEM tablespace size you need to run:
select sum(bytes)/1024/1024 tablespace_size_in_mb
from dba_data_files
where tablespace_name = 'SYSTEM'; -
Updating SYS.USER password field across databases
Hello -
I am trying to update the password field across four SYS.USER tables in four different databases. All databases have the same host name/IP address, but each has a distinct service_name and password.
A web application updates the inital USER table (password field). But three other databases are connected to the website in question and the USER table for each must match up with the initial USER table that has been updated.
Is a trigger best, or a stored procedure, or replication, or other? Or is there a way to link tables? How do I include the connection info (service name and db password) in the code that updates the table in a given database?
I hope that I am simply making this more complicated than it needs to be. Either way, any help is greatly appreciated.
Annyep,
I faced this behavior too, and the only way to fix it, is forcing the user to re-type the password. -
URGENT NEED HELP : JOURNALING TABLES AND TRIGGERS GENERATION
Hi
I need generate journaling tables for any tables to audit the update, delete statements executed for the users. I captured an existant schema, then and I change the derfiniton of the target tables, setting the value of Journaling to "Server".
But, when I generate the DDL statements, the triggers of the journaling tables don't appears in the sql file.
¿What is the error?
I thing that Designer generates the triggers and the journal tables, ¿It's true?
Thanks in advance.
XaviYou have to use the "Generate Table API" menu option. This will generate the "journalling" triggers.
HTH
Roel -
SYS user connects at database level, is it correct?
My senior colleague has given me following information about the sys user. I want to know, is it correct?
Since SYS user connects at the database level, therefore, on killing the active session of the SYS user,only the current statement is cancelled. The database session does not disconnect. Instead it continues to run the remaining statements in the script file in case we are running a script file containing a lot of SQL statements.
MoazzamMoazzam wrote:
My senior colleague has given me following information about the sys user. I want to know, is it correct?
Since SYS user connects at the database level, therefore, on killing the active session of the SYS user,only the current statement is cancelled. The database session does not disconnect. Instead it continues to run the remaining statements in the script file in case we are running a script file containing a lot of SQL statements.Running a SQL script very likely means SQL*Plus is used. One of two types of Oracle sessions will be created via sqlplus. A dedicated session. Or a shared server session.
A dedicated session can also be local (sqlplus connects "directly" to the dedicated server process), or remote (sqlplus connects via tcp/ip to the dedicated server process).
A server session is usually "killed" using the alter system kill session command. Despite the differences between shared and dedicated server connections, the end result is the same. The session terminates abnormally (session UGA will be released, session will be cleaned up, rolled back, etc) - and the session ceases to exist.
So irrespective of how that sqlplus session runs that script - the session, when killed, will cause a sqlplus failure. And no subsequent script commands would be executed by that Oracle session.
What can happen is that sqlplus continues running, continues reading the script, and continues submitting commands to be executed. However, with the server session killed, there is no server process to service the commands submitted by the sqlplus client. In this case, sqlplus will throw the error "+SP2-0640: Not connected+" after each of the commands it tries to execute after the server session was killed.
The only time when sqlplus will be able to continue is when the session is not killed, but interrupted. The Oracle Call Interface (OCI) supports a OCIBreak() call - allowing the client to interrupt-and-abort the request that its server session is currently executing.
For example, sqlplus sends a OCIBreak() while it waits for a server response (e.g. waiting for the answer to a SQL select query), when the user presses Ctrl-Break to abort that request.
In this case, the session still exists - and the client can issue a new request that the session will service. But an OCIBreak() cannot be triggered (to my knowledge) externally from another Oracle session. You need to send the client process a "break request" (like a Ctrl-Break keystroke) in order to trigger that client process to make an OCIBreak() call to Oracle and interrupt its server process. -
Security about SYSTEM and SYS users
Guys,
Just curiosity,
1) What happens if I logged with a user that have DBA role or DROP USER privilege and to drop the SYSTEM or SYS user ? This is possible ? If yes, how can protect them ?
2) I know that the SYS is owner of the dictionary and catalog, but what is the objective of the SYSTEM user to exists ?
Tank you.Hi,
As you say, SYS is the owner of the database and the owner of the data dictionary.
But SYS has the SYSDBA privilege which SYSTEM doesn't. This makes it possible for SYS to become a very very powerful user. In addition, never ever create objects in the SYS schema. SYSTEM is a privileged administration user, and typically owns Oracle provided tables other than the dictionary.
Making a test.
oracle@linux:~> sqlplus
SQL*Plus: Release 9.2.0.4.0 - Production on Thu Dec 7 08:55:51 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Enter user-name: / as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 126948772 bytes
Fixed Size 452004 bytes
Variable Size 104857600 bytes
Database Buffers 20971520 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.
As Frederic showed
SQL> drop user sys cascade;
drop user sys cascade
ERROR at line 1:
ORA-01031: insufficient privileges
SQL> drop user system cascade;
User dropped.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 126948772 bytes
Fixed Size 452004 bytes
Variable Size 104857600 bytes
Database Buffers 20971520 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.
SQL>
If you like to protect it, you can do this below:
eg:
create table secured_objects(object_name varchar2(30));
Table created.
SQL> insert into secured_objects values ('SYSTEM');
1 row created.
SQL> select * from secured_objects;
OBJECT_NAME
SYSTEM
1 rows selected.
create or replace trigger check_beforedrop
before drop on database
declare
oname char(30);
begin
select object_name into oname from secured_objects
where upper(object_name)=ora_dict_obj_name;
if sql%found then
RAISE_APPLICATION_ERROR(-20001,'You have not permission to drop this object.');
end if;
exception
when no_data_found
then dbms_output.put_line('This object was dropped.');
end;
SQL> drop user system cascade;
drop user system
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-20001: You have not permission to drop this object.
ORA-06512: at line 7
Reference: http://www.adp-gmbh.ch/ora/misc/sys_system_internal.html
Cheers -
What is the version of grant alter table, drop table to user in Oracle 10g?
Hi,
Oracle support "grant alter table and drop table" before, but I get the "invalid privilege" error in Oracle 10g. Oracle 10g have the "DROP ANY TABLE" and "Alter any table". Is these two means can drop and alter tables belonging to other users? How do I grant the total control (CRUD) of tables in the owner's schema to the owner in Oracle10g?
Thanks,
JiangCREATE TABLE privilege grants complete control on owner's tables :
SYS@db102 SQL> create user test01 identified by test01;
User created.
SYS@db102 SQL> grant create session, create table to test01;
Grant succeeded.
SYS@db102 SQL> alter user test01 quota unlimited on users;
User altered.
SYS@db102 SQL> conn test01/test01
Connected.
TEST01@db102 SQL> create table test(a number);
Table created.
TEST01@db102 SQL> alter table test add(b varchar2(100));
Table altered.
TEST01@db102 SQL> drop table test purge;
Table dropped.
TEST01@db102 SQL> -
Table contain user name and tcode
Dear Experts,
Can you tell me which Table contained user name and tcode field?
Thanks and Best regards,
wilsonYou need to be even more carefull with parameter transactions.
If SU24 is not maintained for them, PFCG will pull the proposals from the core transaction (via which the parameters are used in the skip screen feature...). If the core transaction has authority proposals for S_TCODE, then you will get those tcodes and their proposals as well.
A carefull choice of menu objects (not only limited to Tcodes), taking heed of SU24 defaults and tuning it to meet your needs is the key. But it requires organizational discipline and good training, otherwise rather dont use it for anything other than important objects which you want to control manually only, even if your business roles are a mess.
You can also restrict the authorizations of the security admins for example (as unpopular as that may sound... to segregate authorization concept development (SU24 etc), role building development (PFCG etc) and user administration (SU01 etc). Object S_USER_TCD also has a field called TCD...
There are also other objects (as Dipanjan has pointed out) which have TCD as a field of an object which is not S_TCODE. In addition to I_TCODE, Q_TCODE, P_TCODE, see also S_IDOCMONI for example.
To be honest I have given up on trying to find them all
The easiest solution is to use the menu and maintain SU24 when the transaction is configured or the application is developed and tested. That is what SAP does as well in SU22. It is more work upfront, but more sustainable in the long run.
If your users (and auditors) only see the menu (and use the SUIM --> Executable transactions) options, then you can get away with it in the short or even medium term. Latest when someone else need to maintain the roles they will hate it...
My 2 cents,
Julius -
Tables for User Details & User Tcode Details.
Hi all,
I'm need of the tables as per the criteria given below.
1. User List
2. Tcodes associated with the User.
Also let me know if there is any Standard Report that returns list of users with tcodes associated with them.
Can anyone help me out?
Thank You.Hi Shrilath,
You can use tcode SUIM - (User info system- most user related report can be found here).
SAP has provided you with the SUIM tool for these kind of generic requirement, so avoid using this than creating your own custom program(no reinvention of the WHEEL).
As about you requirement, execute tcode SUIM
Execute the selection "Executable for User" and Enter user name
You will be listed with all the tcode the user can execute in the system.
As about your initial requirement to get all users in the system.
You can execute the User section (drill down on first screenshot), and execute without any filter values on address or user name. You should get all the users in the system
Thanks & Regards,
Tashi -
Hi,
In the alert log file it is occuring below error on some interval.The database version is 10.2.0.4.0.
ORA-1688: unable to extend table SYS.WRH$_ACTIVE_SESSION_HISTORY partition WRH$_
ACTIVE_506486335_9939 by 128 in tablespace SYSAUX
Thanks,
Quadri
Edited by: Quadri on Feb 6, 2010 6:52 AMHello,
You wrote:
Can i delete some rows to release the space from the SYS.WRH$_ACTIVE_SESSION_HISTORY table?To purge the Table SYS.WRH$_ACTIVE_SESSION_HISTORY, you may first query the Snapshot History
with the query below:
select snap_id, begin_interval_time from sys.dba_hist_snapshot order by snap_id;Then, you choose the range of snapshot you want to delete, and you execute the following Procedure:
exec dbms_workload_repository.drop_snapshot_range ( low_snap_id => snap_id_1, high_snap_id=> snap_id_2 );But, if the delete will free space inside the Table, it won't release space to the SYSAUX Tablespace.
You wrote:
For system tablespace can i add or resize the datafile if it needs?Yes as any Tablespace. But your error message was on the Tablespace SYSAUX. So this is the reason why it
was not necessary to extend the Tablespace SYSTEM.
Hope this help.
Best regards,
Jean-Valentin
Edited by: Lubiez Jean-Valentin on Feb 6, 2010 6:33 PM
Maybe you are looking for
-
"character conversion error" while parsing xml files
Hello, I'm trying to parse MusicXML (Recordare) files, but I'm getting an exception. I'm using the SAX parser (javax.xml.parsers.SAXParser). Here is the code I use to instantiate it: final javax.xml.parsers.SAXParserFactory saxParserFactory = javax.x
-
When I do enter my password TB tells me it's wrong but it IS NOT wrong - I've checked them in preferences they are correct. What is the deal here? Also, problem #2: I do not want TB to be my default client, Every time I log in I get a window offering
-
Froze and wont go past apple logo
ok my sister got her ipod mini from her friend last july, and it has worked fine until like a couple days ago and she just got like 500 new songs, and now whenever she trys to turn it on, it doesnt go past the apple logo, and i tried reseting it for
-
Text symbols displaying wrongly
Hello Experts.. I had created a zprogram . In that i want text symbols . so i created a text symbols ie text-001 and text-002. in the text elements screen i entered date and material for this text symbols. But in the output it is displaying item d
-
Hi all i am finally changing my os x 10.5 to 10.6 late i know, but i was wondering i have adobe creative suite on my mac which i use for business pupouses and i wanted to know if after i change the os x system do i have to re-install these programs f