3个默认的用户
sys //网络管理员 权限由上到下降低 【最后加上 as sysdba】
system //本地管理员
scott //普通用户 默认密码:tiger
创建用户:show user;//显示用户
create user lisi identified by lisi;(前面为用户名,后面为密码)
drop user lisi;//删除用户lisi
grant create session to lisi;(给用户授予session权限,不然连登陆的权限都没有)
grant create table to lisi;(给用户授予创建表的权限)(其它权限不用授予,及有创建权限自动拥有查找、修改、删除权限)
grant unlimited tablespace to lisi;(授予用户不受上线的表空间权限,无空间权限也无法创建表)
grant create any table to public;//将创建表的权限授予给所有用户,其它权限类推
revoke create table from lisi;//撤销lisi创建表的权限
创建表:
create table mytable (id int);//创建表
insert into mytable (id)values(1);//插入表
select * from mytable;//查询
drop table mytable;//删除表
commit;//手动保存数据
查看当前用户所有权限(数据字典不同)
select * from user_sys_privs;//查看系统权限
select * from user_tab_privs;//查看对象权限
select * from user_col_privs;//查看列权限
其它用户查看某个用户的表:(所有事物必须提交,不然没有数据 【commit】)
sys查看: select * from wangwu.wangtable; //必须要标注好访问谁的数据表,不然oracle会默认访问自己的表而出错
普通用户未经授权是无法访问其它用户的表的;授权如下(访问及select)
sys给lisi授权:
grant select on wangwu.wangtable to lisi;//授予lisi访问wangwu的wangtable的权限
wangwu给lisi访问授权:(select)
grant select on wangtable to lisi;
grant select on wangtable to public;//将查询权限授予给所有用户
wangwu给lisi授予插入权限:(insert)
grant insert on wangtable to lisi;
wangwu授予lisi所有权限(及增删改查);
grant all on wangtable to lisi;
wangwu撤销对lisi的所有权限(仅限wangtable表);
revoke all on wangtable from lisi;
wangwu对wangtable添加一列:
alter table wangtable add name varchar(10);//添加name列
wangwu授权lisi更新name列的权限:
grant update(name) on wangtable to lisi;//仅能更新name列
wangwu授权lisi插入id列的权限:
grant insert(id) on wangtable to lisi;//仅能插入id列
系统权限由系统权限授予,对象权限者是谁拥有谁授予
系统权限的传递:
grant alter any table to lisi;//授予lisi修改任何表的权限,但是lisi没有权限授予wangwu它lisi已有的系统权限
grant alter any rable to lisi with admin option;//这个就是对lishi权限的补充,让他有权限去将自己的系统权限授予wangwu
然后lisi可以进行如下操作:
grant alter any table to wangwu;
grant alter any table to wangwu with admin option;//如上类推
对象权限的传递:
grant select on A to lisi with grant option;//系统赋予lisi权限,让lisi有传递对象传递的权限
grant select on A to lisi with grant option;//如上类推
角色:角色就是权限的集合
create role myrole;//创建一个角色myrole
grant create session to myrole;//赋予session权限给myrole
grant create table to my role;//赋予创建表的权限给myrole
grant myrole to zhangsan;//将myrole的权限赋予给zhangsan
drop role myrole;//删除角色
有的系统权限是无法授予给角色的:
grant unlimited tablespace to myrole;//无法授予权限给myrole角色,该权限太大,要直接授予给用户
grant create table to myrole;//可以,只能给自己新建一个表
grant create any table to myrole;//可以,不仅能给自己新建一个表,还可以给其它用户新建一个表
grant alter any table to myrole;//可以
grant alter table to myrole;//错误
grant drop any table to myrole;//可以
grant drop table to myrole;//错误
表属于某个用户
角色不属于某个用户
用户密码丢失:
管理员不能查看密码,但是可以更改密码
alter user lisi identified by zhangsan; //将lisi的密码改zhangsan(原始密码为lisi)
oracle数据库的三种验证机制:
1、操作系统验证//sysdba和sysoper用验证机制此种
2、密码文件验证//sysdba和sysoper用验证机制此种
3、数据库验证
linux和unix下 oracle的启动顺序:
1、lsnrctl start (启动监听)
2、新版本:
sqlplus / as sysdba【或者 sqlplus sys/oracle as sysdba】
早期版本:
sqlplus / nolog
conn sys/oracle as sysdba
3、startup (启动数据库)
windows下 oracle的启动顺序:
1、lsnrctl start (启动监听)
2、oradmin -starup -sid orcl
要先打开服务和监听器(否则无法连接数据库【可以直接按下O找到以O开头的服务或者在我的电脑图标右键。。。】):
就可进去操作数据库了:
当然navicat也是可以的:
- Oracle数据库之 PL SQL 学习笔记
1.定义基本变量: 2.引用型的变量: set serveroutput on declare pename emp.ename%type; psal emp.sal%type; begin ...
- oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)
操作系统:windows xp 已有数据库版本:10.2.0.3 升级目标版本:11.2.0.1 步骤大纲: 在源操作系统(安装有10.2.0.3数据库的操作系统)上安装11.2.0.1数据库软件,然 ...
- Oracle数据库的入门之一
Oracle的介绍: Oracle Database,又名Oracle RDBMS,或简称Oracle.是甲骨文公司的一款关系数据库管理系统.它是在数据库领域一直处于领先地位的产品.可以说Oracle ...
- 给同为.NET开发者普及一点Oracle数据库经验
前段时间,因为要给自己开发的搜易站内搜索引擎增加Oracle数据库的支持,所以学习了下Oracle的基础知识,发现使用方式跟MYSQL,MSSQL等数据库的思维有很大的不同,总结一下几点不同,希望给初 ...
- C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志
C#实现多级子目录Zip压缩解压实例 参考 https://blog.csdn.net/lki_suidongdong/article/details/20942977 重点: 实现多级子目录的压缩, ...
- [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了
[译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 本文首发自:博客园 文章地址: https://www.cnblogs.com/yilezhu/p/ ...
- 面试题: 数据库 oracle数据库 已看1 意义不大 有用
Oracle数据库面试题总结 2017年04月27日 22:41:44 阅读数:9271 1.SQL语句分类 DQL(数据查询语言)select DML(数据操作语言)insert.delete.up ...
- MyEclipse 连接Oracle数据库(初学者必看)
前言:刚接触Oracle数据库,便有一个需求,编写控制台程序,实现主人登录.数据库为Oracle.下面详细介绍一下MyEclipse 连接Oracle数据库. package DbHelp; im ...
- Oracle数据库 —— DDL
时间:2016-10-5 14:55 逆风的方向更适合飞翔我不怕千万人阻挡只怕自己投降 --------------------------------------- 一.表的创建与管理1.表的基本操 ...
随机推荐
- JAVA 1.2(原生数据类型 Primitive Data Type)
1. Java的数据类型分为2类 >> 原生数据类型(primitive data type) >> 引用数据类型(reference data type) 3. 常量和变量 ...
- DOM常用操作总结
一.getElementById() 寻找一个有着给定 id 属性值的元素,返回值是一个有着给定 id 属性值的元素节点.如果不存在,这样的元素,它返回 null. 二.getElementsByNa ...
- 内存屏障 & Memory barrier
Memory Barrier http://www.wowotech.net/kernel_synchronization/memory-barrier.html 这里面讲了Memory Barrie ...
- fullpage 单屏高度超过屏幕高度,实现单屏内可以滚动并解决手机端单屏高度不正确的问题
最近接触了好几次jquery.fullpage.js这个插件,实现整屏的滑动,效果很炫,用fullpage来实现也很简单,但是也碰到了一些问题和大家分享一下 1.单屏高度超过屏幕高度,实现单屏的滑动 ...
- PacBio三代全长转录组/Iso-Seq技术及案例分析
参考:产品手册 PacBio三代全长转录组有什么优势? 近年来,随着高通量测序技术的发展,转录组测序已经成为研究基因表达调控的主要手段.但二代的转录本重构准确率很低,三代可以直接得到全长转录本,无需组 ...
- 撤销git reset soft head操作
一不小心在eclipse的git库中执行了Reset Soft(HEAD ONLY)操作,不料界面中竟然没有找到撤销方法(于是心中五味俱全,经过一番折腾,无果还是回归Git本身),最终通过命令行,很快 ...
- Map的五种遍历方法
package com.jackey.topic; import java.util.ArrayList;import java.util.HashMap;import java.util.Itera ...
- BIND的进程一:DNS简单配置与的主从配置
DNS的简单配置和DNS的主从配置 摘要:DNS(Domain-Name Server) ,DNS的服务起到的作用就是名称解析,在网络通讯来说计算机与计算机是通过IP地址相互通信的, 当是IP地址 ...
- tensorflow版的bvlc模型
研究相关的图片分类,偶然看到bvlc模型,但是没有tensorflow版本的,所以将caffe版本的改成了tensorflow的: 关于模型这个图: 下面贴出通用模板: from __future__ ...
- Java split()用法
特殊情况有 * ^ : | . \ 一.单个符号作为分隔符 String address="上海\上海市|闵行区\吴中路"; String[] splitAddress=addr ...