启动 默认Listener
lsnrctl start
启动服务:
oradim -starup -sid sid_name
创建用户:
1.create user test_user identified by password;
此时用户还无法登录,需要授权。
2.grant create session to test_user;
需要创建表 继续授权
3.grant create table to test_user;
此时仍无法创建表 需要对表空间的权限。
4.grant unlimited tablespace to test_user;
数据字典:
查看一般用户的系统权限:
select * from user_sys_privs;
查看用户的对象权限:
select * from user_tab_privs;
查看对表中列的权限:
select * from user_
撤销权限:
revoke ...................;
revoke create session from test_user;
系统权限和对象授权
对象授权 : 对象的拥有者对其它用户进行授权。
授 权给所有用户:
grant create any table to public;
只对某张表的某一列进行授权:
grant update(name) on mytab to leo;
grant insert(id) on mytab to leo;
NOTE :查询和删除不能控制到列
*** 权限的传递
grant alter any table to leo with admin option;
grant select on mytab to leo with grant option;
角色:
create role myrole;
grant create session to myrole;
drop role myrole;
有些角色比较重要 不能赋值给角色 例如 unlimited tablespace;
修改用户密码:
alter user soctt identified by password;
** 用户登录三种验证机制:
操作系统验证 : sqlplus / as sysdba; 组ora_dba中的都是不需要密码登录的
生产环境下 为了安全起见 要把这个组中的USER 删除掉。
密码文件验证 :忘记密码怎么办? 删除密码文件 PWDSIDNAME.ora
重新生成密码文件命令: orapwd file=D:\oracle10g\database\PWDorcl.ora password=123456 entries=10
查看userentries : select * from v$pwfile_users;
数据库验证
PS:调整命令行结果显示宽度 ---- set linesize 400;
*** Other:
create user abc
identified by abc
default tablespace Users
Temporary tablespace Temp
Quota 50M on Users;
*** 限制用户:
Add lock: alter user leo account lock;
Unlock: alter user leo account unlock;
Password Expire : alter user leo password expire.
drop user test_user [cascade];