Orcle DBA学习笔记(角色,对象,权限,用户,索引,视图,同义词,序列)
2017-12-11 09:57
441 查看
最近在学习Oracle,该博客会慢慢更新。。。
1、获取建表DDL的SQL
2、查看系统当中有哪些账号
3、查看当前用户拥有的系统权限
4、查看当前用户拥有的对象权限
5、查看当前用户拥有的角色
6、查看角色拥有什么角色
7、查看角色拥有什么对象权限
8、查看角色拥有什么系统权限
9、创建账号
10、默认创建的用户是没有登录权限的,需要dba进行授权
11、回收权限
当你入职了,一般会给你分配一个账号(拥有一个角色),遇到权限不足的时候,找DBA给你授权。在Oracle中,SYS权限最高,权限第二高的是dba,可以直接 grant dba to test;不过一般不会这么干!这样执行之后,test用户就能干任何事情,但是不能shutdown immediate/startup
12、查看dba拥有的角色权限
13、查看dba数据库的对象
14、查看当前用户拥有的对象
15、创建和删除索引
16、视图
17、同义词(synonym)
18、序列
1、获取建表DDL的SQL
select dbms_metadata.get_ddl('TABLE','TEST','SCOTT') from dual;
2、查看系统当中有哪些账号
select * from dba_users;
3、查看当前用户拥有的系统权限
select * from user_sys_privs;
4、查看当前用户拥有的对象权限
select * from user_tab_privs;
5、查看当前用户拥有的角色
select * from user_role_privs;
6、查看角色拥有什么角色
select * from role_role_privs;
7、查看角色拥有什么对象权限
select * from role_tab_privs;
8、查看角色拥有什么系统权限
select * from role_sys_privs;
9、创建账号
create user test identified by oracle;--创建一个账号 test/oracle
10、默认创建的用户是没有登录权限的,需要dba进行授权
grant create session to test;--只是赋予了登录权限,还不能创建表, 可以使用select * from user_sys_privs;语句进行查看,系统权限一般是DBA要干的事情,DBA一般需要掌握80%的权限,初学者请绕过,小心处理。 grant create table to test;执行这句之后test用户就可以创建表了,但是没有想过查询的权限,比如说select * from scott.emp;是会报权限不足错误,需要执行grant select on scott.emp to test;以上grant语句执行都是在超级管理员用户下进行授权的。
11、回收权限
revoke XXX from 账号/角色; 授权的语法是 grant XXX to 账号/角色:
当你入职了,一般会给你分配一个账号(拥有一个角色),遇到权限不足的时候,找DBA给你授权。在Oracle中,SYS权限最高,权限第二高的是dba,可以直接 grant dba to test;不过一般不会这么干!这样执行之后,test用户就能干任何事情,但是不能shutdown immediate/startup
12、查看dba拥有的角色权限
select * from dba_role_privs;
13、查看dba数据库的对象
select * from dba_objects;
14、查看当前用户拥有的对象
select * from user_objects;
15、创建和删除索引
create table test as select * from dba_objects; select count(*) from test;--求test表一共有多少行数据 create index idx_id on test(object_id);--创建索引 索引是用来提升查询性能的,不是绝对的,不一定比逐行扫描快。缺点:占用磁盘空间 --查看用户下的某一张表的索引 select index_name,column_position,descend,column_name from dba_ind_columns where table_owner='SCOTT' and table_name='DEPT' order by 1,2; 删除索引 drop index idx_id;
16、视图
视图的目的: 一、给开发人员偷懒用的,我们可以先定义视图,而不用在查询的时候写一大堆的sql查询语句。 二、控制权限。我们可以定义一个视图,然后授权该访问视图的权限,这样就达到了只能访问部分数据,达到控制权限的功能。 创建视图 create or replace view emp_new as select * from emp where sal<2000; grant select on emp_new to test; 查看视图的源码(SQL) select * from dba_views where view_name='EMP1';--dba_views为数据库所有的视图
17、同义词(synonym)
select or replace synonym sb for emp; 查看同义词的定义 select * from dba_synonyms where synonym_name='SB';--这里是大写 同义词的删除 drop synonym sb;
18、序列
创建序列 create sequence seq_id start with 1 increment by 1 maxvalue 10000000000; 可以通过select * from user_objects;查看新建的序列。 select seq_id,nextval from dual;--启用查询下一次的序列值 select seq_id.currval from dual;--查看当前序列的值 select * from dba_sequences where sequence_name='SEQ_ID';
相关文章推荐
- 105---oracle的 函数,转换函数, 分析函数, 表空间,系统用户, 权限和角色, 序列, 同义词, 索引,表分区,,,
- Oracle Class4. 数据库对象(同义词,序列,视图,索引,簇)
- 经典SQL学习笔记 (六)-用户管理、视图、序列、索引、权限
- 数据库对象 同义词 索引 序列 视图
- oracle对象【约束,序列,索引,视图,同义词】
- oracle表空间,角色,权限,表,索引,序列号,视图,同义词,约束条件,存储函数和过程,常用数据字典,基本数据字典信息,查看VGA信息,维护表空间,创建表空间等信息
- oracle 数据库模式对象,索引,序列,同义词,查看用户拥有的表,聚簇,数据库链接
- Oracle数据库之对象视图、索引、序列、同义词
- oracle 数据库模式对象,索引,序列,同义词,查看用户拥有的表,聚簇,数据库链接
- oracle 数据库模式对象,索引,序列,同义词,查看用户拥有的表,聚簇,数据库链接
- oracle 数据库模式对象,索引,序列,同义词,查看用户拥有的表,聚簇,数据库链接
- Day59-Oracle03 - 创建表空间、创建表(子查询创建表)、表的约束、事务、数据库对象(视图、序列、索引、同义词)、PLSQL编程、(if,循环)、数据的导入导出备份
- 七.ORACLE数据库中的序列,同义词,索引等对象
- ORACLE查看用户、权限、角色的命令和视图
- Greenplum中定义数据库对象之创建与管理序列、索引以及视图
- Oracle总结【视图、索引、事务、用户权限、批量操作】
- Oracle笔记 五、创建表、约束、视图、索引、序列、同义词、表空间
- Oracle创建表、约束、视图、索引、序列、同义词、表空间
- Oracle数据库操作(视图,序列,索引,同义词)
- Oracle提高(访问其他用户和视图、同义词、序列、索引学习)