SQL Fundamentals || DCL(Data Control Language) || 用户管理&Profile概要文件
语句 |
解释 |
Create user |
Creates a user(usually performed by a DBA) |
Grant |
Gives other users privileges to access the objects |
Create role |
Creates a collection of privileges, usually performed by a DBA |
Alter user |
Changes a user's password |
Revoke |
Removes privileges on an object from users |
用户管理
- 用户属于Oracle对象,在Oracle 12C中创建用户要以C##开头;
- 用户可以通过profile文件进行管理。
如何控制用户访问
1、身份验证,认证:Authentication
2、授权:Authorization
3、审计:Audit
通过数据字典查询
- 用户:dba_users
- 每个用户空间使用配额:dba_ts_quotas
- 查询profile文件:dba_profiles
创建用户
虽然在Oracle数据库之中已经提供了大量的用户,但是从安全以及维护的角度来讲,往往需要创建属于自己的用户,如果要创建用户可以利用CREATE USER语法来完成。
语法
CREATE USER 用户名 IDENTIFIED BY 密码 [DEFAULT TABLESPACE 表空间名称] [TEMPORARY TABLESPACE 表空间名称] [QUOTA 数字 [K | M] | UNLIMITED ON 表空间名称 QUOTA 数字 [K | M] | UNLIMITED ON 表空间名称 ...] [PROFILE 概要文件名称 | DEFAULT] [PASSWORD EXPIRE] [ACCOUNT LOCK | UNLOCK] |
组成如下:
CREATE USER 用户名 IDENTIFIED BY 密码: |
创建用户同时设置密码,但是用户名和密码不能是Oracle的保留字(例如:CREATE、DROP等)也不能以数字开头(如果要设置为数字,需要将数字使用“"”声明,例如:"999777"); |
DEFAULT TABLESPACE 表空间名称: |
用户存储默认使用的表空间,当用户创建对象没有设置表空间时,就将保存在此处指定的表空间下,这样可以和系统表空间进行区分; |
TEMPORARY TABLESPACE 表空间名称: |
用户所使用的临时表空间: |
QUOTA 数字 [K | M] | UNLIMITED ON 表空间名称: |
用户在表空间上的使用限额,可以指定多个表空间的限额,如果设置为“UNLIMITED”表示不设置限额; |
PROFILE 概要文件名称 | DEFAULT: |
用户操作的资源文件,如果不指定则使用默认配置资源文件; |
PASSWORD EXPIRE: |
用户密码失效,则在第一次使用时必须修改密码; |
ACCOUNT LOCK | UNLOCK: |
用户是否为锁定状态,默认为“UNLOCK”。 |
创建表空间(数据表空间和临时表空间) |
CREATE TABLESPACE g_data DATAFILE '/u01/app/oracle/oradata/ora01/ g_data01.dbf' SIZE 10M , '/u01/app/oracle/oradata/ora01/ g_data02.dbf' SIZE 10M AUTOEXTEND on NEXT 2M LOGGING; CREATE TEMPORARY TABLESPACE g_temp TEMPFILE '/u01/app/oracle/oradata/ora01/g_temp01.dbf' SIZE 50M , '/u01/app/oracle/oradata/ora01/g_temp02.dbf' SIZE 50M AUTOEXTEND on NEXT 2M; |
创建一个新用户 |
CREATE USER C##wendy IDENTIFIED BY wendypasswd DEFAULT TABLESPACE G_DATA TEMPORARY TABLESPACE G_TEMP QUOTA 30M ON G_DATA QUOTA 20M ON users ACCOUNT UNLOCK PASSWORD EXPIRE; |
概要文件
- 概要文件是一组命名了的口令和资源限制文件,管理员利用它可以直接限制用户的资源访问量或用户管理等操作。
- 创建概要文件
- CREATE PROFILE 概要文件名称 LIMIT 命令(s)
- 第一组:资源限制命令
SESSION_PER_USER 数字 | UNLIMITED | DEFAULT: |
允许一个用户同时创建SESSION的最大数量; |
CPU_PER_SESSION 数字 | UNLIMITED | DEFAULT: |
每一个SESSION允许使用CPU的时间数,单位为毫秒; |
CPU_PER_CALL 数字 | UNLIMITED | DEFAULT: |
限制每次调用SQL语句期间,CPU的时间总量; |
CONNECT_TIME 数字 | UNLIMITED | DEFAULT: |
每个SESSION的连接时间数,单位为分; |
IDLE_TIME 数字 | UNLIMITED | DEFAULT: |
每个SESSION的超时时间,单位为分; |
LOGICAL_READS_PER_SESSION 数字 | UNLIMITED | DEFAULT: |
为了防止笛卡尔积的产生,可以限定每一个用户最多允许读取的数据块数; |
LOGICAL_READS_PER_CALL 数字 | UNLIMITED | DEFAULT: |
每次调用SQL语句期间,最多允许用户读取的数据库块数; |
- 第二组:口令限制命令
FAILED_LOGIN_ATTEMPTS 数字 | UNLIMITED | DEFAULT: |
当连续登陆失败次数达到该参数指定值时,用户被加锁; |
PASSWORD_LIFE_TIME 数字 | UNLIMITED | DEFAULT: |
口令的有效期(天),默认为UNLIMITED; |
PASSWORD_REUSE_TIME 数字 | UNLIMITED | DEFAULT: |
口令被修改后原有口令隔多少天后可以被重新使用,默认为UNLIMITED; |
PASSWORD_REUSE_MAX 数字 | UNLIMITED | DEFAULT: |
口令被修改后原有口令被修改多少次才允许被重新使用; |
PASSWORD_VERIFY_FUNCTION 数字 | UNLIMITED | DEFAULT: |
口令效验函数; |
PASSWORD_LOCK_TIME 数字 | UNLIMITED | DEFAULT: |
帐户因FAILED_LOGIN_ATTEMPTS锁定时,加锁天数; |
PASSWORD_GRACE_TIME 数字 | UNLIMITED | DEFAULT: |
口令过期后,继续使用原口令的宽限期(天)。 |
- 定义一个概要文件
CREATE PROFILE IDLE_TIME SESSIONS_PER_USER FAILED_LOGIN_ATTEMPTS PASSWORD_REUSE_TIME PASSWORD_GRACE_TIME 6 ; |
- 本概要文件的组成说明如下所示:
CPU_PER_SESSION 10000: |
每个SESSION所允许占用CPU的最长时间为:100秒; |
LOGICAL_READS_PER_SESSION 20000: |
每个SESSION最多允许读取20000个数据块; |
CONNECT_TIME 60: |
每个SESSION最多允许连接60分钟; |
IDLE_TIME 30: |
一个SESSION最大空闲时间为30分钟; |
SESSIONS_PER_USER 10: |
一个用户最多可以创建10个SESSION连接; |
FAILED_LOGIN_ATTEMPTS 3: |
每个用户登陆错误为3次; |
PASSWORD_LOCK_TIME UNLIMITED: |
超过3次登录错误,则密码被长期锁定; |
PASSWORD_LIFE_TIME 60: |
每60天修改一次密码; |
PASSWORD_REUSE_TIME 30: |
为防止新旧口令一致,所以旧口令在30天之后才可以继续使用; |
PASSWORD_GRACE_TIME 6 : |
口令失效后,给用户6天可以继续使用旧口令的宽限期。 |
创建用户时指定概要文件 |
CREATE USER c##wendy IDENTIFIED BY hello PROFILE c##wendy_profile ; |
配置已存在用户使用的概要文件 |
ALTER USER c##wendy PROFILE C##WENDY_PROFILE; |
修改概要文件 |
ALTER PROFILE c##wendy_profile LIMIT CPU_PER_SESSION 1000 PASSWORD_LIFE_TIME 10 ; |
如果不需要使用PROFILE文件,也可以删除,但是如果此时已在一个PROFILE中定义了用户,就需要加上CASCADE参数.删除掉 |
DROP PROFILE c##wendy_profile CASCADE; |
维护用户
修改c##wendy的密码为:hellojava |
ALTER USER c##wendy IDENTIFIED BY hellojava ; |
将c##wendy用户设置为锁定状态 |
ALTER USER c##wendy ACCOUNT LOCK ; |
将c##wendy用户解锁 |
ALTER USER c##wendy ACCOUNT UNLOCK ; |
让c##wendy密码失效 |
ALTER USER c##wendyPASSWORD EXPIRE ; |
修改c##wendy用户的表空间配额 |
ALTER USER c##wendy QUOTA 20M ON system QUOTA 35M ON users ; |
删除用户
当某一个用户不再需要时,可以通过DROP语句进行用户的删除。
删除用户语法
DROP USER 用户名 [CASCADE] ;
删除c##wendy用户 |
DROP USER c##wendy ; |
SQL Fundamentals || DCL(Data Control Language) || 用户管理&Profile概要文件的更多相关文章
- SQL Fundamentals || DCL(Data Control Language) || 系统权限&对象权限管理(GRANT&REVOKE)
SQL Fundamentals || Oracle SQL语言 语句 解释 Create user Creates a user(usually performed by a DBA) Grant ...
- SQL Fundamentals || DCL(Data Control Language) || 角色ROLES
SQL Fundamentals || Oracle SQL语言 语句 解释 Create user Creates a user(usually performed by a DBA) Grant ...
- 在CDS(Core Data Services)中使用DCL(Data Control Language)
最近,我在玩ABAP CDS视图,并且遇到了一些权限方面的挑战.我在网上没看到有多少有关CDS开发的文档,因为它是个相当新的东西.因此,我决定写下这篇博客,也许我的想法可以帮助到一些人. 和你已经意识 ...
- .Oracle固定执行计划之SQL PROFILE概要文件
1. 引子Oracle系统为了合理分配和使用系统的资源提出了概要文件的概念.所谓概要文件,就是一份描述如何使用系统的资源(主要是CPU资源)的配置文件.将概要文件赋予某个数据库用户,在用户连接并访问 ...
- Oracle的学习一:安装与卸载、sql *plus常用命令、Oracle用户管理
1.为什么学习oracle? 性能优越: 小型数据库 中型数据库 大型数据库 acess.foxbase mysql.sql server.informix sybase.oracle.db2 复杂量 ...
- 四、oracle 用户管理(Profile)
oracle 用户管理 :profile + tablespace + role + user 一.使用profile管理用户口令概述:profile是口令限制,资源限制的命令集合,当建立数据库时, ...
- Linux命令(七)Linux用户管理和修改文件权限
1. 用户管理 1.1 创建用户/设置密码/删除用户 (-m很重要,自动添加用户家目录) 创建用户组dev, 给用户组dev新建xiaoqin用户,给新用户设置密码! 1.2 查看用户信息 1.3 设 ...
- SQL Fundamentals || Oracle SQL语言
对于SQL语言,有两个组成部分: DML(data manipulation language) 它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样,这4条命令是用来对数据 ...
- LINUX用户管理——/etc/passwd文件详解
输入vi /etc/passwd 可以查看此文件的内容 .本机内容如下: [root@localhost ~]# vi /etc/passwdroot:x:0:0:root:/root:/bin/ ...
随机推荐
- Javascript获取IFrame内容(兼容IE&FF)
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://wintys.blog.51cto.com/425414/123303 作者: W ...
- 【代码审计】CLTPHP_v5.5.3前台XML外部实体注入漏洞分析
0x01 环境准备 CLTPHP官网:http://www.cltphp.com 网站源码版本:CLTPHP内容管理系统5.5.3版本 程序源码下载:https://gitee.com/chichu/ ...
- 如何关闭Struts2的webconsole.html
出于安全目的,在禁用了devMode之后,仍然不希望其他人员看到webconsole.html页面,则可以直接删除webconsole.html 的源文件, 它的位置存在于: 我们手工删除 strut ...
- Linux ping 命令
ping命令用来测试与目标主机的连通性,常见用法如下: [root@localhost ~]$ ping www.baidu.com # 对目标主机域名进行连通性测试 [root@localhost ...
- JavaScript Promise迷你书(中文版)
最近,发现了一个很不错的关于Promise介绍的迷你电子版书,分享给大家: http://liubin.org/promises-book/#chapter4-advanced-promise (篇幅 ...
- 使用java发送QQ邮件
使用java发送邮件的时候,需要先下载两个jar包,连接如下: JavaMail mail.jar 1.4.5 JAF(版本 1.1.1) activation.jar 然后将这连个包导入,博主用的是 ...
- 《Lua程序设计》第1章 开始 学习笔记
1.1 程序块(chunk)每段代码(例如一个源代码文件或在交互模式中输入的一行代码),称为一个程序块.若使用命令行参数-i来启动Lua解释器,那么解释器就会在运行完指定程序块后进入交互模式.dofi ...
- intellij2016.03激活
激活的时候采用server的方式 :http://jetbrains.tech
- PCL—低层次视觉—关键点检测(iss&Trajkovic)
关键点检测往往需要和特征提取联合在一起,关键点检测的一个重要性质就是旋转不变性,也就是说,物体旋转后还能够检测出对应的关键点.不过说实话我觉的这个要求对机器人视觉来说是比较鸡肋的.因为机器人采集到的三 ...
- javah生成jni头文件时报错 Error: cannot access android.support...
javah生成jni头文件时报错: Error: cannot access android.support.v7.app.AppCompatActivity class file for andro ...