步骤如下依次执行
- 以sysdba的身份登陆oracle;
sqlplus / as sysdba
- 创建用户语句;
create user yb_dev identified by yb_dev;
# 第一个yb_dev为用户, 第二个yb_dev为密码
- 修改密码命令(可选操作);
alter user yb_dev identified by yb_123;
- 默认情况下用户创建好后系统会默认给该用户分配一个表空间(users);
我们可以通过下面的sql语句来查看一下所有用户所在的表空间;
select username,default_tablespace from dba_users;
- 一般在开发情况下,我们当然不会使用用户的默认表空间,所以这时我们需要创建一个表空间;
create tablespace yb_dev datafile '/opt/oracle/oradata/yb_dev_data.dbf' size 200M AUTOEXTEND ON NEXT 200M MAXSIZE UNLIMITED;
注:datafile后面是表空间的物理存储路径,文件名的后缀可以随便
- 创建好表空间,还需要将表空间分配给用户.
alter user yb_dev default tablespace yb_dev;
重复第四步骤查看是否分配成功;
给用户分配了表空间,用户还不能登陆(没有登录权限),因此还需要为用户分配权限;(最后面附上权限参考)
grant create session,create table,create view,create sequence,create trigger,create procedure,unlimited tablespace to yb_dev;
- 测试登陆,给用户分配了权限之后我们就可以用yb_dev用户来登录;
conn yb_dev/yb_dev;
- 登录之后我们也可以来查询用户所具有的权限;
select * from session_privs;
- 最后我们也可以删除用户及其相关对象;
drop user yb_dev cascade;
- 密码永不过期
- 命令行以sysdba的方式进入
sqlplus / as sysdba;
- 查看用户的密码策略,一般是default
select username,profile from dba_users;
- 查看指定概要文件(如default)的密码有效期设置
Select * FROM dba_profiles s Where s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';
- 将密码有效期由默认的180天修改成“无限制”
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
- 修改密码,相当于重置密码
alter user yb_dev identified by yb_dev;
常用权限参考
create session
连接数据库;
create view
建视图;
create procedure
建过程、函数、包;
create cluster
建簇;
create table
建表;
create public synonym
建同义词;
create trigger
建触发器;