管理员登录
sqlplus / as sysdba
管理员登录,免密码,拥有最高权限,它采用的是操作系统的验证,所以只要能正常登录操作系统,就可以用这个命令登录Oracle数据库。
但是,有时登录操作系统的用户因为权限原因不能登录数据库,就需要解决操作系统用户权限问题:https://www.cnblogs.com/zbh355376/p/14197684.html
Oracle的开启和关闭:
开启oracle:startup
关闭oracle:
正常关闭:shutdown nomal
立即关闭:shutdown immediate
事务关闭:shutdown transactional
终止关闭:shutdown abort,这是属于强制关闭,会丢失数据。
用户管理
创建用户:create user 用户民 identified by 密码;
删除用户:drop user 用户名 cascade;
注:如果用户下已经有用户新建的对象需要加cascade这个参数,删除用户级联删除旗下的对象
登录用户:sqlplus 用户名/密码
切换用户:conn 用户名/密码
权限设置
刚创建的用户没有任何权限,不能登录,不能操作数据库,(权限可以是单独的权限,具体的权限,也可以是角色,角色是若干权限的集合),Oracle有自带的权限,connect/resource/dba(dba权限是最高的),如果需要定制权限集合,我们可以自定义角色,让角色拥有自己的权限。
权限授予:grant 权限 to 用户名;
回收权限:revoke 权限 from 用户名;
查看用户有哪些权限:select * from dba_role_privs where grantee='用户名';
注:要用dba角色登录执行上面的三条语句(conn / as sysdba)
例:创建用户user_test并非配建表权限
创建用户:create user user user_test identified by 355376;
// 用户名为 user_test 密码为 355376
授予创建会话权限:grant CREATE SESSION to user_test;
授予资源权限:grant resource to user_test;
撤销资源权限:revoke resource from user_test;
撤销创建会话权限:revoke CREATE SESSION from user_test;