文档库 最新最全的文档下载
当前位置:文档库 › orcle

orcle

orcle
orcle

Oracle 发展史

Oracle 8i(I internet)

Oracle 9i

Oracle 10g(g网格)

Oracle 11g

Sys:超级管理员

System:普通管理员

Scott:一般用户//默认密码是tiger

Oracle是以用户为单位进行操作的

Mysql和sqlserver一库为单位进行操作

安装的时候没有给scott解锁是可以用以下命令解锁

Alter user scott identified by tiger accout unlock;

查看相应用户下的所有表

Select table_name from user_tables;

显示当前登录用户

Show user;

Oracle的命令的编辑方法:三种

Web的编辑方式:isqlplus

Sqlplusw:命令的方法

Plus:

权限高的用户可以访问权限低的用户表时,需给表名前加用户名:System 用户访问scott下的dept这个表时Select *from scott.dept; 数值型:number number(M,n)M精度n小数点位数

字符型:varchar2() 1-4000字节

日期型:date 日期默认日期格式;DD-MON-YYYY

获取当前时间sysdatess

Rowed:

查询几条信息

伪列rownum rowed

求1-5

Select rownum,ename from emp where rownum between 1 and 5;

求第三条到第五条

子查询

Oracle 常用的分页技术

子查询的rownum 必须起别名

Select *from (select rownum as nu,ename from emp)where nu between 3 and 5;

列的增删改(外键)

唯一约束

默认约束

外键约束(表级和列级)

Log表里的tid应该是cx里存在的id

外键:假设有表A和表B,表A是表B的父表,B里面的外键应该是A里面的主键或唯一键

如果表里面已存在信息,外键将不能创建成功

外键主键必须在建表时就考虑清楚

如果创建了外键,也没有建级联关系,必须先删除子表中关联的数据才能删除父表的内容。

表级:alter table 字表名add constraint 外键名称foreign key (关联的字段)references 父表名(字段)

列级:

主键自增长(序列)

Check约束

同意词

事务

视图

用户管理(创建用户,授权)

创建表(同mysql)

Sql语句的增删改查(同mysql)

数据库设计

1.博客数据库设计

2.电子商务网站的设计

连接

表连接:cross

等值连接:select 字段列表from lefttable[inner] join right on lefttable.字段=righttable.字段Select 字段列表from table1,table2 where table1.字段=table2.字段

自然连接

非等值连接

查询工资是1300到3000的员工姓名和部门名称

Select ename,dname,sal from emp join dept on emp.deptno=dapt.deptno where sal between 1300 and 3000;

左外连接

select 字段列表from lefttable left join right on lefttable.字段=righttable.字段

右外连接

select 字段列表from lefttable right join right on lefttable.字段=righttable.字段

全外连接

select 字段列表from lefttable full join right on lefttable.字段=righttable.字段

查询emp的员工信息和相应的部门名称

Select emp.*,DNAME from emp inner join dept on emp.DEPTNO=dept.DEPTNO;

Select emp.*,dname from emp,dept where emp.deptno=dept.deptno;

查询部门所有信息和部门下的所有员工信息

Select dept*,emp.*from emp join dept on emp.DEPTNO=dept.DEPTNO;

查询所有员工姓名和员工领导的姓名

Select a.ename,mgr,emp.ename from emp a join emp on a.mgr=emp.emptno;

查询有员工信息的部门名称和员工姓名,工资,奖金

Select dname,ename,sal,comm from emp join dept on emp.deptno=dept.deptno;

查询有员工信息的部门名称和员工姓名,工资和没有奖金的员工信息

Select dname,ename,sal,comm from emp join dept on emp.deptno=dept.deptno where comm. Is null;

查询有员工信息部门名称和员工姓名,工资,入职日期(将日期改为中文格式)

Select ename,sal,dname,to_char(hiredate,’yyyy-mm-dd’) as hirdate from emp join dept on emp.deptno=dept.deptno;

视图:view

语法:

Create view viewname

As

Select 语句

普通管理员下面去创建视图

一般用户必须去授权才能创建

使用视图

Select 字段列表from viewname;

序列:

自增长:

Mysql自增长(auto_increment)sqlserver(indentity(1,1))

Create table mytable(

Id number not null,

Name varchar2(10)

);

序列和表怎么联系起来(在插入数据时用序列调用nextval属性)

给表mytable创建一个序列

Create sequence myseq;

调用序列的属性nextval

Insert into mytable values(myseq.nextval,’aa’);

Create sequence squ_stu(序列名称);

属性

Nextval:返回当前值得下一个值

Currval:返回当前序列的值

创建用户

1.创建用户:只有管理员可以创建(服务器端创建,命令)

基本语法:create user username identified by password;

Creat user stu1109 identified by student;

2.授权

Grant creat session[提供登录权限],creat table,creat sequence,creat view to sty1207(用户名);

Grant connect,resource to stu1109;

事物的机制

1.ACID(原子性,一致性,永久性,隔离性)

事务的机制:银行(中间有任何一步出错,就会回滚到最原始的状态,如果没有错误,提交)

开始事务

Begin transcation

一条或多条Sql语句:如果没有错误

Commit

中间有任何一步出错

Rollback

存储过程(sqlserval)

锁(lock)

博客数据库的设计,所有的表的关联关系都写清楚

电子商务网站数据设计:(订单表,订单详细表)

orcle数据库安装详细教程(图解)

刚刚接触ORACLE的人来说,从那里学,如何学,有那些工具可以使用,应该执行什么操作,一定回感到无助。所以在学习使用ORACLE之前,首先来安装一下ORACLE 10g,在来掌握其基本工具。俗话说的好:工欲善其事,必先利其器。我们开始吧! 首先将ORACLE 10g的安装光盘放入光驱,如果自动运行,一般会出现如图1安装界面: 图1 单击“开始安装”,就可以安装ORACLE 10g,一般会检查系统配置是否符合要求,然后出现“Oracle DataBase 10g安装”对话框,如图2所示:

图2 在安装Oracle DataBase 10g时可以选择“基本安装”和“高级安装”两种方法。选择“基本安装”时,“Orac le主目录位置”用于指定Oracle DataBase 10g软件的存放位置;“安装类型”用于指定Oracle产品的安装类型(企业版、标准版和个人版)。如果选择“创建启动数据库”,那就要指定全局数据库名称和数据库用户的口令。 选择“高级安装”,单击“下一步”,会出现“指定文件对话框”,在源路径显示的是安装产品所在的磁盘路径;目标名称用于资定Oracle主目录所对应的环境变量,目标路径用于指定安装Oracle软件的目标安装路径。设置目标名称为:OraDb10g_home1,目标路径为: D:oracleproduct10.1.0db1。如图3:

图3 单击“下一步”,会加载Oracle产品列表,然后出现“选择安装类型”对话框;如图4:

图4 选择安装类型时一般选择“企业版”,单击“下一步”,会出现“选择数据库配置”对话框,如图5 :

Orcle LISTENER监听文件参数详解及Lsnrctl命令综述

# listener.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = D:\oracle\product\10.2.0\db_1) (PROGRAM = extproc) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = RX-01-07)(PORT = 1521)) ) ) 以上是本人本机上的一个监听文件,下面就该监听文件的各个参数的作用作个描述: LISTENER 指出一个监听器定义的起始点。它实际上是正被定义的当前监听器的名称。默认的名称是LISTENER。 DESCRIPTION 描述每个监听位置 ADDRESS_LIST 含有与监听器正在监听的那些位置有关的地址信息PROTOCOL 指定用于本监听位置的协议 HOST 保存监听器所驻留在的那台计算机的名称 PORT 含有监听器正在上面监听的地址 SID_LIST_LISTENER 定义配置监听器所针对的ORACLE服务的列表 SID_DESC 描述每个Oracel SID GLOBAL_DBNAME 标识全局数据库名称。本项应该与当前Oracle服务的init.ora文件中的SERVICE_NAMES项一致 ORACLE_HOME 给出服务器上Oracle可执行程序的位置 SID_NAME 含有用于本Oracle实例的Oracle SID的名称 Lsnrctl命令综述 Lsnrctl命令用来管理Oracle监听器,是一个命令行界面。想调用这个命令行工具,在命令行键入lsnrctl即可。可以在LSNRCTL>提示符下键入help来显示这些命令的一份清单。 Services 列举出服务的一个汇总表及为每个协议服务处理程序所建立和拒绝的连接信息个数 Start listener启动指定的监听器 Status listener显示指定监听器的状态

Oracle数据库基础

Oracle 数据库基础 数据库是我们安装完产品后建立的,可以在同一台主机上存在8i,9i,10g,11g等多个数据库产品,一套产品可以建立多个数据库,每个数据库是独立的。每个数据库都有自己的全套相关文件,有各自的控制文件、数据文件、重做日志文件、参数文件、归档文件、口令文件等等。 其中控制文件、数据文件、重做日志文件、跟踪文件及警告日志(trace files,alert files)属于数据库文件; 参数文件(parameter file)口令文件(password file)是非数据库文件 我们的表存储在数据库中 数据库不能直接读取 我们通过实例(instance)来访问数据库 数据库实例 实例由内存和后台进程组成 实例是访问数据库的方法 初始化参数控制实例的行为 一个实例只能连接一个数据库

启动实例不需要数据库 产品安装好 有初始化参数文件 就可以启动实例 与是否存在数据库无关 实例内存分为SGA 和PGA SGA:是用于存储数据库信息的内存区,该信息为数据库进程所共享。它包含Oracle 服务器的数据和控制信息,它是在Oracle 服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。 PGA:包含单个服务器进程或单个后台进程的数据和控制信息,与几个进程共享的SGA正相反,PGA 是只被一个进程使用的区域,PGA 在创建进程时分配,在终止进程时回收. 后台进程是实例和数据库的联系纽带 分为核心进程和非核心进程 当前后台进程的查看 SQL> select name,description from v$bgprocess where paddr<>'00'; NAME DESCRIPTION

第二章 Orcle数据库应用(上机操作)

Orcle数据库应用——技能训练上机练习1: 1.创建tp_orders表空间、创建tp_hr表空间CREATETABLESPACE tp_orders DATAFILE 'd:\data\tp_order01.dbf'SIZE10M AUTOEXTENDON; CREATETABLESPACE tp_hr DATAFILE 'd:\data\tp_hr01.dbf'SIZE10M AUTOEXTENDON; 2.创建A_oe用户、A_hr用户 -- Create the user createuser A_oe identifiedby bdqn defaulttablespace TP_ORDERS temporarytablespace TEMP; -- Grant/Revoke role privileges grantconnectto A_oe; grantresourceto A_oe; -- Create the user createuser A_hr identifiedby bdqn defaulttablespace TP_HR temporarytablespace TEMP; -- Grant/Revoke role privileges grantconnectto A_hr; grantresourceto A_hr;

3.用A_hr用户登录orcl,创建employee、dept两张表CREATETABLE employee /*-创建员工信息表-*/ (EMPNO NUMBER(4),--员工编号 ENAME VARCHAR2(10),--员工姓名 JOB VARCHAR2(9),--员工工种 MGR NUMBER(4),--上级经理编号 HIREDATE DATE,--受雇日期 SAL NUMBER(7,2),--员工薪水 COMM NUMBER(7,2),--福利 DEPTNO NUMBER(2)--部门编号 ); CREATETABLE DEPT ( DEPTNO NUMBER(2)PRIMARYKEY,--部门编号 DNAME VARCHAR2(14),--部门名称 LOC VARCHAR2(13)--地址 ); 4.将A_hr.employee表的访问权限授予A_oe用户 用system用户登录Orcl,将A_hr.employee表的访问权限授予A_oe 用户 grantSELECTON A_hr.employee to A_oe; 5. 使用A_oe登录orcl,访问A_hr.employee表

orcle

Oracle 发展史 Oracle 8i(I internet) Oracle 9i Oracle 10g(g网格) Oracle 11g Sys:超级管理员 System:普通管理员 Scott:一般用户//默认密码是tiger Oracle是以用户为单位进行操作的 Mysql和sqlserver一库为单位进行操作 安装的时候没有给scott解锁是可以用以下命令解锁 Alter user scott identified by tiger accout unlock; 查看相应用户下的所有表 Select table_name from user_tables; 显示当前登录用户 Show user; Oracle的命令的编辑方法:三种 Web的编辑方式:isqlplus Sqlplusw:命令的方法 Plus: 权限高的用户可以访问权限低的用户表时,需给表名前加用户名:System 用户访问scott下的dept这个表时Select *from scott.dept; 数值型:number number(M,n)M精度n小数点位数 字符型:varchar2() 1-4000字节 日期型:date 日期默认日期格式;DD-MON-YYYY 获取当前时间sysdatess Rowed: 查询几条信息 伪列rownum rowed

求1-5 Select rownum,ename from emp where rownum between 1 and 5; 求第三条到第五条 子查询 Oracle 常用的分页技术 子查询的rownum 必须起别名 Select *from (select rownum as nu,ename from emp)where nu between 3 and 5; 列的增删改(外键) 唯一约束 默认约束 外键约束(表级和列级) Log表里的tid应该是cx里存在的id 外键:假设有表A和表B,表A是表B的父表,B里面的外键应该是A里面的主键或唯一键 如果表里面已存在信息,外键将不能创建成功 外键主键必须在建表时就考虑清楚 如果创建了外键,也没有建级联关系,必须先删除子表中关联的数据才能删除父表的内容。 表级:alter table 字表名add constraint 外键名称foreign key (关联的字段)references 父表名(字段) 列级: 主键自增长(序列) Check约束 同意词 事务 视图 用户管理(创建用户,授权) 创建表(同mysql) Sql语句的增删改查(同mysql) 数据库设计 1.博客数据库设计 2.电子商务网站的设计 连接 表连接:cross 等值连接:select 字段列表from lefttable[inner] join right on lefttable.字段=righttable.字段Select 字段列表from table1,table2 where table1.字段=table2.字段 自然连接 非等值连接 查询工资是1300到3000的员工姓名和部门名称 Select ename,dname,sal from emp join dept on emp.deptno=dapt.deptno where sal between 1300 and 3000; 左外连接

oracle数据库工作原理

oracle工作原理 (2007-05-18 08:47:40) 转载▼ 分类:计算机技术 第一篇Oracle架构总览 先让我们来看一张图 这张就是Oracle 9i的架构全图。看上去,很繁杂。是的,是这样的。现在让我们来梳理一下: 一、数据库、表空间、数据文件 1.数据库 数据库是数据集合。Oracle是一种数据库管理系统,是一种关系型的数据库管理系统。 通常情况了我们称的“数据库”,并不仅指物理的数据集合,他包含物理数据、数据库管理系统。也即物理数据、内存、操作系统进程的组合体。 数据库的数据存储在表中。数据的关系由列来定义,即通常我们讲的字段,每个列都有一个列名。数据以行(我们通常称为记录)的方式存储在表中。表之间可以相互关联。以上就是关系模型数据库的一个最简单的描述。 当然,Oracle也是提供对面象对象型的结构数据库的最强大支持,对象既可以与其它对象建立关系,也可以包含其它对象。关于OO型数据库,以后利用专门的篇幅来讨论。一般情况下我们的讨论都基于关系模型。 2.表空间、文件 无论关系结构还是OO结构,Oracle数据库都将其数据存储在文件中。数据库结构提供对数据文件的逻辑映射,允许不同类型的数据分开存储。这些逻辑划分称作表空间。

表空间(tablespace)是数据库的逻辑划分,每个数据库至少有一个表空间(称作SYSTEM表空间)。 为了便于管理和提高运行效率,可以使用一些附加表空间来划分用户和应用程序。例如:USER表空间供一般用户使用,RBS表空间供回滚段使用。一个表空间只能属于一个数据库。 每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件(datafile)。一个数据文件只能属于一个表空间。在Oracle7.2以后,数据文件创建可以改变大小。创建新的表空间需要创建新的数 据文件。 数据文件一旦加入到表空间中,就不能从这个表空间中移走,也不能与其它表空间发生联系。 如果数据库存储在多个表空间中,可以将它们各自的数据文件存放在不同磁盘上来对其进行物理分割。在规划和协调数据库I/O请求的方法中,上述的数据分割是一种很重要的方法。数据库、表空间、文件之间的关系如下图所示: 二、数据库实例 为了访问数据库中的数据,Oracle使用一组所有用户共享的后台进程。此外,还有一些存储结构(统 称为System Gloabl Area,即SGA),用来存储最近从数据库查询的数据。数据块缓存区和SQL共享池(Shared SQL Pool)是SGA的最大部分,一般占SGA内存的95%以上。通过减少对数据文件的I/O次数,这些存储区域可以改善数据库的性能。 数据库实例(instance)也称作服务器(server),是用来访问数据库文件集的存储结构及后台进程的集合。一个数据库可以被多个实例访问(这是Oracle并行服务器选项)。实例与数据库的关系如下图所示: 决定实例大小及组成的参数存储的init.ora文件中(在9i中是spfile)。实例启动时需要读这个文件,并且在运行时可以由数据库管理员修改。对该文件的任何修改都只有在下一次启动时才启作用。实例的init.ora文件件通常包含实例的名字:如果一个实例名为orcl,那么init.ora文件通常被命名为initorcl.ora。另一个配置文件config.ora用来存放在数据库创建后就不再改变的变量值(如数据库的块 大小)。实例的config.ora文件通常也包含该实例的名字:如果实例的名字为orcl,则config.ora一般 将被命名为configorcl.ora。为了便于使用config.ora文件的设置值,在实例的init.ora文件中,该文件必须通过IFILE参数作为包含文件列出。

ORCLE数据库查询语句

/*1:查询书城所有图书信息*/ SPOOL D:\A\OUTPUT1.SQL; SELECT * FROM BOOKS; SPOOL OFF; /*2:查询书城所有图书的类别*/ SPOOL D:\A\OUTPUT2.SQL; SELECT DISTINCT CATEGORY FROM BOOKS; SPOOL OFF; /*3:查询类别为textbook的图书信息*/ SPOOL D:\A\OUTPUT3.SQL; SELECT * FROM BOOKS WHERE CATEGORY='textbook'; SPOOL OFF;

/*4:查询类别为romantic、cooking、politics的书名和作者*/ SPOOL D:\A\OUTPUT4.SQL; SELECT title, author FROM BOOKS WHERE category IN ('romantic','cooking','politics'); SPOOL OFF; /*5:查询当前价格最高的图书的定价*/ SPOOL D:\A\OUTPUT5.SQL; SELECT MAX(price) FROM pricing; SPOOL OFF; /*6:查询既买了id是101的图书,且购买时书价是20元的顾客id 及购买日期*/ SPOOL D:\A\OUTPUT6.SQL; SELECT cid, pdate FROM purchases WHERE BOOKID=101 AND PPRICE=20; SPOOL OFF;

/*7:查询每一位顾客的消费总额,设置消费总额别名为“COST”, 并按总额降序排列*/ SPOOL D:\A\OUTPUT7.SQL; SELECT CID,SUM(PPRICE) COST FROM purchases GROUP BY cid ORDER BY COST DESC; SPOOL OFF; /*8:查询消费总额>100元的顾客id及消费总额*/ SPOOL D:\A\OUTPUT8.SQL; SELECT CID,SUM(PPRICE) COST FROM purchases GROUP BY cid HAVING SUM(PPRICE)>'100'; SPOOL OFF; /*9:查询购买书名中含“Database”的图书的顾客id*/ SPOOL D:\A\OUTPUT9.SQL; SELECT DISTINCT CID

如何区分Oracle的数据库,实例,服务名,SID

什么是数据库,其实很简单,数据库就是存储数据的一种媒介。比如常用的文件就是一种,在Oracle10G中,数据的存储有好几种。第一种是文件形式,也就是在你的磁盘中创建一批文件,然后在这些文件中存储信息。第二种就是磁盘阵列形式,这个是什么意思呢,这个就是说明数据库不是存放为某个文件,而是把一个或者多个磁盘格式化成Oracle的一种格式了,等于整个磁盘就是存放Ora cle数据库的,不能作为别的用途。这样的优点是存储性能高,因为不再借助别的文件格式了,而是把整个磁盘都成为Oracle最适应的文件系统格式。当然还可能有别的形式,比如网络什么的。不过我们最常用的还是文件格式的,在文件格式中,数据库指的就是那些数据文件,控制文件以及REDO文件等等一系列文件。 而什么是Instance呢,Instance其实就是指的操作系统中一系列的进程以及为这些进程所分配的内存块。在Oracle中,我们可以新建一个Oracle的Insta nce,这个时候虽然有了进程还有SGA等一系列的内存快,但是这个时候并没有把数据库文件读取进来。所以只是一个实例,在后来,你可以通过命令手动或者自动地把数据库文件加载进我们的数据库Instance中,这个时候的数据库才可以让我们真正的开始访问操作。 所以说,数据库的应用如果想实现,数据库和数据库Instance是缺一不可的,如果只有数据库的那些文件,那么,只能代表数据在这个文件中,但是我们无法直接进行操作。而如果只有数据库Instance,那么我们虽然可以急性操作,但是也不知道操作哪些数据,操作生成的数据也无法保存等等。所以,当一个Or acle Instance真正Load了一个Oracle Database了以后,数据库才可以被我们使用。

Oracle数据库应用论文

Oracle数据库应用——模式对象论文 080311119 邵博伦 模式对象介绍 模式(schema)是数据的逻辑结构或者说模式对象的汇总。一个模式对应一个数据库用户,并且名字和数据库用户名相同。每个用户都有一个单独的模式。模式对象可以通过SQL 创建(DDL)和操作(DML)。 模式对象是数据的逻辑存储结构。数据对象和磁盘上保存其信息的物理文件并不一一对应。Oracle在数据库的一个表空间上保存模式对象。每个对象的数据物理的保存在表空间的一个或者多个数据文件上。对某些对象如表、索引、聚集来说,你可以指定在表空间的数据文件上Oracle可以分配多大的磁盘空间来存储这个对象。 模式和表空间没有什么联系:一个表空间可以包换来自不同模式的对象,模式对象可以包含在不同的表空间上。 表概述 表是Oracle数据库内数据存储的基本单位。数据是按照行和列来存储。你用一个表名(比如employees)、一系列列来定义表。你为每列指定一个列名(比如 employee_id,last_name和job_id等),一个数据类型(比如VARCHAR2,DATE,NUMBER)和一个宽度。宽度可以是数据类型(比如日期)预先定义好的。如果列是NUMBER类型,定义范围和精度就可以了。行是关联到一个记录的列信息的集合。 你可以指定表中每个列的规则。这些规则叫做完整性约束条件。NOT NULL就是一个完整性约束的例子。这个约束条件要求这列的每一行都要包含一个值。 你还可以指定表列在保存在数据文件之前将数据加密。加密阻止了越过数据库访问控制来直接使用操作系统工具查看数据文件的现象。 在你创建表之后,使用SQL语句插入行数据。表的数据就可以使用SQL查询、删除和更新。 表的建立: SQL>CREATE TABLE jxzy.switch( >OFFICE_NUM NUMBER(3,0) NOT NULL, >SWITCH_CODE NUMBER(8,0) NOT NULL, >SWITCH_NAME VARCHAR2(20) NOT NULL); 表的修改: SQL>ALTER TABLE jxzy.switch >ADD (DESC VARCHAR2(30)); 表的删除: SQL>DROP TABLE jxzy.switch >CASCADE CONSTRAINTS 表的压缩: Oracle的表压缩特性通过减少数据块中重复值来压缩数据。数据块(磁盘页)中保存的压缩数据是自包含的。就是说,一个数据块中需要重新创建解压缩的所有数据信息对本数据块是可用的(一个块上的信息需要解压缩才能读取,但同样的信息在另一块上不需要)。一个块上的所有行和列的重复值都在块开始的地方保存一次,这个地方也叫块的符号表。这些(重复)值出现的地方都替代为指向符号表的链接。 除了开始的符号表之外,压缩数据库块看起来和通常数据库块非常类似。适用于通常数据库块的所有数据库特性和函数也适合压缩数据库块。 包括表和实体化视图的数据库对象都可以压缩。对于分区表来说,你可以选择压缩部分或者全部分区。压缩属性可以用在表空间、表或者分区表。如果在表空间级别声明压缩属性,那么其上创建的所有表默认都是压缩的。你可以修改一个表(或者表空间、

新版精选ORCLE认证考试题库288题(含答案)

2020年ORCLE认证考试题库288题[含答案] 一、选择题 1.使用(1个字)命令可以显示表的结构信息 2.如果某个数据库的LGWR进程经常会因为检查点未完成而进入等待状态,则DBA应当采取(9个字)措施来解决该问题。 3.视图是否可以更新,这取决于定义视图的________语句,通常情况下,该语句越复杂,创建的视图可以更新的可能性也就______。 4.视图是否可以更新,这取决于定义视图的(1个字)语句,通常情况下,该语句越复杂,创建的视图可以更新的可能性也就(2个字)。 5.事务的ACID的特性包括、一致性、和永久性。 6.使用显示游标主要有4个步骤:声明游标、(4个字)、检索数据、(4个字)。 7.使用SQL*Plus的(1个字)命令可以将文件检索到缓冲区,并且不执行。 8.视图与数据库的表非常相似,用户也可以在视图中进行INSERT、UPDATE和DELETE 操作。通过视图修改数据时,实际上是在修改__中的数据;相应地,改变_______中的数据也会反映到____中。 9.使用LogMiner进行日志分析的基本步骤为:(7个字)、指定日志文件、(3个字)、查询输出结果。 10.视图与数据库的表非常相似,用户也可以在视图中进行INSERT、UPDATE和DELETE操作。通过视图修改数据时,实际上是在修改__中的数据;相应地,改变_______中的数据也会反映到____中。 11.使用(1个字)命令可以将缓冲区中的SQL命令保存到一个文件中,并且可以使用(1个字)命令运行该文件。 12.如果要获知索引的使用情况,可以通过查询(18个字)视图;而要获知索引的当前状态,可以查询(10个字)视图。

Oracle数据库的使用

实验一数据库系统的使用 1.实验目的 ●熟悉和掌握数据操作语言和数据查询语言; ●使用对象-关系SQL进行建模和查询 ●掌握用户、权限和角色的创建和管理,以及数据库审计 2.实验要求 ●独立完成实验内容; ●实验报告;(简单要求如下) 1)实验的整个过程(包括用户身份,SQL执行语句,SQL执行结果(截屏)) 2)回答实验中提出的问题 3)结果分析。 [注] 标有可选的实验可以不做。 3.实验内容 3.1 创建用户、角色 由系统管理员(admin)创建以下数据表:课程信息表CourseInfo,排课信息表ClassInfo,部门代码表DepartmentInfo,教师信息表TeacherInfo,学生信息表StudentInfo,选课信息表SelectiveInfo,保存在系统管理员的schema中。请按照文档lab1_DataModel.doc的表结构创建表。

实验步骤: 1)建立角色; 2)为角色分配权限; 3)建立密码管理和资源限制Profile文件; 4)建立用户; 5)为用户分配角色; 6)用户登录,执行相应的SQL操作。 3.2 权限管理及安全信息查询 1)系统管理员admin登录选课系统数据库,登录三次失败,第四次输入正确的密码进 行登录,会出现什么情况?为什么? 2)使teacher1具有创建数据表系统权限,以用户teacher1登录,创建一个部门代码表 DepartmentInfo作为系统管理员创建的选课信息表的备份; 3)用户teacher1登录,分配学生用户(你的名字)查看teacher1. DepartmentInfo记录 的权限;学生用户登录,查看teacher1. DepartmentInfo中的记录;〔可选〕 4)从数据字典中查看teacher1和学生用户的信息; 5)从数据字典查看teacher1可使用的数据表空间的空间大小信息。〔可选〕 6)取消用户teacher1创建数据表权限;取消学生用户查看teacher1. DepartmentInfo记

ORACLE数据库学习心得

ORACLE数据库结课论文 一个好的程序,必然联系着一个庞大的数据库网路... 今年我们学习了oracle数据库这门课程,起初的我,对这个字眼是要多陌生有多陌生,后来上课的时候听一会老师讲课,偶尔再跟上上机课,渐渐的学会了不少东西,但我感觉,我学到的仍是一些皮毛而已,怀着疑惑和求知的心态,我在网上搜索了关于oracle数据库的一些知识。 1.ORACLE的特点: 可移植性ORACLE采用C语言开发而成,故产品与硬件和操作系统具有很强的独立性。从大型机到微机上都可运行ORACLE的产品。可在UNIX、DOS、Windows等操作系统上运行。可兼容性由于采用了国际标准的数据查询语言SQL,与IBM的SQL/DS、DB2等均兼容。并提供读取其它数据库文件的间接方法。 可联结性对于不同通信协议,不同机型及不同操作系统组成的网络也可以运行ORAˉCLE数据库产品。 2.ORACLE的总体结构 (1)ORACLE的文件结构一个ORACLE数据库系统包括以下5类文件:ORACLE RDBMS的代码文件。 数据文件一个数据库可有一个或多个数据文件,每个数据文件可以存有一个或多个表、视图、索引等信息。 日志文件须有两个或两个以上,用来记录所有数据库的变化,

用于数据库的恢复。控制文件可以有备份,采用多个备份控制文件是为了防止控制文件的损坏。参数文件含有数据库例程起时所需的配置参数。 (2)ORACLE的内存结构一个ORACLE例程拥有一个系统全程区(SGA)和一组程序全程区(PGA)。 SGA(System Global Area)包括数据库缓冲区、日志缓冲区及共享区域。 PGA(Program Global Area)是每一个Server进程有一个。一个Server进程起动时,就为其分配一个PGA区,以存放数据及控制信息。 (3)ORACLE的进程结构ORACLE包括三类进程: ①用户进程用来执行用户应用程序的。 ②服务进程处理与之相连的一组用户进程的请求。 ③后台进程ORACLE为每一个数据库例程创建一组后台进程,它为所有的用户进程服务,其中包括: DBWR(Database Writer)进程,负责把已修改的数据块从数据库缓冲区写到数据库中。LGWR(Log Writer)进程,负责把日志从SGA中的缓冲区中写到日志文件中。 SMON(System Moniter)进程,该进程有规律地扫描SAG进程信息,注销失败的数据库例程,回收不再使用的内存空间。PMON (Process Moniter)进程,当一用户进程异常结束时,该进程负责恢复未完成的事务,注销失败的用户进程,释放用户进程占用的资源。

如何删除ORACLE数据库

软件环境: 1、Windows xp+ORACLE 8.1.7 2、ORACLE安装路径为:C:\ORACLE 实现方法: 1、开始->设置->控制面板->管理工具->服务 停止所有Oracle服务。 2、开始->程序->Oracle - OraHome81->Oracle Installation Products-> Universal Installer 卸装所有Oracle产品,但Universal Installer本身不能被删除 5、运行regedit,选择HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE,按del键删除这个入口。 6、运行regedit,选择 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,滚动 这个列表,删除所有Oracle入口。 7、运行refedit, HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Ap plication, 删除所有Oracle入口。 8、开始->设置->控制面板->系统->高级->环境变量 删除环境变量CLASSPATH和PATH中有关Oracle的设定 9、从桌面上、STARTUP(启动)组、程序菜单中,删除所有有关Oracle的组和图标 10、删除\Program Files\Oracle目录 11、重新启动计算机,重起后才能完全删除Oracle所在目录 12、删除与Oracle有关的文件,选择Oracle所在的缺省目录C:\Oracle,删除这个入 口目录及所有子目录,并从Windows 2000目录(一般为C:\WINNT)下删除以下文 件ORACLE.INI、oradim73.INI、oradim80.INI、oraodbc.ini等等。 13、WIN.INI文件中若有[ORACLE]的标记段,删除该段

Oracle数据库语句大全

Oracle数据库语句大全 一.入门部分 1.创建表空间 create tablespace schooltbs datafile ‘D:\oracle\datasource\schooltbs.dbf’ size 10M autoextend on; 2.删除表空间 drop tablespace schooltbs[including contents and datafiles]; 3.查询表空间基本信息 select *||tablespace_name from DBA_TABLESPACES; 4.创建用户 create user lihua identified by lihua default tablespace schooltbs temporary tablespace temp; 5.更改用户 alter user lihua identified by 123 default tablespace users; 6.锁定用户 alter user lihua account lock|unlock; 7.删除用户 drop user lihua cascade;--删除用户模式 8.oracle数据库中的角色 connect,dba,select_catalog_role,delete_catalog_role,execute_catalo g_role,exp_full_database,imp_full_database,resource 9.授予连接服务器的角色 grant connect to lihua; 10.授予使用表空间的角色 grant resource to lihua with grant option;--该用户也有授权的权限 11.授予操作表的权限 grant select,insert on user_tbl to scott;--当前用户 grant delete,update on https://www.wendangku.net/doc/2a1695647.html,er_tbl to scott;--系统管理员 二.SQL查询和SQL函数 1.SQl支持的命令: 数据定义语言(DDL):create,alter,drop 数据操纵语言(DML):insert,delete,update,select 数据控制语言(DCL):grant,revoke 事务控制语言(TCL):commit,savepoint,rollback 2.Oracle数据类型 字符,数值,日期,RAW,LOB 字符型 char:1-2000字节的定长字符

如何实现ORACLE数据库完整备份

如何实现ORACLE数据库完整备份 远程磁盘镜像是一种被广泛应用的数据保护技术,然而在对Oracle数据库进行备份的实际应用中,由于该技术本身所固有的局限,使得其无法很好地实现数据库的完整备份,为此,本文提出以Oracle的容灾技术Data Guard,来实现Oracle数据库的完整备份。 Data Guard是Oracle公司提出的数据库容灾技术,它提供了一种管理、监测和自动运行的体系结构,用于创建和维护一个或多个备份数据库。与远程磁盘镜像技术的根本区别在于,Data Guard 是在逻辑级,通过传输和运行数据库日志文件,来保持生产和备份数据库的数据一致性。一旦数据库因某种情况而不可用时,备份数据库将正常切换或故障切换为新的生产数据库,以达到无数据损失或最小化数据损失的目的,为业务系统提供持续的数据服务能力。 Data Guard体系结构 一个Data Guard环境可配置一个生产数据库和最多至9个备份数据库系统,生产和备份数据库之间通过Oracle Net技术互联,并且没有任何距离上的限制(Data Guard体系结构如图2所示)。 物理备份数据库物理上提供了与生产数据库在数据块级的一致性镜像。物理备份数据库是通过Redo Apply技术来保障数据镜像能力。 逻辑备份数据库通过SQL Apply(即Log Miner)技术,将接收到的日志文件还原成SQL语句,并在逻辑备份数据库上执行,从而达到数据一致性的目的。 Data Guard的保护模式

● 最大保护模式: 该模式以牺牲生产数据库性能为代价,换取无数据损失的能力。 ● 最大可用模式: 该模式也能提供无数据损失,对生产数据库的影响较小。 ● 最大性能模式: 该模式允许少量数据损失,但能为生产数据库提供最大性能。 与远程磁盘镜像技术比较 Data Guard和远程磁盘镜像技术的总体比较 远程磁盘镜像技术是存储层的数据保护方案,对于Oracle数据库而言,Oracle Data Guard提供了更有效、可行,更完备的数据库容灾方案。以下是两种方案的总体比较: 异步远程磁盘镜像技术的潜在问题 远程磁盘镜像技术可采用异步方式,达到降低网络延时、减轻对生产系统影响等目的。但用这种方式进行Oracle数据库的镜像,却存在一个潜在问题:无法保证写操作顺序的一致性(write-order consistency),导致出现数据坏块的可能性增大。最坏情况,可能导致备份数据库无法打开。 而Data Guard基于逻辑级,传输的是与业务逻辑完整性相关的日志文件。Data Guard是以日志文件为边界,会自动检验日志文件的完整性,并可进行断点日志文件的检查(log gap detection),通过FAL后台进程自动重传断点日志文件。因此,备份数据库的一致性会得到保证。 网络传输量分析

第四章Orcle 体系结构

第四章Oracle 体系结构 ORACLE数据库体系结构决定了oracle如何使用网络、磁盘和内存。包括实例(instance),文件(file)和进程(process不包括后台进程)三部分。 实例:每一个运行的ORACLE数据库与一个ORACLE实例(INSTANCE)相联系。每一次在数据库服务器上启动一数据库时,称为系统全局区(SYSTEM GLOBAL AREA)的一内存区(简称SGA)被分配,有一个或多个ORACLE进程被启动。该SGA 和 ORACLE进程的结合称为一个ORACLE数据库实例。一个实例的SGA和进程为管理数据库数据、为该数据库一个或多个用户服务而工作。 在ORACLE系统中,首先是实例启动,然后由实例装配(MOUNT)一数据库。在松耦合系统中,在具有ORACLE PARALLEL SERVER 选项时,单个数据库可被多个实例装配,即多个实例共享同一物理数据库。 Oracle 体系结构 1. ORACLE实例的进程结构和内存结构 1)进程结构 进程是操作系统中的一种机制,它可执行一系列的操作步。在有些操作系统中使用作业(JOB)或任务(TASK)的术语。一个进程通常有它自己的专用存储区。ORACLE进程的体系结构设计使性能最大。 ORACLE实例有两种类型:单进程实例和多进程实例。

单进程ORACLE(又称单用户ORACLE)是一种数据库系统,一个进程执行全部ORACLE代码。由于ORACLE部分和客户应用程序不能分别以进程执行,所以ORACLE的代码和用户的数据库应用是单个进程执行。 在单进程环境下的ORACLE 实例,仅允许一个用户可存取。例如在MS-DOS 上运行ORACLE 。 多进程ORACLE实例(又称多用户ORACLE)使用多个进程来执行ORACLE的不同部分,对于每一个连接的用户都有一个进程。 在多进程系统中,进程分为两类:用户进程和ORACLE进程。当一用户运行一应用程序,如PRO*C程序或一个ORACLE工具(如SQL*PLUS),为用户运行的应用建立一个用户进程。ORACLE进程又分为两类:服务器进程和后台进程。服务器进程用于处理连接到该实例的用户进程的请求。当应用和ORACELE 是在同一台机器上运行,而不再通过网络,一般将用户进程和它相应的服务器进程组合成单个的进程,可降低系统开销。然而,当应用和ORACLE运行在不同的机器上时,用户进程经过一个分离服务器进程与ORACLE通信。它可执行下列任务: ●对应用所发出的SQL语句进行语法分析和执行。 ●从磁盘(数据文件)中读入必要的数据块到SGA的共享数据库缓冲区(该块不在缓冲区时)。 ●将结果返回给应用程序处理。 系统为了使性能最好和协调多个用户,在多进程系统中使用一些附加进程,称为后台进程。在许多操作系统中,后台进程是在实例启动时自动地建立。一个ORACLE实例可以有许多后台进程,但它们不是一直存在。后台进程的名字为: DBWR 数据库写入程序 LGWR 日志写入程序 CKPT 检查点 SMON 系统监控 PMON 进程监控 ARCH 归档 RECO 恢复 LCKn 封锁 Dnnn 调度进程 Snnn 服务器 每个后台进程与ORACLE数据库的不同部分交互。 下面对后台进程的功能作简单介绍: DBWR进程:该进程执行将缓冲区写入数据文件,是负责缓冲存储区管理的一个ORACLE后台进程。当缓冲区中的一缓冲区被修改,它被标志为“弄脏”,DBWR的主要任务是将“弄脏”的缓冲区写入磁盘,使缓冲区保持“干净”。由于缓冲存储区的缓冲区填入数据库或被用户进程弄脏,未用的缓冲区的数目减少。当未用的缓冲区下降到很少,以致用户进程要从磁盘读入块到内存存储区时无法找到未用的缓冲区时,DBWR将管理缓冲存储区,使用户进程总可得到未用的缓冲区。

Oracle数据库配置

目录 1概述 (3) 1.1 适用范围 (3) 2ORACLE安全配置要求 (3) 2.1 账号 (3) 2.1.1按用户分配帐号 (3) 2.1.2删除或锁定无关帐号 (4) 2.1.3限制SYSDBA用户的远程登录 (5) 2.1.4用户权限最小化 (6) 2.1.5使用ROLE管理对象的权限 (6) 2.1.6控制用户属性 (7) 2.1.7启用数据库字典保护 (8) 2.2 口令 (9) 2.2.1静态口令认证的密码复杂度控制 (9) 2.2.2静态口令认证的密码生命周期 (10) 2.2.3静态口令认证的密码重复使用限制 (10) 2.2.4景泰口令认证的连续登录失败的帐号锁定策略 (11) 2.2.5更改数据库默认帐号的密码 (12) 2.2.6操作系统级的帐户安全策略 (14) 2.3 日志 (15) 2.3.1登录日志功能 (15)

2.3.2DDL日志 (15) 2.3.3数据库审记 (16) 2.4 其他 (17) 2.4.1VPD与OLS (17) 2.4.2Data Vault (18) 2.4.3Listener设定密码保护 (19) 2.4.4设定信任IP集 (20) 2.4.5加密网络传输 (21) 2.4.6断开超时的空闲远程连接 (21) 2.4.7限制DBA组中的操作系统用户数量 (22)

1概述 1.1适用范围 本规范明确了Oracle数据库安全配置方面的基本要求。 2ORACLE安全配置要求 本规范所指的设备为ORACLE数据库。本规范提出的安全配置要求,在未特别说明的情况下,均适用于ORACLE数据库。 本规范从ORACLE数据库的认证授权功能、安全日志功能,和其他自身安全配置功能提出安全要求。 2.1账号 ORACLE应提供账号管理及认证授权功能,并应满足以下各项要求。 2.1.1按用户分配帐号

Oracle_11g口令过期

今天发现服务器上的Oracle11g突然登录不上去了,提示ORA-28002错误,说是口令过期。 不当DBA还真不知道Oracle有这神秘功能。 上网上一查,有类似遭遇的朋友在论坛上求助,人家让他找DBA。汗。。。 好在有的DBA乐于分享,终于找到了解决方案: 1. 用DBA账户登录SQL PLUS。我用的是sysman。 2. 系统会提示口令失效,但是会马上让你重置新密码。 3. 重置之后,进入SQL PLUS控制台。 4. 查看口令失效用户的profile文件 SQL>SELECT username,profile FROM dba_users; EM(Web界面的控制台):服务器>用户,查看口令失效的用户对应的概要文件,这里假设为DEFAUL T,下同。 5. 查看对应的概要文件的口令有效期设置 SQL>SELECT*FROM dba_profiles WHERE profile='DEFAULT'AND resource_nam e='PASSWORD_LIFE_TIME'; EM(Web界面的控制台):服务器>概要文件>选择刚刚查到的概要文件DEFAULT>查看,查看口令下面的有效期值。 6.将口令有效期默认值180天修改成“无限制”(此项要慎重!除非你真得不想要这个密码失效的机制!) SQL>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; EM:服务器>概要文件>选择刚刚查到的概要文件DEFAULT>编辑>口令,在有效期输入或选择你需要的值,保存。 该参数修改实时生效。 出于数据库安全性考虑,不建议将PASSWORD_LIFE_TIME值设置成UNLIMITED,即建议客户能够定期修改数据库用户口令。

相关文档