Oracle 用户管理主要涉及用户的创建、修改、权限管理和删除等操作。以下是详细介绍:

1. 创建用户

在 Oracle 中,用户是一个数据库对象,它拥有自己的模式(Schema),包括表、视图、索引等。创建用户的基本语法如下:

CREATE USER username IDENTIFIED BY password;

例如:

CREATE USER test_user IDENTIFIED BY mypassword;

此外,还可以指定默认表空间、临时表空间:

CREATE USER test_user IDENTIFIED BY mypassword
DEFAULT TABLESPACE users
TEMPORARY TABLESPACE temp;

2. 分配权限

新创建的用户默认没有权限,必须授予基本权限:

GRANT CREATE SESSION TO test_user; -- 允许登录
GRANT CONNECT, RESOURCE TO test_user; -- 授权访问资源
GRANT DBA TO test_user; -- 赋予 DBA 管理权限(慎用)

还可以授予特定对象权限,例如:

GRANT SELECT, INSERT ON employees TO test_user;

3. 修改用户

修改用户密码:

ALTER USER test_user IDENTIFIED BY newpassword;

更改默认表空间:

ALTER USER test_user DEFAULT TABLESPACE new_tablespace;

4. 删除用户

如果需要删除用户,可以使用:

DROP USER test_user;

若该用户已有对象(如表),需要加 CASCADE 选项:

DROP USER test_user CASCADE;

5. 查看用户信息

查询当前数据库中的所有用户:

SELECT username FROM dba_users;

查询用户的权限:

SELECT * FROM dba_sys_privs WHERE grantee = 'TEST_USER';

查询用户的角色:

SELECT * FROM dba_role_privs WHERE grantee = 'TEST_USER';

6. 锁定/解锁用户

锁定用户:

ALTER USER test_user ACCOUNT LOCK;

解锁用户:

ALTER USER test_user ACCOUNT UNLOCK;

这些是 Oracle 用户管理的基本操作,实际使用时可以根据需求调整权限和策略。