理论教育 Oracle用户管理

Oracle用户管理

时间:2023-10-30 理论教育 版权反馈
【摘要】:数据库应用程序要访问Oracle数据库,首先必须使用数据库内定义的有效用户名建立与Oracle数据库实例的连接。Oracle数据库的有效用户包括两种:一种是系统预定义用户,如sys和system等;另一种是根据需要而建立的数据库用户。常见的Oracle初始用户有以下几个:①SYS:是数据库中具有最高权限的数据库管理员,可以启动、修改和关闭数据库,拥有数据字典。如果临时禁止某个用户访问Oracle 11g系统,最好的方式是锁定用户而不是删除用户。

Oracle用户管理

数据库应用程序要访问Oracle数据库,首先必须使用数据库内定义的有效用户名建立与Oracle数据库实例的连接。Oracle数据库的有效用户包括两种:一种是系统预定义用户,如sys和system等;另一种是根据需要而建立的数据库用户。常见的Oracle初始用户有以下几个:

①SYS:是数据库中具有最高权限的数据库管理员,可以启动、修改和关闭数据库,拥有数据字典。

②SYSTEM:是一个辅助的数据库管理员,不能启动和关闭数据库,但可以进行其他一些管理工作,如创建用户、删除用户等。

③SCOTT:是一个用于测试网络连接的用户,其口令为TIGER。

④PUBLIC:实质上是一个用户组,数据库中任何一个用户都属于该组成员。要为数据库中每个用户都授予某个权限,只需把权限授予PUBLIC就可以了。

sys和system这两个用户默认被授予了DBA权限。sys用户是一个特殊的用户,它只能以SYSDBA身份登录,而不能像其他用户那样以普通用户身份登录。任何用户被授予SYSDBA权限后,在以SYSDBA身份登录Oracle数据库实例后,均连接到SYS模式,而不是自己原来的模式。

(1)创建用户

在CREATE USER语句中:

①首先必须为每个数据库用户指定一个唯一的用户名,用户名不能超过30个字节,不能包含特殊字符,而且必须以字母开头。

②IDENTIFIED子句是CREATE USER语句中唯一一个必须输入的子句,它指出对该用户所使用的验证方法,可以使用的验证方法包括数据库口令验证、外部验证和全局验证3种。

③PASSWORD EXPIRE子句指出用户在首次登录后口令立即失效,强制要求用户必须立即修改口令才能执行后续操作。

④ACCOUNT子句指出所创建用户的账户状态是锁定(ACCOUNT LOCK)还是开放(ACCOUNT UNLOCK),默认时,所创建的用户处于开放状态,用户账户被锁定后无法再连接数据库。

⑤TEMPORARY TABLE SPACE子句为用户指定临时表空间,用户可以在其上创建临时对象,临时表空间没有限额设置。

⑥DEFAULT TABLE SPACE子句为用户指定默认表空间,但要注意,具有默认表空间并不意味着用户在该表空间上具有创建对象的权限,也不意味着用户在该表空间上具有用于创建对象的空间限额,这两项需要另外单独授权和设置。

⑦QUOTA子句指出在指定表空间上可为用户分配的存储空间限额。

⑧PROFILE子句为用户指定概要文件,以限制分配给用户的数据库资源量。

【例7.1】 以管理员登录,创建用户zhang,该用户采用数据库口令认证方式,强制要求首次登录时必须修改口令,将其默认表空间和临时表空间分别设置为USERS和TEMP,并在USERS表空间上为其分配10 M空间限额。

(2)查看用户(www.daowen.com)

数据库管理员要清楚Oracle数据库中到底有哪些用户,用户创建好了,就需要查看这些用户的基本情况,因此要熟悉存储用户相关信息的数据字典,如下所示:

①ALL_USERS:包含数据库所有用户的用户名、用户ID和用户创建时间。

②DBA_USERS:包含数据库所有用户的详细信息。

③USER_USERS:包含当前用户的详细信息。

④DBA_TS_QUOTAS:包含所有用户的表空间配额信息。

⑤USER_TS_QUOTAS:包含当前用户的表空间配额信息。

⑥V$SESSION:包含用户会话信息。

⑦V$OPEN_CURSOR:包含用户执行的SQL语句信息。

查看数据库所有用户名及其默认表空间。

查看数据库中各用户的登录时间、会话号。

(3)修改用户

创建用户后,可以调用ALTER USER语句修改用户。ALTER USER语句的各子句与CREATEUSER语句相同,这里不再重复列出。例如,下面语句重新设置刚创建的zhang用户的口令,并把其在USERS表空间上的限额调整为5 MB。

在Oracle 11g中可以使用两种方式修改用户口令,使用ALTER USER语句修改当前用户和其他用户的口令:

使用password命令修改用户口令,不跟user则修改当前用户。

如果临时禁止某个用户访问Oracle 11g系统,最好的方式是锁定用户而不是删除用户。锁定被解除之后,该用户就可以正常地访问系统,语法如下:

如果要删除的用户已经创建了表,需要带参数cascade:

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈