`

oracle笔记

阅读更多


---小技巧:
sqlplus 中清屏命令:host cls

set linesize 400  ---设置列宽度

---启动监听
lsnrctl start

---启动数据库实例
oradim -starup -sid taink

---创建/删除用户
create user lisi identified by lisi;
drop user lisi;

---授权/撤销创建会话的权限
grant create session to lisi;
---grant create session to public;  (授权创建会话权限给所有用户)
revoke create session from lisi;
---revoke create session from public;(从所有用户撤销创建会话权限)

---授权创建表的权限
grant create table to lisi;
---grant alter any table to lisi;  ---授权修改任意表的权限

revoke create table from lisi;


---授权创建不受限制表空间的权限
grant unlimited tablespace to lisi;
revoke unlimited tablespace from lisi;

/* 查看当前用户的系统权限 */
select * from user_sys_privs;   ---数据字典

/* 查看当前用户的对象权限 */
select * from user_tab_privs;   ---数据字典
/* 对列进行授权,再进行对象权限查询时使用下列方式查询 */
select * from user_col_privs;   ---数据字典

/* 查看当前系统所有用户 */
select * from all_users;


------------------------------------------------------
/* 对象权限 */
---查询(当前用户)拥有的表的信息
select * from user_tables;

---授权/撤消 (对mytable表的)查询权限给san 用户


grant select on mytable to san;
---grant select,insert,update,delete on mytable to san;
---grant all on mytable to san;

revoke select on mytable from san;
---revoke select,insert,update,delete on mytable from san;
---revoke all on mytable from san;

---授权权限可以控制到列(注意:查询和删除 不能控制到列)
grant update(name) on mytable to san;        --- 授权只能更新表中的name 列的信息
grant insert(id) on mytable to san;        --- 授权只能插入表中的id 列的信息


------------------------------------------------------
---表的创建
create table tab_name (id int);
alter table tab_name add column_name varchar2(10);


-------------------------------------------------------
/* 系统权限和对象权限以及权限的传递 */
/*
    系统权限部分.
    系统权限具有传递性
    即:A ---grant---> B ---grant--->C
    当A ---revoke--->B 时,B ---grant--->C (的权限)没有撤消.
*/
grant alter any table to lisi;--- 基本的授权
grant alter any table to lisi with admin option; ---带管理权限的授权

/*
    对象权限部分
    对象权限不具有传递性
    即:A ---grant---> B ---grant--->C
    当A ---revoke--->B 时,B ---grant--->C (的权限)同时撤消
*/

grant select on tab to lisi;    ---基本授权查询表的权限
grant select on tab to lisi with grant option; ---(带授权选项的)授权

---------------------------------------------------------------
/*
    通过角色来管理用户
    角色:是权限的集合
*/
---创建role
create role myrole;
---给role 授权
grant create session,create table to myrole;
---把角色myrole 的权限授予用户zhang(用户zhang 拥有了create session,create table 权限了)
grant myrole to zhang;

---删除role
drop role myrole;

注意:当删除一个角色后,用户对应的权限也被撤消.
有些权限是不能赋予给角色:unlimited tablaspace

    creata table    ---只能为自己创建表
    create any table    ---不仅可以为自己创建表,也可为其它用户创建表
    alter table    /*无此类权限的设置,因为有创建权限也就有修改权限*/
    alter any table
    drop table     /*无此类权限的设置,因为有创建权限也就有删除权限*/
    drop any table

    表属于某一个用户.
    角色不属于某一个用户.

---------------------------------------------------------------
管理员密码丢失:
1.修改普通用户密码
alter user scott identified by tiger;

2.重新生成管理员密码:orapwd 命令:
C:\>orapwd
Usage: orapwd file=<fname> password=<password> entries=<users> force=<y/n>

  where
    file - name of password file (mand),
    password - password for SYS (mand),
    entries - maximum number of distinct DBA and     force - whether to overwrite existing file (opt),OPERs (opt),
  There are no spaces around the equal-to (=) character.

  demo:
  C:\>orapwd file=D:\oracle\product\10.2.0\db_1\database\PWDtaink.ora password=123456 entries=10

//查询密码文件中(PWDtaink.ora)存在多少特权用户
select * from v$pwfile_users;


---------------------------------------------------------------
Oracle 三种验证机制:
1.操作系统验证
2.密码文件验证
3.数据库验证

linux  下oracle 的启动过程:
    lsnrctl start
    sqlplus sys/pwd as sysdba// 早期版本写法:sqlplus /nolog conn sys/pwd as sysdba
    startup

windows 下oracle 的启动过程:
    lsnrctl start
    oradim -starup -sid orcl

---------------------------------------------
/* 用户的创建 */

create user usertemp        ---创建用户
identified by usertemp        ---设置密码
default tablespace users    ---设置默认的表空间
temporary tablespace temp    ---设置临时的表空间
quota 50M on users        ---设置默认表空间限额为50M

---------------------------------------------
/* 限制用户 */
---用户加锁
alter user user_name account lock;

---用户解锁
alter user user_name account unlock;

---用户口令即刻失效
alter user user_name password expire

分享到:
评论

相关推荐

    Oracle笔记

    这个是我学习网上的视频做的oracle笔记,对于oracle一窍不通的菜鸟可能有用吧,大家有需要可以看看

    2011Oracle笔记(李兴华视屏教程笔记)

    标题“2011Oracle笔记(李兴华视屏教程笔记)”揭示了文档的用途,它是作为2011年李兴华Oracle教学视频课程的学习笔记。这种笔记通常包括了课程中的重点概念、Oracle数据库基础知识、实际操作案例以及配合视频教程的...

    史上最全的oracle笔记

    这篇史上最全的Oracle笔记将为你提供全面的学习指导。 一、数据库基础 数据库(DataBase)是存储数据的系统,Oracle数据库允许用户以表格的形式组织和管理数据。在Oracle中,数据主要以表的形式存在,表是数据库中...

    韩顺平oracle笔记(免费)

    ### 韩顺平Oracle笔记知识点详解 #### 一、Oracle认证及与其他数据库的比较 - **Oracle认证**:Oracle提供了多种级别的认证体系,包括OCA(Oracle Certified Associate)、OCP(Oracle Certified Professional)、...

    MLDN最经典的ORACLE笔记

    《MLDN最经典的ORACLE笔记》是李兴华老师倾力打造的一份全面而深入的Oracle学习资源,专为对数据库技术感兴趣的读者精心准备。Oracle作为全球广泛使用的数据库管理系统,其强大功能和复杂性使得深入理解和掌握Oracle...

    oracle笔记+资料.rar

    本资源“oracle笔记+资料.rar”包含了丰富的Oracle学习资料,适合不同水平的学习者,无论你是初学者还是资深DBA,都能从中受益。下面将详细解析其中可能涵盖的知识点。 1. **Oracle基础知识**:这部分内容可能会...

    oracle笔记创建和管理表

    oracle笔记创建和管理表,增加列,删除列,修改列,修改列名和数据类型和长度,修改表名等等操作,有代码案例!

    马士兵oracle笔记

    马士兵oracle笔记,浅显易懂。

    达内,tarena,oracle笔记,oraclePPT课件,达内oracle笔记

    在达内的Oracle笔记中,可能会详细讲解SELECT语句用于数据检索,INSERT、UPDATE、DELETE用于数据增删改,以及CREATE、ALTER、DROP用于数据库对象管理的语法和用法。 3. **数据库设计**:良好的数据库设计是确保系统...

    详细oracle 笔记

    oracle笔记!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    韩顺平老师oracle笔记

    根据给定的文件信息,以下是从“韩顺平老师oracle笔记”中提炼出的关键知识点,主要涉及Oracle数据库的基础概念、用户管理以及SQL*Plus的基本操作。 ### Oracle数据库基础 1. **Oracle数据库的角色与权限**: - *...

    Oracle 笔记 详解 资料 用例

    这份"Oracle笔记详解资料用例"涵盖了Oracle数据库的核心概念、安装配置、SQL语言、表和索引、存储结构、备份恢复、性能优化等多个方面,是学习和掌握Oracle数据库的宝贵资源。 首先,Oracle数据库的基础部分包括...

    oracle笔记html版本

    首先,Oracle笔记可能涵盖的基础概念包括数据库的结构,如表空间、段、区和块等,这些都是Oracle存储数据的基本单元。表空间是数据库中最大的逻辑存储单位,用于组织和存储数据文件。段是表空间内的逻辑存储结构,如...

    oracle笔记.docx

    在Oracle学习笔记中,我们关注的关键概念主要包括以下几个方面: 1. **数据缓冲区**:这是Oracle内存架构的重要组成部分,用于存储从磁盘数据文件中读取的数据。所有用户共享这个缓冲区,当数据被服务器进程读入后...

    Oracle课堂笔记(很全很详细的Oracle笔记)

    根据提供的信息,我们可以总结出以下关于Oracle的相关知识点: ### Oracle基础知识与分类 #### DDL (Data Definition Language) 数据定义语言 - **DDL** 主要用于创建、修改或删除数据库对象,如表、索引等。 ###...

    oracle笔记.rar

    这份“Oracle笔记”包含了对Oracle数据库系统的基本学习资料,非常适合初学者入门。 一、Oracle数据库基础 Oracle数据库是由Oracle公司开发的,它采用SQL语言进行数据操作,并支持分布式数据库、实时交易处理、...

    韩顺平最新Oracle笔记及PPT

    《韩顺平最新Oracle笔记及PPT》是针对Oracle数据库技术的一套全面的学习资源,由知名IT讲师韩顺平提供。这些资料包含了2011年韩顺平的最新教学内容,适合对Oracle有兴趣或者需要提升Oracle技能的IT专业人士。 ...

    oracle笔记.pdf

    其中,“i”在Oracle8i中表示增加了对Internet的支持,Oracle9i则是Oracle8i的稳定版本,而Oracle10g是基于网格计算技术的版本,Oracle11g是10g的稳定版本,Oracle12C则是支持云计算概念的最新版本。在初学者阶段,...

Global site tag (gtag.js) - Google Analytics