`

oracle基础

阅读更多
1 oracle数据库基础

Oracle数据库简介

Oracle数据库特点

Oracle会话: Oracle客户端与服务端进行连接,相应的用户进程与服务端进程之间的通信称为会话(Session)
            当用户与服务器建立连接时创建会话,当用户与服务器断开连接时关闭会话.

Oracle安装

Oracle相关服务

Oracle服务说明:
OracleServiceSID
      该服务启动系统标识符为SID的数据库实例,其中 SID 是在安装时输入的数据库名称

OracleHOME_NAMETNSListener
该服务启动数据库服务器的监听器,监听器接受来自客户端应用程序的连接请求
若监听器未启动,则客户端将无法连接到数据库服务器

OracleDBConsoleorcl
      负责在window下启动 Oracle企业管理器,从10g开始引入该服务,
      也是从10g开始oracle的企业管理器从客户端形式变成浏览器操作模式
OracleOraDb10g_home1iSQL*Plus
      浏览器模式管理数据库:http://127.0.0.1:5560/isqlplus/   

OracleJobSchedulerORCL
      数据库工作日程调度,一般没有安排工作日程就不需要启动,为什么默认是禁用?因为启动后会占用很大的系统资源。

Oracle网络配置:

              D:\oracle\network\ADMIN
              listener.ora  服务器端配置监听器
              tnsnames.ora  客户端配置网络服务名
             
Oracle默认用户:
Sys 超级管理员,拥有数据库管理的最高权限。
    System  系统管理员,拥有数据库系统和用户管理的权限。
    Scott   测试用户。
******************************************************************    

  Oracle的逻辑结构和物理结构:?????????????、

******************************************************************
2 sql*plus工具的使用 (dos)

sql*plus概念
sql*plus登录Oracle

sql> sqlplus "sys/sys as sysdba"
sql> sqlplus "/ as sysdba"
sql> sqlplus "system/oracle"
sql> sqlplus "scott/tiger"

sql> sqlplus /nolog;  //表示使用SQL*PLUS开始,并没有登录到oracle数据库,需要使用connect连接oracle数据库
sql> connect sys/sys as sysdba
sql> sqlplus scott/tiger@tns_name//指定数据库连接标识符orcl


sql*plus常用命令
Connect/conn:切换用户连接
Spool:假脱机文件(将操作信息输出到文件中:spool----开始到sql>spool off;之间的数据--一次会话结束)。
Spool 日志名称;(create/replace/append)
Spool off;
Desc:查看表(对象)结构命令,如:desc 表名
describe emp;
@:执行一个SQL脚本命令如:@ 脚本路径 .sql
-------------@ e:\xxx.sql 注意文件路径不能出现空格
start:执行一个SQL脚本命令,如start 脚本路径
@@:在一个脚本文件中执行另一个脚本

********************************************************************
3 SQL语言(DDL,DCL) (dos)

SQL概念: Strutcted Query Language:结构化查询语言

SQL四个部分:
1.DDL(Data Definition Language)数据库定义语言statements are used to define the database structure or schema.

DDL是SQL语言的四大功能之一。
用于定义数据库的三级结构,包括外模式、概念模式、内模式及其相互之间的映像,定义数据的完整性、安全控制等约束
DDL不需要commit.
CREATE/ALTER/DROP/TRUNCATE/COMMENT/RENAME

2.DML(Data Manipulation Language)数据操纵语言statements are used for managing data within schema objects.

由DBMS提供,用于让用户或程序员使用,实现对数据库中数据的操作。
DML分成交互型DML和嵌入型DML两类。
依据语言的级别,DML又可分成过程性DML和非过程性DML两种。
需要commit.
SELECT/INSERT/UPDATE/DELETE/MERGE/CALL/EXPLAIN PLAN/LOCK TABLE

3.DCL(Data Control Language)数据库控制语言  授权,角色控制等
GRANT 授权
REVOKE 取消授权

4.TCL(Transaction Control Language)事务控制语言
SAVEPOINT 设置保存点
ROLLBACK  回滚
SET TRANSACTION

SQL与oracle交互过程

********************************************************************

通过SQL创建及删除表空间

  create tablespace t_space
  datafile 'e:\xxx.dbf'
  size 5M
  autoextend on
  next 2m
  maxsize 100m;

    drop tablespace xxx; 如果该表空间没有任何数据库对象
    drop tablespace xxx including contents ;如果该表空间含数据库对象
    drop tablespace xxx including contents and datafiles ;如果要删除它对应的数据文件;
   
    alter tablespace xxx read only; 只读---该表空间内的数据库对象都是只读的(如:不能往该表空间下的表插数据)
    alter tablespace xxx read write; 恢复读写状态
   
    alter tablespce xxx rename to new_xxx; 改名
   
    增加表空间的存储空间:
   
    1 添加文件
   
    1-1 添加数据文件:
   
    alter tablespce xxx
    add datafile '新数据文件路径.dbf' size 10M;
   
    1-2 添加临时文件:
   
    alter tablespce xxx
    add tempfile '临时文件.dbf' size 10M reuse; //如果该文件已经存在,则添加失败---如果要覆盖同名文件,则必须加reuse
   
    2 改变数据文件的大小:
   
    2-1 设置数据文件为自动增长 autoextend on/off next 2M maxsize 500M ;
   
    可以在该文件创建的时候设置,也可以在该文件创建之后进行修改
   
    alter database datafile '数据文件路径.dbf' autoextend on next 512k maxsize 250m;
   
    取消自动增长:
   
    alter database datafile '数据文件路径.dbf' autoextend off;
   
    2-2 手动改变数据文件的大小
   
    alter database datafile '数据文件路径.dbf' resize 500m;//注意修改后的大小足够容纳其中已有的数据

********************************************************************

  创建/修改/删除用户
   
    创建用户:
    create user u1 identified by 111111
    default tablespace t_space
    quota 128m on users         //表空间的占有量
    temporary tablespace temp   //临时表空间
    password expire;            //强制用户在每次登录之后必须修改密码
   
  修改密码:
    alter user u1 identified by 222222;
   
  锁定账户(dba)
    alter user u1 account lock;
  解锁
    alter user u1 account unlock; 
   
  删除账户
    drop user u1 cascade; 
   
********************************************************************

权限与角色的操作:

1 为用户赋权限

角色权限
grant connect,resource to JN0909 [with admin option];
系统权限
grant Create any Table to JN0909;
对象权限
grant Select on 用户名.表名 to JN0909;

  2 回收用户权限

revoke 角色权限/系统权限/对象权限 from 用户名。

revoke Select On 用户名.表名 from jn0909;

3 查看权限的系统表
user_sys_privs;查看用户拥有哪些系统权限

user_tab_privs;查看用户拥有哪些对象权限

role_sys_privs;查看用户拥有哪些角色权限

********************************************************************
   
System用户密码忘记:
A:以SYS用户登录修改

SYS用户密码忘记:
A:修改数据库的用户验证机制
sqlnet.ora中更改用户验证机制
SQL>conn / as sysdba;
SQL>alter user sys identified by 新密码;
将验证改为NONE。

NTS:操作系统验证

NONE:数据库验证

B:重建密码文件

C:\oracle\ora92\database\PWD+SID.ora存放数据库Sys用户的密码。

  C:\>orapwd file=C:\oracle\ora92\database\PWD+Sid.ora password=新密码

要重新启动数据库服务
4、oracle配置文件说明
(1)listener文件说明
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))
    )
  )
 
D:\oracle\network\ADMIN:
 
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的名称
(2)sqlnet文件说明
sqlnet.ora

设置windows验证及监听

SQLNET.AUTHENTICATION_SERVICES= (NTS)

默认windows验证


SQLNET.AUTHENTICATION_SERVICES= (NONE)

oracle验证


SQLNET.AUTHENTICATION_SERVICES= (NTS,NONE)

默认windows验证+oracle验证
(3)tnsnames文件说明
可以在客户端机器上使用oracle Net Configuration Assistant或oracle Net Manager图形配置工具对客户端进行配置,该配置工具实际上修改tnsnames.ora文件。

    所以我们可以直接修改tnsnames.ora文件,下面以直接修改tnsnames.ora文件为例:
    该文件的位置为:    …\network\admin\tnsnames.ora (for windows)
                        …/network/admin/tnsnames.ora (for unix)
    此处,假设服务器名为orcl,使用的侦听端口为1521,则tnsnams.ora文件中的一个test网络服务名(数据库别名)为:
   
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = windy-PC)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )


    PROTOCOL:客户端与服务器端通讯的协议,一般为TCP,该内容一般不用改。
    HOST:数据库侦听所在的机器的机器名或IP地址,数据库侦听一般与数据库在同一个机器上,所以当我说数据库侦听所在的机器一般也是指数据库所在的机器。

    在UNIX或WINDOWS下,可以通过在数据库侦听所在的机器的命令提示符下使用hostname命令得到机器名,或通过ipconfig(for WINDOWS) or ifconfig(for UNIX)命令得到IP地址。

    需要注意的是,不管用机器名或IP地址,在客户端一定要用ping命令ping通数据库侦听所在的机器的机器名,否则需要在hosts文件中加入数据库侦听所在的机器的机器名的解析。
    PORT:数据库侦听正在侦听的端口,可以察看服务器端的listener.ora文件或在数据库侦听所在的机器的命令提示符下通过lnsrctl status [listener name]命令察看。此处Port的值一定要与数据库侦听正在侦听的端口一样。
    SERVICE_NAME:在服务器端,用system用户登陆后,

    sqlplus> show parameter service_name 命令察看。

分享到:
评论

相关推荐

    oracle基础教程

    oracle基础教程 课程说明 1 课程介绍 1 课程目标 1 相关资料 1 第1章 ORACLE数据库概述 2 1.1 产品概述 2 1.1.1 产品简介 2 1.1.2 基本概念 3 1.2 ORACLE系统结构 4 1.2.2 ORACLE物理结构 4 1.2.3 系统全局区 6 ...

    oracle基础知识入门

    对于初学者来说,掌握Oracle基础知识是进入数据库领域的第一步。本文将深入浅出地介绍Oracle数据库的一些核心概念和基本操作,帮助你快速入门。 一、Oracle数据库系统概述 Oracle数据库是由美国Oracle公司开发的,...

    oracle基础资料学习oracle的来下

    oracle ORACLE 基础资料 基础知识 培训资料oracle ORACLE 基础资料 基础知识 培训资料oracle ORACLE 基础资料 基础知识 培训资料oracle ORACLE 基础资料 基础知识 培训资料

    Oracle基础教程

    Oracle 基础教程 Oracle 是一款流行的关系型数据库管理系统,由 Oracle 公司开发和维护。作为一个功能强大且广泛应用的数据库管理系统,Oracle 具有强大的数据存储和管理能力,广泛应用于各种 Industries,包括金融...

    oracle基础教程ppt

    通过本Oracle基础教程PPT,你将逐步了解并掌握这些概念,为你的Oracle学习之路打下坚实基础。随着对Oracle的理解加深,你还可以进一步探索高级主题,如数据仓库、分布式数据库、RAC集群等。学习Oracle不仅是技术的...

    Oracle 基础知识 -大全- 原创整理.pdf

    以下将详细讲解Oracle基础知识,包括数据库管理、表的创建与维护、SQL查询技巧、权限管理以及PL/SQL编程等方面。 1. **Oracle数据库优势** Oracle数据库因其高性能、高可用性和安全性而受到青睐。它支持大规模并发...

    oracle基础知识考试题_答案.zip

    这个"oracle基础知识考试题_答案.zip"压缩包文件包含了关于Oracle数据库的基础知识学习材料,特别是针对初学者或者准备Oracle相关资格考试的人员。 首先,Oracle数据库的核心概念包括SQL(结构化查询语言)的使用,...

    oracle基础知识回顾与练习.zip

    本资料“oracle基础知识回顾与练习.zip”是针对Oracle数据库的基础知识进行整理,采用纯SQL语句的形式,适合初学者及需要巩固基础的用户进行学习和实践。 1. SQL基础 SQL(Structured Query Language)是用于管理...

    Oracle基础教程.pdf

    Oracle基础教程.pdf

    ORACLE基础知识及故障定位.pdf

    ORACLE基础知识及故障定位 学校oracle基础知识,包含所有orcale的数据库知识,以及常见问题解决思路,解决方案,问题怎么定位。

    Oracle基础教程源码下载 James Perry , Gerald Post 著,钟鸣 郝玉洁 等译

    《Oracle基础教程》是由James Perry和Gerald Post合著,并由钟鸣、郝玉洁等人翻译的一本教育性书籍,旨在帮助初学者和专业人士理解Oracle数据库的基础知识。源码下载部分提供了书中各章节实例的数据文件,使读者能够...

    oracle基础资料

    本文将基于"Oracle基础资料"这一主题,结合提供的压缩包文件"Oracle8i_9i数据库基础.doc",深入探讨Oracle数据库的基础知识,包括其核心概念、数据类型、SQL语句、表的创建以及备份恢复策略。 首先,Oracle数据库的...

    图灵邮电版oracle基础教程+数据库文件

    oracle基础教程,很适合oracle的学习和数据库的操作练习。同时里面主要是以练习为主。包括了ORACLE的基础操作。

    ORACLE基础培训文档

    这篇“Oracle基础培训文档”旨在为初学者提供一个全面了解Oracle数据库的平台,帮助大家掌握其基本概念、操作和管理技巧。 首先,我们从基础开始,Oracle数据库的核心是SQL(结构化查询语言),它是用于管理和处理...

    oracle基础教程.pdf

    "Oracle基础教程.pdf" 提供了丰富的学习资源,共分为21章,涵盖了Oracle数据库的核心概念和技术。 第1章:Oracle简介 本章将介绍Oracle数据库的历史、特点和应用领域,以及它在现代企业级数据管理中的重要地位。你...

    ORACLE 基础训练

    以上是Oracle基础训练的主要内容,通过深入学习和实践,你将能熟练掌握Oracle数据库的基础操作和高级特性。"Oracle基礎教程(一).ppt"至"Oracle基礎教程(三).ppt"中的材料将帮助你逐步掌握这些知识,为你的数据库管理...

    Oracle基础知识

    "Oracle基础知识"涵盖了SQL语言的基本概念以及Oracle 10G版本的相关特性。以下将详细介绍这些知识点。 首先,SQL(Structured Query Language)是用于管理和处理关系数据库的标准编程语言。SQL基础包括以下几个部分...

    Oracle基础.ppt

    Oracle 基础知识点总览 Oracle 基础知识点可以概括为以下几个方面: 1. Oracle 概述 Oracle 是一种对象关系数据库管理系统(ORDBMS),它提供了关系数据库系统和面向对象数据库系统这二者的功能。Oracle 数据库...

Global site tag (gtag.js) - Google Analytics