Oracle 创建用户并设置密码永不过期
创建用户
查看 dba_users 表可以看到,即使是 SYSTEM 用户,密码也会到期。另外,绝大部分用户,使用的 配置文件(PROFILE)都是 DEFAULT select * from dba_users 下面要创建/删除一个 ROOT 用户
- 创建用户 CREATE USER root IDENTIFIED BY 123456
- 删除用户 DROP USER ROOT CASCADE
赋予权限
oracle提供三种标准角色(role):connect/resource和dba.
- connect role(连接角色) 临时用户,特指不需要建表的用户,通常只赋予他们connect role. connect是使用oracle简单权限,这种权限只对其他用户的表有访问权限,包括select/insert/update和delete等。 拥有connect role 的用户还能够创建表、视图、序列(sequence)、簇(cluster)、同义词(synonym)、回话(session)和其他 数据的链(link)。
- resource role(资源角色) 更可靠和正式的数据库用户可以授予resource role。 resource提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)和簇(cluster)。
- dba role(数据库管理员角色) 拥有所有的系统权限,包括无限制的空间限额和给其他用户授予各种权限的能力。
SQL命令
- 授予权限 grant connect, resource to root
- 撤销权限 revoke connect, resource from root
设置密码永不过期
查看 dba_profiles表可以看到,Oracle 默认只有两种配置方案,就是 MONITORING_PROFILE 和 DEFAULT SELECT DISTINCT profile FROM dba_profiles
在 dba_profiles 表中,筛选所有配置名称为 DEFAULT 的,可以找到如下配置 SELECT * FROM dba_profiles s WHERE s.profile = DEFAULT
创建一个新的配置:CREATE PROFILE passwd_unlimit LIMIT PASSWORD_LIFE_TIME UNLIMITED 把配置文件设置给 ROOT 用户 ALTER USER ROOT profile passwd_unlimit;
