oracle使用指南
<strong>3个默认的帐户:</strong> sys change_on_install 网络管理员 [ as sysdba] system manage 本地管理员 scott tiger 超级用户<strong>创建用户、授权和撤消权限</strong> 登录oracle: sqlplus / as sysdba 启动监听: lsnrctl start 启动数据库的实例: oradim -startup -sid orcl SQL> show user ; //显示当前用户 SQL> create user lisi identified by lisi; //创建一个用户 SQL> grant create session to lisi; //给用户授予会话权限 SQL> sqlplus lisi/lisi //用创建的用户进行登录 SQL> grant unlimited tablespace to lisi //给用户授予表空间权限 SQL> grant create table to lisi; //给用户创建表的权限 SQL> create table mytable (id int ); //创建表 SQL> insert into mytable values (1); //插入数据 SQL> select * from mytable; //查询数据 SQL> drop table mytable //删除表 SQL> revoke create table from lisi; //撤消对表操作的权限 SQL> select * from user_sys_privs; //查询当前用户拥有哪些权限 SQL> revoke unlimited tablespace from lisi; //撤消对表空间操作的权限 <strong>丢失管理员密码怎么办?</strong> 用sys用户进行修改 sqlplus / as sysdba alter user scott Identified by tiger; oracle 9 更改口令文件 把原有口令文件删掉 E:\oracle\ora92\ database \pwdora9i.ora; orapwd file=E:\oracle\ora92\ database \pwdora9i.ora password =sys entries=10; select * from v$pwfile_users; oracle 10+ 更改口令文件 把原有口令文件删掉 E:\oracle\ora92\ database \PWDorcl.ora; orapwd file=E:\oracle\ora92\ database \PWDorcl.ora password =sys entries=10; select * from v$pwfile_users; <strong>角色管理</strong> 角色就是一个权限的集合。 show user ; 显示当前用户 create role myrole; 创建一个角色 grant create session to myrloe; 给角色授予session权限 grant create table to myrole; 给角色授予表操作权限 create user zhangsan identified by zhangesan; 创建一个用户 grant myrole to zhangsan; 把角色授予给用户 sqlplus zhangsan/zhangsan 用户登录 drop role myrole; 删除角色 grant unlimited tablespace to myrole; 这个权限比较大,不能通过角色授权,只能授权给用户 <strong>权限的传递</strong><strong></strong> show user : 查看当前用户 select * from user_sys_privs 查看当前用户的系统权限 grant alter any table to lisi; sys可以授权给李四 grant alter any table to wangwu; 但是李四不能授权给王五 grant alter any table to lisi with admin option ; //现在李四可以授权给王五了 grant alter any table to wangwu with admin option ; //让王五也可以传递权限 create table A(id int ); //在sys中创建一个表A grant select On A to lisi; //把表操作权限传递给李四,但李四不能传递权限 grant select On A to lisi with grant option ; //现在李四可以传递权限了 grant select on sys.A to wangwu with grant option ;; //让王五也可以传递权限。 <strong>系统权限与对象权限</strong> SQL> create user wanwu identified by wangwu SQL> grant create session to wangwu; SQL> sqlplus wangwu/wangwu SQL> grant create table ,unlimited tablespace to wangwu; SQL> create table mytab(id int ); SQL> insert into mytab values (2); 用lisi访问wangwu 的表,不能访问 SQL> select * from wangwu.mytab; 用sys用户访问wangwu 的表,可以,要执行两次 SQL> select * from wangwu.mytab; SQL> select * from wangwu.mytab; 让lisi可以访问wangwu的表 SQL> grant select on mytab to lisi; //把查询权限授予李四 SQL> grant insert on mytab to lisi; //把插入权限授予李四 SQL> commit ; //提交后才显示数据 SQL> grant all on mytab ot lisi; // 把操作表的最大权限授予李四 SQL> revoke all on mytab from lisi; // 撤消李四对表操作的权限 SQL> disconn SQL> conn wangwu/wangwu SQL> commit : //每次对表操作后要提交 SQL> alter table mytab add name varchar (50); SQL> insert into mytab values (1, 'zhang' ); SQL> insert into mytab values (2, 'li' ); SQL> insert into mytab values (3, 'wang' ); SQL> commit ; SQL> grant update ( name ) on mytab to lisi; //让李四只有更新 name 列的权限 SQL> grant insert (id) on mytab to lisi; //让李四只有插入id列的权限 SQL> update wangwu.mytab set name = 'lihuoming' where id=1; <strong>帐户管理细节</strong> 1.三个常用的系统用户: scott(一个数据库的普通用户) conn scott/tiger manager(数据库管理员) conn system/manager sys(数据库对象的拥有者权限最高) conn sys/change_on _install as sysdba 创建用户的完整格式: create user 用户名 identified by 密码 default tableSpace 表空间 Temporary TableSpace 表空间 Quota 整数[ K | M | Limited | unlimited ] on 表空间 例子: create user abc identified by 123 default tablespace Users Temporary tablespace Temp Quota 50M on Users 限制用户: 用户加锁 -- alter user 用户名 account lock 用户解锁 -- alter user 用户名 account unlock 用户口令即刻失效 -- alter user 用户名 password expire 删除用户: drop user 用户名 [ CasCade ] CasCade 表示删除用户所有对象 示例: drop user abc cascade ; |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决