--忘记密码,更改过程,
sqlpuls / As Sysdba --使用系统用户权限直接登录
Alter User Sys Identified By oracle; --更改sys用户的密码
Select * From dba_data_files
Select * From dba_users
Drop User a Cascade --先带关联的删除再重建
--*****创建用户
Create User A Identified By A Default Tablespace A Temporary Tablespace TEMP --创建用户A/A 指定缺省表空间(用户下的数据默认存放在该表空间)和临时表空间
Select * From database_properties --查看数据库的缺省表空间DEFAULT_PERMANENT_TABLESPACE USERS,创建用户时不指定缺省表空间,则系统指定为USERS
Alter Database Default Tablespace A1 --更改系统默认的缺省表空间为A1
--******用户过期与用户锁定
Alter User A Password Expire --设置用户A的口令过期,用户A下次登录时会提醒更改密码
Alter User A Account Lock --锁定用户A 默认密码输错10次以上,自动锁定 ORA-28000: 帐户已被锁定
Alter User A Account Unlock --用户A解锁
--******用户权限
sqlplus a/a@testdb --ORA-01045: 用户 A 没有 CREATE SESSION 权限; 登录被拒绝
Grant Create Session To a --授予用户A CREATE SESSION 权限
sqlplus a/a@testdb --登录成功
Select * From Dba_sys_privs Where grantee='A' --查看用户A有哪些权限
Select * From system_privilege_map --用户权限列表
Grant Create Table To a --授予用户A Create Table权限
Grant UNLIMITED Tablespace To a --授予用户A 使用任何表空间的权限,UNLIMITED TABLESPACE 不能授予角色,但授予resource角色后,就具有该权限
alter User A Quota Unlimited On A Quota 20M On USERS --用户A在表空间A不受限制,在表空间USERS可以使用20M空间
Select * From dba_ts_quotas --查询quota信息
Select * From dba_roles --用户权限的角色,常用CONNECT,RESOURCE,EXP_FULL_DATABASE,IMP_FULL_DATABASE
Select * From Dba_sys_privs Where grantee='RESOURCE' --查看角色RESOURCE有哪些权限,将该角色授予用户时,角色自动增加UNLIMITED TABLESPACE权限
Grant Resource To a --将角色RESOURCE授予用户A
Select * From dba_role_privs Where grantee='A' --查看用户有哪些角色
Select * From session_privs --查看当前session具有哪些系统权限
Select * From session_roles --查看当前session具有哪些角色
--*******admin option
Grant Create Session To a With Admin Option --授予用户A Create Table权限,并允许admin权限
Revoke Create Session From a --收回权限
--**********role角色
Create Role role_test --创建角色role_test
Grant Connect,resource To role_test --将Connect和resource2个角色的权限授予role_test
Grant role_test To a --将角色role_test授予用户a
Alter User a Default Role role_test --设置用户a的DEFAULT_ROLE
Select * From dba_role_privs Where grantee='A' --查看用户角色,DEFAULT_ROLE=YES起作用,NONE不起作用
--**********Profiles
oracle有一个默认的Profile Default
-- Create profile
create profile PROFILE_TEST limit
idle_time 1; --其他属性为缺省DEFAULT
Alter User a Profile profile_test --改变用户A的profile文件
--profile对资源的限制默认是不起作用的,需要设置RESOURCE_LIMIT为true(默认false)
/*
Profiles cannot impose resource limitations on users unless the RESOURCE_LIMIT
initialization parameter is set to TRUE. With RESOURCE_LIMIT at its default value of FALSE,
profile limitations are ignored.
*/
show parameter Limit --查看limit相关的属性 看到RESOURCE_LIMIT默认是false
Alter System Set RESOURCE_LIMIT=True
sqlplus a/a@testdb
Select Sysdate From dual --查询当前系统时间 1分钟后来确定是否断开
--profile对密码安全的控制 默认不控制 11G安装时有选项
/*10G需要执行以下脚本
The Oracle server provides a password complexity verification function named
VERIFY_FUNCTION. This function is created with the /rdbms/admin/utlpwdmg.sql script
*/
sys用户下执行
SQL> @ C:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\utlpwdmg.Sql --创建函数VERIFY_FUNCTION
再查看default这个profile,发现改变了
/*
failed_login_attempts 3 --登录验证失败3次后账户锁定
password_life_time 60 --密码更改周期60天
password_reuse_time 1800 --密码重用1800天,即刚刚用过的密码1800天后才可以再次被实用
password_reuse_max unlimited --修改多少次后,刚刚用过的密码可以重新被使用
password_lock_time .0006 --账户锁定多久,单位是天,.0006是1分钟
password_grace_time 10 --口令过期后 还可以使用10天 这10天内每次登录都有报警
password_verify_function VERIFY_FUNCTION;
*/
修改user A的密码,使用A作为密码报错 ORA-20001: Password same as or similar to User
sqlpuls / As Sysdba --使用系统用户权限直接登录
Alter User Sys Identified By oracle; --更改sys用户的密码
Select * From dba_data_files
Select * From dba_users
Drop User a Cascade --先带关联的删除再重建
--*****创建用户
Create User A Identified By A Default Tablespace A Temporary Tablespace TEMP --创建用户A/A 指定缺省表空间(用户下的数据默认存放在该表空间)和临时表空间
Select * From database_properties --查看数据库的缺省表空间DEFAULT_PERMANENT_TABLESPACE USERS,创建用户时不指定缺省表空间,则系统指定为USERS
Alter Database Default Tablespace A1 --更改系统默认的缺省表空间为A1
--******用户过期与用户锁定
Alter User A Password Expire --设置用户A的口令过期,用户A下次登录时会提醒更改密码
Alter User A Account Lock --锁定用户A 默认密码输错10次以上,自动锁定 ORA-28000: 帐户已被锁定
Alter User A Account Unlock --用户A解锁
--******用户权限
sqlplus a/a@testdb --ORA-01045: 用户 A 没有 CREATE SESSION 权限; 登录被拒绝
Grant Create Session To a --授予用户A CREATE SESSION 权限
sqlplus a/a@testdb --登录成功
Select * From Dba_sys_privs Where grantee='A' --查看用户A有哪些权限
Select * From system_privilege_map --用户权限列表
Grant Create Table To a --授予用户A Create Table权限
Grant UNLIMITED Tablespace To a --授予用户A 使用任何表空间的权限,UNLIMITED TABLESPACE 不能授予角色,但授予resource角色后,就具有该权限
alter User A Quota Unlimited On A Quota 20M On USERS --用户A在表空间A不受限制,在表空间USERS可以使用20M空间
Select * From dba_ts_quotas --查询quota信息
Select * From dba_roles --用户权限的角色,常用CONNECT,RESOURCE,EXP_FULL_DATABASE,IMP_FULL_DATABASE
Select * From Dba_sys_privs Where grantee='RESOURCE' --查看角色RESOURCE有哪些权限,将该角色授予用户时,角色自动增加UNLIMITED TABLESPACE权限
Grant Resource To a --将角色RESOURCE授予用户A
Select * From dba_role_privs Where grantee='A' --查看用户有哪些角色
Select * From session_privs --查看当前session具有哪些系统权限
Select * From session_roles --查看当前session具有哪些角色
--*******admin option
Grant Create Session To a With Admin Option --授予用户A Create Table权限,并允许admin权限
Revoke Create Session From a --收回权限
--**********role角色
Create Role role_test --创建角色role_test
Grant Connect,resource To role_test --将Connect和resource2个角色的权限授予role_test
Grant role_test To a --将角色role_test授予用户a
Alter User a Default Role role_test --设置用户a的DEFAULT_ROLE
Select * From dba_role_privs Where grantee='A' --查看用户角色,DEFAULT_ROLE=YES起作用,NONE不起作用
--**********Profiles
oracle有一个默认的Profile Default
-- Create profile
create profile PROFILE_TEST limit
idle_time 1; --其他属性为缺省DEFAULT
Alter User a Profile profile_test --改变用户A的profile文件
--profile对资源的限制默认是不起作用的,需要设置RESOURCE_LIMIT为true(默认false)
/*
Profiles cannot impose resource limitations on users unless the RESOURCE_LIMIT
initialization parameter is set to TRUE. With RESOURCE_LIMIT at its default value of FALSE,
profile limitations are ignored.
*/
show parameter Limit --查看limit相关的属性 看到RESOURCE_LIMIT默认是false
Alter System Set RESOURCE_LIMIT=True
sqlplus a/a@testdb
Select Sysdate From dual --查询当前系统时间 1分钟后来确定是否断开
--profile对密码安全的控制 默认不控制 11G安装时有选项
/*10G需要执行以下脚本
The Oracle server provides a password complexity verification function named
VERIFY_FUNCTION. This function is created with the /rdbms/admin/utlpwdmg.sql script
*/
sys用户下执行
SQL> @ C:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\utlpwdmg.Sql --创建函数VERIFY_FUNCTION
再查看default这个profile,发现改变了
/*
failed_login_attempts 3 --登录验证失败3次后账户锁定
password_life_time 60 --密码更改周期60天
password_reuse_time 1800 --密码重用1800天,即刚刚用过的密码1800天后才可以再次被实用
password_reuse_max unlimited --修改多少次后,刚刚用过的密码可以重新被使用
password_lock_time .0006 --账户锁定多久,单位是天,.0006是1分钟
password_grace_time 10 --口令过期后 还可以使用10天 这10天内每次登录都有报警
password_verify_function VERIFY_FUNCTION;
*/
修改user A的密码,使用A作为密码报错 ORA-20001: Password same as or similar to User
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15810196/viewspace-1130235/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/15810196/viewspace-1130235/