`

oracle---用户管理

阅读更多
sys是超级管理员,他比system多了一个权限---创建数据库create database

日常对oracle管理过程中,使用system就够了

在删除用户时,注意 如果要删除的用户,已经创建了表,那么就需要在删除时带一个参数
cascade---把表也会删掉

创建用户: create user mytest identified by m123;
修改密码: passw[ord]:如果是修改自己的密码,直接打这个命令就可以,如果要修改其他用户的密码,需要用sys/system登录


变成system用户,然后授权给xiaoming 
grant connect to xiaoming. (授予了一个用户(权限的集合)给小明)
revoke connect from xiaoming(不过注意的是如果是scott授予的权限只能由scott收回,即便是sys也不能收回,解铃还须系铃人)


权限:
系统权限----描述的是一个用户对数据库访问的权限,比如:建库,建表,建索引,登陆数据库(create session),修改密码。。

对象权限----用户对其他用户的数据对象(表,视图,存储过程,触发器,序列,同义词,连函数都叫做数据对象,还有package)访问权限
比如:insert,update,delete,select,create index ,all(这个表示对这张表的所有权限)......
授权的语法: grant select on emp to xiaoming



角色:
预定义角色---
常用的有connect角色
dba 角色--这个角色不要授给普通用户
resource---他可以让被授予的用户在任何一个表空间建表

自定义角色


select * from scott.emp; //注意这里的scott是方案的意思

如果小明可以查询scott的表,而且还希望小明可以把这个权限继续给其他人,这叫做权限的传递
--如果是对象权限,那么就加入with grant option
grant all on emp to xiaoming with grant option
---如果是系统权限
system给xiaoming权限时:
grant connect to xiaoming with admin option(注意这里connect是系统权限的集合)

如果scott把xiaoming对emp表的查询权限回收了,那么xiaohong还有没有权限呢?
答案是: 没有。。。。株连九族


使用profile管理用户密码(又称为口令)
profile----放在前面的文件,也就是你对数据库操作前,数据库先读这个文件,从而在登录的时候就对用户进行限制。。。

1。账户锁定----锁定登录次数等。。
例子:指定tea 这个用户最多只能尝试3次登录,锁定时间为2天
create profile lock_account limit failed_login_attempts 3 
password_lock_limit 2;(创建profile文件,文件名是自己取的lock_account)
alter user tea profile lock_account;(最少也要锁定1天,不能精确到时,分,秒),改变用户tea的登录前文件为lock_account,可能先前的登录前文件是空文件嘛

(2)
解锁:
alter user tea account unlock;  (alter可以理解为改变用户的状态)改变用户tea的账户状态为解锁状态


(3)
为了让用户定期修改密码,可以使用终止口令的指令来完成,
同样这个命令也需要dba身份,这个需求对高级管理员来说有用对普通用户价值不大
例子:给前面创建的用户tea创建一个profile文件,要求该用户每隔10天要修改自家的登录密码,宽限期为2天

create profile myprofile limit password_life_time 10 password_grace_time 2;(从第十天就开始警告你,要你改密码,如果第13天还没改的话,以前的密码也失效了)
alter user tea profile myprofile;

删除profile...
drop profile password_history [cascade]

文件操作命令:
start 和@ 运行sql脚本
sql>@ d:\a.sql

edit:编辑sql 脚本
sql>edit d:\a.sql

spool:可以将sql*plus屏幕上的内容输出到指定文件中
sql> spool d:\a.sql 并输入sql>spool off


习题:
1。创建用户tea,stu,并给这两个用户resource,connect角色
2。使用scott用户吧对emp表的select 权限给tea
使用tea查询scott的emp表
使用scott用户吧对emp表的所有权限赋给tea
使用tea更新/删除/插入scott的emp表
使用scott收回权限

3。想办法将让tea吧自己拥有的对scott.emp的权限转给stu
使用stu查询scott用户的emp表
使用tea收回给stu的权限

分享到:
评论

相关推荐

    oracle-xe-11.2.0-1.0.x86_64.rpm.zip

    RPM 包含了 Oracle XE 的所有必要组件和配置文件,使得用户能够在支持 RPM 的操作系统上便捷地安装和管理 Oracle 数据库。 "oracle-xe-11.2.0" 这个标签强调了这个版本的具体信息,Oracle XE 11.2.0 是在 2011 年...

    安装oracle11gR2数据库环境快速准备神器oracle-rdbms-server-11gR2-preinstall

    2. **创建Oracle用户和组**:数据库服务通常以特定的用户身份运行,这个工具会自动创建名为"oracle"的用户和相应的用户组,为数据库提供安全的运行环境。 3. **配置内核参数**:根据Oracle的最佳实践,工具会自动...

    oracle-database-server-12cR2-preinstall

    3. **用户和组设置**:创建并配置Oracle相关的用户和组,例如`oracle`用户和`dba`组,这些都是安装数据库时必需的。 4. **权限和安全配置**:执行必要的权限设置,确保敏感数据的安全,并遵循Oracle的最佳实践。 5...

    oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm

    2. **sqlplus**:这是一个命令行工具,允许用户执行SQL查询和PL/SQL块,进行数据库管理。 3. **tnsnames.ora**:这是一个配置文件,定义了如何连接到不同的数据库服务,包括主机名、端口号和服务名等信息。 安装...

    geoserver-2.13.2-oracle-plugin.zip

    总的来说,GeoServer 2.13.2与Oracle插件的结合,为用户提供了一套强大的地理空间数据发布平台,无论你是GIS专业人士还是初学者,都可以通过这个组合轻松地管理和分享地理信息。通过学习和掌握GeoServer的使用,以及...

    oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm

    通过SQL*Plus,用户可以查询、更新数据,执行脚本,管理用户权限等。 3. **tnslsnr**: TNS监听器(TNS Listener)是Oracle数据库网络服务的重要组成部分,它负责接收客户端的连接请求,然后转发到相应的数据库实例...

    sqlplus 11.2 安装包oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm

    1. **SQL*Plus**:SQL*Plus是Oracle数据库的一个命令行接口,它允许用户输入SQL和PL/SQL语句来查询、操作和管理数据库。通过SQL*Plus,你可以执行脚本、创建报告、进行数据操作以及管理数据库对象,如表、视图、存储...

    oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64/sqlplus/devel

    Oracle Instant Client是Oracle公司提供的一款轻量级的数据库连接工具,它允许用户在不安装完整Oracle数据库的情况下,进行数据查询、开发和管理。这个特定的版本,“oracle-instantclient11.2-basic-11.2.0.4.0-1....

    oracle-instantclient.11.2.zip

    这个"oracle-instantclient.11.2.zip"压缩包包含了版本11.2的Instant Client,适用于那些希望在不安装完整Oracle数据库客户端的情况下进行数据库交互的用户。以下是对这个组件的详细介绍以及如何使用Navicat进行连接...

    oracle-instantclient-12.2.0.1.0-1.x86_64的rpm格式

    使用`yum`或`dnf`(在某些系统上)这样的前端工具,用户可以方便地安装这个Oracle Instant Client的RPM包。 5. **安装与配置**: 安装Oracle Instant Client时,首先需要确保系统中已经安装了必要的依赖库。然后,...

    oracle-instantclient11.2-devel-11.2.0.3.0-1.x86_64.zip

    用户可以通过RPM工具来安装、升级或卸载这个组件,简化了部署和管理过程。 6. 安装和配置: 在Linux系统中,通常需要先安装依赖(如libaio和ldap),然后使用`rpm`命令安装RPM包,并通过设置环境变量(如ORACLE_...

    oracle-support oracleasmlib kmod-oracleasm包

    这包括了安全更新、bug修复和性能改进,确保了用户可以在最新和最稳定的Linux环境中运行Oracle数据库。 安装和配置Oracle ASMLib和Kmod-OracleASM的过程通常涉及以下步骤: 1. 安装必要的包:使用`yum install`命令...

    cx_Oracle-6.0b2-py3.6-win32.rar

    用户可以通过pip或者其他方式安装这个whl文件,以便在Python环境中使用cx_Oracle。 首先,cx_Oracle模块的安装非常简单,只需要确保Python环境已经配置好Oracle客户端环境,然后使用pip命令即可完成安装: ```bash ...

    twp-oracle-database-in-memory-2245633-zhs.pdf

    Oracle Database In-Memory还能够自动优化数据,提供用户定义的自动数据优化(ADO)策略,以及自动内存管理功能,从而为用户提供智能化的数据管理体验。 对于RAC(Real Application Clusters)的支持,使得Oracle ...

    oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.rar

    - **用户管理和权限控制**:管理用户账户,分配角色和权限。 在使用Oracle Instant Client时,需要注意以下几点: - **兼容性**:确保你的Linux发行版与RPM包兼容,并且Oracle Instant Client版本与你要连接的...

    oracle-instantclient11.2-devel-和-sqlplus.rpm.zip

    通过这个工具,用户可以直接与Oracle数据库进行交互,执行查询、创建和修改数据库对象等操作。 2. `oracle-instantclient11.2-devel-11.2.0.4.0-1.i386.rpm`:这是Oracle Instant Client的开发包,包含头文件和库,...

    liunx oracle-instantclient9版本basic、sqlolus、tool安装包

    在本例中,我们讨论的是Oracle Instant Client的9版本,包括了`basic`、`sqlplus`和`tools`组件,这将帮助Linux用户远程访问和管理Oracle数据库。 1. **Oracle Instant Client - Basic**: Oracle Instant Client的...

Global site tag (gtag.js) - Google Analytics