Oracle Version 4 0 www huawei com HUAWEI

  • Slides: 180
Download presentation
Oracle 基础 Version 4. 0 www. huawei. com HUAWEI TECHNOLOGIES CO. , LTD.

Oracle 基础 Version 4. 0 www. huawei. com HUAWEI TECHNOLOGIES CO. , LTD.

数据库推荐网站 http: //tahiti. oracle. com oracle的官方文档网站 http: //metalink. oracle. com/ oracle的技术支持网站。有海量的Knowledge Base,各种问题 解决经验。 http:

数据库推荐网站 http: //tahiti. oracle. com oracle的官方文档网站 http: //metalink. oracle. com/ oracle的技术支持网站。有海量的Knowledge Base,各种问题 解决经验。 http: //www. itpub. net 国内人气最强的数据库等IT技术论坛 http: //www. cnoug. org 中国Oracle官方论坛 http: //www. orafaq. org/faq 2. htm orafaq 知名的国外Oracle FAQ论坛,分类很细。 HUAWEI TECHNOLOGIES CO. , LTD. Page

第 1章 Oracle 体系结构 第 2章 数据库的日常检查 第 3章 Network 配置 第 4章 SQL语言基础

第 1章 Oracle 体系结构 第 2章 数据库的日常检查 第 3章 Network 配置 第 4章 SQL语言基础 HUAWEI TECHNOLOGIES CO. , LTD. Page

Oracle实例 一个Oracle 实例: 是一种访问 Oracle 数据库的基本方式 总是打开一个且只打开一个数据库 由内存结构和进程结构组成 实例 SGA Shared pool Library cache

Oracle实例 一个Oracle 实例: 是一种访问 Oracle 数据库的基本方式 总是打开一个且只打开一个数据库 由内存结构和进程结构组成 实例 SGA Shared pool Library cache Data Dict. cache 内存结构 Database Redo log buffer cache 后台进程 PMON SMON DBWR LGWR CKPT Others HUAWEI TECHNOLOGIES CO. , LTD. Page

共享存储区 用来存储最近最多执行的SQL语句和最近最多使用的数据定义. 它由两个主要的内存存结构组成: 库缓冲区 数据字典缓冲区 大小由参数SHARED_POOL_SIZE决定. Shared pool ALTER SYSTEM SET SHARED_POOL_SIZE = 64

共享存储区 用来存储最近最多执行的SQL语句和最近最多使用的数据定义. 它由两个主要的内存存结构组成: 库缓冲区 数据字典缓冲区 大小由参数SHARED_POOL_SIZE决定. Shared pool ALTER SYSTEM SET SHARED_POOL_SIZE = 64 M; HUAWEI TECHNOLOGIES CO. , LTD. Library cache Data dictionary cache Page

数据块高速缓冲区 由独立的子缓存组成: DB_CACHE_SIZE DB_KEEP_CACHE_SIZE DB_RECYCLE_CACHE_SIZE 数据库缓冲区可以动态的改变尺寸. DB_CACHE_ADVICE 可以设置以收集统计信息用来预测不同的缓冲大小 ALTER SYSTEM SET DB_CACHE_SIZE = 96

数据块高速缓冲区 由独立的子缓存组成: DB_CACHE_SIZE DB_KEEP_CACHE_SIZE DB_RECYCLE_CACHE_SIZE 数据库缓冲区可以动态的改变尺寸. DB_CACHE_ADVICE 可以设置以收集统计信息用来预测不同的缓冲大小 ALTER SYSTEM SET DB_CACHE_SIZE = 96 M; HUAWEI TECHNOLOGIES CO. , LTD. Page

程序全局区 PGA是为每个用户进程连接Oracle数据库分配的区域 Server process PGA Dedicated server Session Stack information space sort area, cursor

程序全局区 PGA是为每个用户进程连接Oracle数据库分配的区域 Server process PGA Dedicated server Session Stack information space sort area, cursor Stack sort area, cursor information space SGA information User process Shared server Session information Shared SQL areas HUAWEI TECHNOLOGIES CO. , LTD. Shared SQL areas Page

用户进程是要求 Oracle 服务器交互的一种进程: 它必须首先建立一个连接. 不直接和 Oracle 服务器交互. User process Server process Connection established Database

用户进程是要求 Oracle 服务器交互的一种进程: 它必须首先建立一个连接. 不直接和 Oracle 服务器交互. User process Server process Connection established Database user HUAWEI TECHNOLOGIES CO. , LTD. Page

服务进程是直接和 Oracle 服务器交互的一段程序. 它响应用户要求,向服务器发起呼叫并返回结果给用户. 可用专用服务器模式, 也可用共享服务器模式创建对话. Server process Connection established User process Session created

服务进程是直接和 Oracle 服务器交互的一段程序. 它响应用户要求,向服务器发起呼叫并返回结果给用户. 可用专用服务器模式, 也可用共享服务器模式创建对话. Server process Connection established User process Session created Oracle server Database user HUAWEI TECHNOLOGIES CO. , LTD. Page

后台进程 保持物理和内存结构的关系. 必须的后台进程 DBWn LGWR HUAWEI TECHNOLOGIES CO. , LTD. PMON SMON CKPT RECO

后台进程 保持物理和内存结构的关系. 必须的后台进程 DBWn LGWR HUAWEI TECHNOLOGIES CO. , LTD. PMON SMON CKPT RECO Page

数据库复写器 Instance DBWn 开始写: 检查点执行 SGA 脏块上限数到达 Database 缓存区没有自由空间 超时 buffer cache 连接RAC要求 表空间脱机

数据库复写器 Instance DBWn 开始写: 检查点执行 SGA 脏块上限数到达 Database 缓存区没有自由空间 超时 buffer cache 连接RAC要求 表空间脱机 DBWn 表空间只读 清空和删除表 表空间开始备份 Data files Control files Redo log files Database HUAWEI TECHNOLOGIES CO. , LTD. Page

日志复写器 Instance SGA LGWR 开始写: 提交时 Redo log buffer 三分之一缓冲区满的时候 当有1 MB日志的时候 每三秒 DBWn

日志复写器 Instance SGA LGWR 开始写: 提交时 Redo log buffer 三分之一缓冲区满的时候 当有1 MB日志的时候 每三秒 DBWn LGWR Data files Control files 在DBWn写之前 Redo log files Database HUAWEI TECHNOLOGIES CO. , LTD. Page

RAC方式 原理结构图 HUAWEI TECHNOLOGIES CO. , LTD. Page

RAC方式 原理结构图 HUAWEI TECHNOLOGIES CO. , LTD. Page

HOTSTANDBY(双机热备)方式 原理结构图 HUAWEI TECHNOLOGIES CO. , LTD. Page

HOTSTANDBY(双机热备)方式 原理结构图 HUAWEI TECHNOLOGIES CO. , LTD. Page

概观 Database Data files HUAWEI TECHNOLOGIES CO. , LTD. Control files Redo log files

概观 Database Data files HUAWEI TECHNOLOGIES CO. , LTD. Control files Redo log files Page

数据库的存储层次 Database Data file Tablespace 逻辑上 物理上 Segment Extent Oracle block HUAWEI TECHNOLOGIES CO.

数据库的存储层次 Database Data file Tablespace 逻辑上 物理上 Segment Extent Oracle block HUAWEI TECHNOLOGIES CO. , LTD. OS block Page

本地管理的表空间 CREATE TABLESPACE userdata DATAFILE '/u 01/oradata/userdata 01. dbf' SIZE 500 M EXTENT MANAGEMENT

本地管理的表空间 CREATE TABLESPACE userdata DATAFILE '/u 01/oradata/userdata 01. dbf' SIZE 500 M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256 K; 简化了数据字典中的内容 空间分配和回收不产生回滚信息 没有接合邻近extents的要求 HUAWEI TECHNOLOGIES CO. , LTD. Page

字典管理的表空间 CREATE TABLESPACE userdata DATAFILE '/u 01/oradata/userdata 01. dbf' SIZE 500 M EXTENT MANAGEMENT

字典管理的表空间 CREATE TABLESPACE userdata DATAFILE '/u 01/oradata/userdata 01. dbf' SIZE 500 M EXTENT MANAGEMENT DICTIONARY DEFAULT STORAGE ( initial 1 M NEXT 1 M ); Extents 在数据字典中管理 每个存储在表空间的segments都可以有不同的存储参数设置 有邻近接合extents的要求 HUAWEI TECHNOLOGIES CO. , LTD. Page

回滚段表空间 用来存储回滚段信息 不能包含其它对象 Extents 本地管理 在创建时仅仅能使用 DATAFILE and EXTENT MANAGEMENT 条件 CREATE UNDO TABLESPACE

回滚段表空间 用来存储回滚段信息 不能包含其它对象 Extents 本地管理 在创建时仅仅能使用 DATAFILE and EXTENT MANAGEMENT 条件 CREATE UNDO TABLESPACE undo 1 DATAFILE '/u 01/oradata/undo 101. dbf' SIZE 40 M; HUAWEI TECHNOLOGIES CO. , LTD. Page

临时表空间 用来做排序操作 不能包含固定的对象 最好使用本地表空间管理 CREATE TEMPORARY TABLESPACE temp TEMPFILE '/u 01/oradata/temp 01. dbf' SIZE

临时表空间 用来做排序操作 不能包含固定的对象 最好使用本地表空间管理 CREATE TEMPORARY TABLESPACE temp TEMPFILE '/u 01/oradata/temp 01. dbf' SIZE 500 M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 10 M; HUAWEI TECHNOLOGIES CO. , LTD. Page

删除表空间 从数据字典中删除表空间信息 通过 AND DATAFILES条件可在操作系统上删除表空间的数据文件: DROP TABLESPACE userdata INCLUDING CONTENTS AND DATAFILES; HUAWEI TECHNOLOGIES

删除表空间 从数据字典中删除表空间信息 通过 AND DATAFILES条件可在操作系统上删除表空间的数据文件: DROP TABLESPACE userdata INCLUDING CONTENTS AND DATAFILES; HUAWEI TECHNOLOGIES CO. , LTD. Page

改变表空间的大小 增加数据文件 改变数据文件大小: 自动 手动 Tablespace APP_DATA 100 M 200 M 100 M app_data_01.

改变表空间的大小 增加数据文件 改变数据文件大小: 自动 手动 Tablespace APP_DATA 100 M 200 M 100 M app_data_01. dbf HUAWEI TECHNOLOGIES CO. , LTD. app_data_02. dbf app_data_03. dbf Page

手动改变数据文件大小 ALTER DATABASE DATAFILE '/u 03/oradata/userdata 02. dbf' RESIZE 200 M; Tablespace APP_DATA 100

手动改变数据文件大小 ALTER DATABASE DATAFILE '/u 03/oradata/userdata 02. dbf' RESIZE 200 M; Tablespace APP_DATA 100 M 200 M 100 M app_data_01. dbf app_data_02. dbf HUAWEI TECHNOLOGIES CO. , LTD. app_data_03. dbf Page app_data_04. dbf

在表空间中增加一个数据文件 ALTER TABLESPACE app_data ADD DATAFILE '/u 01/oradata/userdata 03. dbf' SIZE 200 M; Tablespace

在表空间中增加一个数据文件 ALTER TABLESPACE app_data ADD DATAFILE '/u 01/oradata/userdata 03. dbf' SIZE 200 M; Tablespace APP_DATA 100 M 200 M 100 M app_data_01. dbf HUAWEI TECHNOLOGIES CO. , LTD. app_data_02. dbf app_data_03. dbf Page

获取表空间信息: • DBA_TABLESPACES • V$TABLESPACE 数据文件信息: • DBA_DATA_FILES • V$DATAFILE 临时文件信息: • DBA_TEMP_FILES •

获取表空间信息: • DBA_TABLESPACES • V$TABLESPACE 数据文件信息: • DBA_DATA_FILES • V$DATAFILE 临时文件信息: • DBA_TEMP_FILES • V$TEMPFILE HUAWEI TECHNOLOGIES CO. , LTD. Page

重做日志文件的结构 Group 1 Group 2 Group 3 Disk 1 Member Member HUAWEI TECHNOLOGIES CO.

重做日志文件的结构 Group 1 Group 2 Group 3 Disk 1 Member Member HUAWEI TECHNOLOGIES CO. , LTD. Page Disk 2

强迫日志切换并执行检查点 日志切换能使用命令 ALTER SYSTEM SWITCH LOGFILE. 检查点被迫使执行: 设置 FAST_START_MTTR_TARGET 参数 ALTER SYSTEM CHECKPOINT 命令

强迫日志切换并执行检查点 日志切换能使用命令 ALTER SYSTEM SWITCH LOGFILE. 检查点被迫使执行: 设置 FAST_START_MTTR_TARGET 参数 ALTER SYSTEM CHECKPOINT 命令 ALTER SYSTEM CHECKPOINT; HUAWEI TECHNOLOGIES CO. , LTD. Page

增加在线重做日志组 ALTER DATABASE ADD LOGFILE GROUP 3 ('$HOME/ORADATA/u 01/log 3 a. rdo', '$HOME/ORADATA/u 02/log

增加在线重做日志组 ALTER DATABASE ADD LOGFILE GROUP 3 ('$HOME/ORADATA/u 01/log 3 a. rdo', '$HOME/ORADATA/u 02/log 3 b. rdo') SIZE 1 M; log 1 a. rdo log 2 a. rdo log 3 a. rdo log 1 b. rdo log 2 b. rdo log 3 b. rdo Group 1 Group 2 Group 3 HUAWEI TECHNOLOGIES CO. , LTD. Page

增加在线重做日志组成员 ALTER DATABASE ADD LOGFILE MEMBER '$HOME/ORADATA/u 04/log 1 c. rdo' TO GROUP 1,

增加在线重做日志组成员 ALTER DATABASE ADD LOGFILE MEMBER '$HOME/ORADATA/u 04/log 1 c. rdo' TO GROUP 1, '$HOME/ORADATA/u 04/log 2 c. rdo' TO GROUP 2, '$HOME/ORADATA/u 04/log 3 c. rdo' TO GROUP 3; log 1 a. rdo log 3 a. rdo log 2 a. rdo log 1 b. rdo log 1 c. rdo Group 1 HUAWEI TECHNOLOGIES CO. , LTD. log 2 b. rdo log 3 b. rdo log 2 c. rdo log 3 c. rdo log 2 c. rdo Group 3 Group 2 Page

删除在线重做日志组 ALTER DATABASE DROP LOGFILE GROUP 3; log 1 a. rdo log 2 a.

删除在线重做日志组 ALTER DATABASE DROP LOGFILE GROUP 3; log 1 a. rdo log 2 a. rdo log 3 a. rdo Group 1 Group 2 Group 3 HUAWEI TECHNOLOGIES CO. , LTD. Page

删除在线重做日志组成员 ALTER DATABASE DROP LOGFILE MEMBER '$HOME/ORADATA/u 04/log 3 c. rdo'; log 1 a.

删除在线重做日志组成员 ALTER DATABASE DROP LOGFILE MEMBER '$HOME/ORADATA/u 04/log 3 c. rdo'; log 1 a. rdo log 1 b. rdo log 1 c. rdo log 2 c. rdo Group 1 Group 2 HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库模式 Schema Objects • • 模式是一种命名的对象集合 Tables Triggers 一个用户被创建,对应的模 式就被创建 Constraints 一个用户仅仅对应一个模式 Views 用户名其实就等同于模式名

数据库模式 Schema Objects • • 模式是一种命名的对象集合 Tables Triggers 一个用户被创建,对应的模 式就被创建 Constraints 一个用户仅仅对应一个模式 Views 用户名其实就等同于模式名 Sequences Indexes Stored program units Synonyms User-defined data types Database links HUAWEI TECHNOLOGIES CO. , LTD. Page

创建用户: 数据库级鉴别 CREATE USER aaron IDENTIFIED BY soccer DEFAULT TABLESPACE data TEMPORARY TABLESPACE temp

创建用户: 数据库级鉴别 CREATE USER aaron IDENTIFIED BY soccer DEFAULT TABLESPACE data TEMPORARY TABLESPACE temp QUOTA 15 m ON data; HUAWEI TECHNOLOGIES CO. , LTD. Page

删除用户 DROP USER aaron; 使用 CASCADE 条件删除用户及其用户中包含的所有对象. DROP USER aaron CASCADE; 当前正连接到Oracle服务器的用户不能被删除 HUAWEI TECHNOLOGIES

删除用户 DROP USER aaron; 使用 CASCADE 条件删除用户及其用户中包含的所有对象. DROP USER aaron CASCADE; 当前正连接到Oracle服务器的用户不能被删除 HUAWEI TECHNOLOGIES CO. , LTD. Page

获取用户相关信息能通过查询以下数据字典. DBA_USERS DBA_TS_QUOTAS HUAWEI TECHNOLOGIES CO. , LTD. Page

获取用户相关信息能通过查询以下数据字典. DBA_USERS DBA_TS_QUOTAS HUAWEI TECHNOLOGIES CO. , LTD. Page

授予系统权限 GRANT CREATE SESSION TO emi; HUAWEI TECHNOLOGIES CO. , LTD. Page

授予系统权限 GRANT CREATE SESSION TO emi; HUAWEI TECHNOLOGIES CO. , LTD. Page

回收系统权限 REVOKE CREATE TABLE FROM emi; HUAWEI TECHNOLOGIES CO. , LTD. Page

回收系统权限 REVOKE CREATE TABLE FROM emi; HUAWEI TECHNOLOGIES CO. , LTD. Page

授予对象权限 GRANT EXECUTE ON dbms_output TO jeff; HUAWEI TECHNOLOGIES CO. , LTD. Page

授予对象权限 GRANT EXECUTE ON dbms_output TO jeff; HUAWEI TECHNOLOGIES CO. , LTD. Page

回收对象权限 REVOKE SELECT ON emi. orders FROM jeff; HUAWEI TECHNOLOGIES CO. , LTD. Page

回收对象权限 REVOKE SELECT ON emi. orders FROM jeff; HUAWEI TECHNOLOGIES CO. , LTD. Page

获取权限信息 查询数据字典 DBA_SYS_PRIVS SESSION_PRIVS DBA_TAB_PRIVS DBA_COL_PRIVS HUAWEI TECHNOLOGIES CO. , LTD. Page

获取权限信息 查询数据字典 DBA_SYS_PRIVS SESSION_PRIVS DBA_TAB_PRIVS DBA_COL_PRIVS HUAWEI TECHNOLOGIES CO. , LTD. Page

初始化参数文件 Oracle Instance Shared pool Library cache Data dict. cache PMON SGA Data buffer

初始化参数文件 Oracle Instance Shared pool Library cache Data dict. cache PMON SGA Data buffer cache DBW 0 LGWR spfiledb 01. ora SQL> CONNECT / AS SYSDBA SQL> STARTUP HUAWEI TECHNOLOGIES CO. , LTD. Page Redo log buffer CKPT Others

PFILE 举例 # Initialization Parameter File: initdb 01. ora db_name = db 01 instance_name

PFILE 举例 # Initialization Parameter File: initdb 01. ora db_name = db 01 instance_name = db 01 control_files = ( /u 03/oradata/db 01/control 01 db 01. ctl, /u 03/oradata/db 01/control 02 db 01. ctl) db_block_size = 4096 db_block_buffers = 500 shared_pool_size = 31457280 db_files = 1024 max_dump_file_size = 10240 # 30 M Shared Pool background_dump_dest = /u 05/oracle 9 i/admin/db 01/bdump user_dump_dest = /u 05/oracle 9 i/admin/db 01/udump core_dump_dest = /u 05/oracle 9 i/admin/db 01/cdump undo_management = auto undo_tablespace = undtbs . . . HUAWEI TECHNOLOGIES CO. , LTD. Page

创建 SPFILE能使用命令CREATE SPFILE命令从init. SID. ora中创建,并且在数据库开 启前或开启后都能执行 CREATE SPFILE FROM PFILE; HUAWEI TECHNOLOGIES CO. ,

创建 SPFILE能使用命令CREATE SPFILE命令从init. SID. ora中创建,并且在数据库开 启前或开启后都能执行 CREATE SPFILE FROM PFILE; HUAWEI TECHNOLOGIES CO. , LTD. Page

SPFILE 举例 *. background_dump_dest='$ORACLE_HOME/admin/db 01/bdump' *. compatible='9. 0. 0' *. control_files='/u 03/oradata/db 01/ctrl 01

SPFILE 举例 *. background_dump_dest='$ORACLE_HOME/admin/db 01/bdump' *. compatible='9. 0. 0' *. control_files='/u 03/oradata/db 01/ctrl 01 db 01. ctl', '/u 03/oradata/db 01/ctrl 02 db 01. ctl' *. core_dump_dest='$ORACLE_HOME/admin/db 01/cdump' *. db_block_buffers=500 *. db_block_size=4096 *. db_files=40 *. db_name='db 01' *. instance_name='db 01' *. remote_login_passwordfile='exclusive' *. shared_pool_size=31457280 # 30 M Shared Pool *. undo_management='AUTO' db 01. undo_tablespace='UNDOTBS 01' db 02. undo_tablespace='UNDOTBS 02'. . . HUAWEI TECHNOLOGIES CO. , LTD. Page

启动一个数据库 OPEN STARTUP MOUNT NOMOUNT 实例启动 SHUTDOWN HUAWEI TECHNOLOGIES CO. , LTD. Page

启动一个数据库 OPEN STARTUP MOUNT NOMOUNT 实例启动 SHUTDOWN HUAWEI TECHNOLOGIES CO. , LTD. Page

启动一个数据库 OPEN STARTUP MOUNT 控制文件打开 NOMOUNT 实例启动 SHUTDOWN HUAWEI TECHNOLOGIES CO. , LTD. Page

启动一个数据库 OPEN STARTUP MOUNT 控制文件打开 NOMOUNT 实例启动 SHUTDOWN HUAWEI TECHNOLOGIES CO. , LTD. Page

启动一个数据库 OPEN STARTUP 实例中控制文件描述的所有 文件被打开 MOUNT 控制文件打开 NOMOUNT 实例启动 SHUTDOWN HUAWEI TECHNOLOGIES CO. ,

启动一个数据库 OPEN STARTUP 实例中控制文件描述的所有 文件被打开 MOUNT 控制文件打开 NOMOUNT 实例启动 SHUTDOWN HUAWEI TECHNOLOGIES CO. , LTD. Page

STARTUP 命令 启动实例并打开数据库: STARTUP PFILE=$ORACLE_HOME/dbs/initdb 01. ora HUAWEI TECHNOLOGIES CO. , LTD. Page

STARTUP 命令 启动实例并打开数据库: STARTUP PFILE=$ORACLE_HOME/dbs/initdb 01. ora HUAWEI TECHNOLOGIES CO. , LTD. Page

The ALTER DATABASE Command 改变数据库的状态(UNMOUNT TO MOUNT): ALTER DATABASE db 01 MOUNT; • 打开数据库:

The ALTER DATABASE Command 改变数据库的状态(UNMOUNT TO MOUNT): ALTER DATABASE db 01 MOUNT; • 打开数据库: ALTER DATABASE db 01 OPEN; HUAWEI TECHNOLOGIES CO. , LTD. Page

关闭 数据库 关闭模式 A I T N 允许新的接入 x x 等待直到当前的会话都结束 x x x

关闭 数据库 关闭模式 A I T N 允许新的接入 x x 等待直到当前的会话都结束 x x x o 等待直到当前的事务都结束 x x o o 强制执行 checkpoint 并关闭所有文件 x o o o 关闭模式: NORMAL TRANSACTIONAL IMMEDIATE x NO o YES ABORT HUAWEI TECHNOLOGIES CO. , LTD. Page

备份 具 EXPORT (使用命令EXP) 恢复 具 IMPORT(使用命令IMP) HUAWEI TECHNOLOGIES CO. , LTD. Page

备份 具 EXPORT (使用命令EXP) 恢复 具 IMPORT(使用命令IMP) HUAWEI TECHNOLOGIES CO. , LTD. Page

Export 命令 语法 exp keyword = (value, value 2, … , valuen) 举例 exp

Export 命令 语法 exp keyword = (value, value 2, … , valuen) 举例 exp hr/hr TABLES=(employees, departments) rows=y file=exp 1. dmp exp system/manager OWNER=hr direct=y file=expdat. dmp exp system/manager TRANSPORT_TABLESPACE=y TABLESPACES=(ts_emp) log=ts_emp. log exp system/manager FULL=y inctype=cumulative file=expcum 1. dmp HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库的备份和恢复 表方式用于备份某个用户模式下指定的对象(表、索引、约束等)。 若备份到主机本地硬盘,使用如下命令: exp ring/ring rows=y indexes=n compress=n buffer=1024000 direct=y feedback=100000 file=exp_ring_tables_yyyymmdd. dmp log=exp_ring_tables_yyyymmdd.

数据库的备份和恢复 表方式用于备份某个用户模式下指定的对象(表、索引、约束等)。 若备份到主机本地硬盘,使用如下命令: exp ring/ring rows=y indexes=n compress=n buffer=1024000 direct=y feedback=100000 file=exp_ring_tables_yyyymmdd. dmp log=exp_ring_tables_yyyymmdd. log tables=RBT_ADMININFO, RBT_CONFIG HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库的备份和恢复 用户方式用于备份某个用户模式下的所有对象。 若备份到主机本地硬盘,使用如下命令: exp ring/ring rows=y indexes=n compress=n buffer=1024000 direct=y feedback=100000 file=exp_ring_yyyymmdd. dmp log=exp_ring_yyyymmdd.

数据库的备份和恢复 用户方式用于备份某个用户模式下的所有对象。 若备份到主机本地硬盘,使用如下命令: exp ring/ring rows=y indexes=n compress=n buffer=1024000 direct=y feedback=100000 file=exp_ring_yyyymmdd. dmp log=exp_ring_yyyymmdd. log HUAWEI TECHNOLOGIES CO. , LTD. Page

Import 具的命令行 语法 imp keyword = value or keyword = (value, value 2, …

Import 具的命令行 语法 imp keyword = value or keyword = (value, value 2, … value n) 举例 imp hr/hr TABLES=(employees, departments) rows=y file=exp 1. dmp imp system/manager FROMUSER=hr file=exp 2. dmp imp system/manager TRANSPORT_TABLESPACE=y TABLESPACES=ts_employees HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库的备份和恢复 IMPORT恢复 表方式 此种恢复方式根据用表方式备份出来的数据进行恢复。 若从本地文件恢复,使用如下命令: imp ring/ring rows=y indexes=n ignore=n commit=y buffer=1024000 feedback=100000 file=exp_ring_tables_yyyymmdd.

数据库的备份和恢复 IMPORT恢复 表方式 此种恢复方式根据用表方式备份出来的数据进行恢复。 若从本地文件恢复,使用如下命令: imp ring/ring rows=y indexes=n ignore=n commit=y buffer=1024000 feedback=100000 file=exp_ring_tables_yyyymmdd. dmp log=imp_ring_tables_yyyymmdd. log tables=RBT_ADMININFO, RBT_CONFIG HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库的备份和恢复 IMPORT恢复 用户方式 此种恢复方式根据用用户方式备份出来的数据进行恢复。 若从本地文件恢复,使用如下命令: imp ring/ring rows=y indexes=n ignore=n commit=y buffer=1024000 file=exp_ring_yyyymmdd. dmp

数据库的备份和恢复 IMPORT恢复 用户方式 此种恢复方式根据用用户方式备份出来的数据进行恢复。 若从本地文件恢复,使用如下命令: imp ring/ring rows=y indexes=n ignore=n commit=y buffer=1024000 file=exp_ring_yyyymmdd. dmp log=imp_ring_yyyymmdd. log HUAWEI TECHNOLOGIES CO. , LTD. Page

总结 Export 和 Import 具概念 Export 和 Import 具的使用方法 使用Export 和 Import 的一些原则 HUAWEI

总结 Export 和 Import 具概念 Export 和 Import 具的使用方法 使用Export 和 Import 的一些原则 HUAWEI TECHNOLOGIES CO. , LTD. Page

第 1章 Oracle 体系结构 第 2章 数据库的日常检查 第 3章 Network 配置 第 4章 SQL语言基础

第 1章 Oracle 体系结构 第 2章 数据库的日常检查 第 3章 Network 配置 第 4章 SQL语言基础 HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库的日常检查 检查数据库状态 确认数据库是否在open状态,正常提供服务。 oracle% sqlplus "/as sysdba" SQL> select status, instance_role from v$instance; STATUS

数据库的日常检查 检查数据库状态 确认数据库是否在open状态,正常提供服务。 oracle% sqlplus "/as sysdba" SQL> select status, instance_role from v$instance; STATUS INSTANCE_ROLE -----------------OPEN PRIMARY_INSTANCE HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库的日常检查 查看SGA区域 SGA区各项buffer之和应该小于系统物理内存的一半 检查数据库SGA区: SQL>show sga 检查系统物理内存: Solaris: $ /usr/sbin/prtconf |grep -i "Memory size"

数据库的日常检查 查看SGA区域 SGA区各项buffer之和应该小于系统物理内存的一半 检查数据库SGA区: SQL>show sga 检查系统物理内存: Solaris: $ /usr/sbin/prtconf |grep -i "Memory size" HP: $ grep Physical /var/adm/syslog. log AIX: $ /usr/sbin/lsattr -E -l sys 0 -a realmem HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库的日常检查 回滚段竞争检查 8 i: 返回值应该低于2%。如果该值过高,8 i需要手 建立更多的回滚段。 SQL> select 'The average of waits/gets is

数据库的日常检查 回滚段竞争检查 8 i: 返回值应该低于2%。如果该值过高,8 i需要手 建立更多的回滚段。 SQL> select 'The average of waits/gets is '|| round((sum(waits) / sum(gets)) * 100, 2)||'%' From v$rollstat; 9 i: Nospace值应该为 0。如果持续存在非零值,建议增加回滚表空间的大 SQL>select distinct nospaceerrcnt as nospace From v$undostat Where begin_time>sysdate-(1/12); HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库的日常检查 查看日志文件 数据库运行时,可以通过查询v$log_history来观察log switch的切换时间。 推荐联机日志最好是业务非高峰期每小时切换一次,业务高峰期 20分 钟左右切换一次。 SQL>select to_char(first_time, 'yyyy-mm-dd hh 24: mi: ss')

数据库的日常检查 查看日志文件 数据库运行时,可以通过查询v$log_history来观察log switch的切换时间。 推荐联机日志最好是业务非高峰期每小时切换一次,业务高峰期 20分 钟左右切换一次。 SQL>select to_char(first_time, 'yyyy-mm-dd hh 24: mi: ss') change_time from v$log_history; CHANGE_TIME ---------2004 -04 -06 10: 02: 52 2004 -04 -06 10: 45 2004 -04 -06 10: 17: 01 HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库的日常检查 查看表空间 查看各个表空间所占的大小,剩余空间,使用空间百分比等信息 特别是当业务表空间的剩余空间低于50 M或者使用空间百分比大于90% 时,需要考虑增加表空间的大小。 SQL> select a. tablespace_name, a. bytes totalbytes, sum(b.

数据库的日常检查 查看表空间 查看各个表空间所占的大小,剩余空间,使用空间百分比等信息 特别是当业务表空间的剩余空间低于50 M或者使用空间百分比大于90% 时,需要考虑增加表空间的大小。 SQL> select a. tablespace_name, a. bytes totalbytes, sum(b. bytes) freebytes from dba_data_files a, dba_free_space b where a. file_id = b. file_id group by a. tablespace_name, a. bytes ; TABLESPACE_NAME TOTALBYTES FREEBYTES --------------------CWMLITE 20971520 11141120 HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库的日常检查 检查job状态 Broken列应该为N;如果Broken列为Y,检查oracle告警日志, 分析job 失败的原因。解决后运行:exec dbms_job. run(: job); SQL>select job, what, to_char(next_date, ’yyyy/mm/dd hh

数据库的日常检查 检查job状态 Broken列应该为N;如果Broken列为Y,检查oracle告警日志, 分析job 失败的原因。解决后运行:exec dbms_job. run(: job); SQL>select job, what, to_char(next_date, ’yyyy/mm/dd hh 24: mi: ss’), broken, failures from dba_jobs; HUAWEI TECHNOLOGIES CO. , LTD. Page

数据库的日常检查 查看数据库连接用户 查看当前数据库连接的用户进程的具体信息,包括连接的数据库用户名,机器名, 运行的程序名,进程状态。 select username, machine, program, status from v$session where osuser <>

数据库的日常检查 查看数据库连接用户 查看当前数据库连接的用户进程的具体信息,包括连接的数据库用户名,机器名, 运行的程序名,进程状态。 select username, machine, program, status from v$session where osuser <> 'oracle'; USERNAME MACHINE PROGRAM STATUS -------------------- -------CORPRING SYSTEM CHINAMENGWEI CHINAH 36922 HUAWEI TECHNOLOGIES CO. , LTD. INACTIVE dbsnmp. exe INACTIVE Page

第 1章 Oracle 体系结构 第 2章 数据库的日常检查 第 3章 Network 配置 第 4章 SQL语言基础

第 1章 Oracle 体系结构 第 2章 数据库的日常检查 第 3章 Network 配置 第 4章 SQL语言基础 HUAWEI TECHNOLOGIES CO. , LTD. Page

监听进程 客户端 服务端 Listener tnsnames. ora sqlnet. ora HUAWEI TECHNOLOGIES CO. , LTD. listener.

监听进程 客户端 服务端 Listener tnsnames. ora sqlnet. ora HUAWEI TECHNOLOGIES CO. , LTD. listener. ora Page

配置 listener. ora 文件 listener. ora 的缺省配置: Listener name LISTENER Port Protocols SID name

配置 listener. ora 文件 listener. ora 的缺省配置: Listener name LISTENER Port Protocols SID name Host name HUAWEI TECHNOLOGIES CO. , LTD. 1521 TCP/IP and IPC 缺省实例 缺省主机名 Page

监听程序的管理 查看监听程序的状态: % lsnrctl status 启动监听程序进程: % lsnrctl start 关闭监听程序进程: % lsnrctl stop HUAWEI

监听程序的管理 查看监听程序的状态: % lsnrctl status 启动监听程序进程: % lsnrctl start 关闭监听程序进程: % lsnrctl stop HUAWEI TECHNOLOGIES CO. , LTD. Page

配置本地网络服务名 HUAWEI TECHNOLOGIES CO. , LTD. Page

配置本地网络服务名 HUAWEI TECHNOLOGIES CO. , LTD. Page

服务名添加 HUAWEI TECHNOLOGIES CO. , LTD. Page

服务名添加 HUAWEI TECHNOLOGIES CO. , LTD. Page

指定oracle版本 HUAWEI TECHNOLOGIES CO. , LTD. Page

指定oracle版本 HUAWEI TECHNOLOGIES CO. , LTD. Page

输入数据库服务名 HUAWEI TECHNOLOGIES CO. , LTD. Page

输入数据库服务名 HUAWEI TECHNOLOGIES CO. , LTD. Page

网络协议 HUAWEI TECHNOLOGIES CO. , LTD. Page

网络协议 HUAWEI TECHNOLOGIES CO. , LTD. Page

主机名和 Listener 端口 HUAWEI TECHNOLOGIES CO. , LTD. Page

主机名和 Listener 端口 HUAWEI TECHNOLOGIES CO. , LTD. Page

测试和连接 HUAWEI TECHNOLOGIES CO. , LTD. Page

测试和连接 HUAWEI TECHNOLOGIES CO. , LTD. Page

连接测试结果 HUAWEI TECHNOLOGIES CO. , LTD. Page

连接测试结果 HUAWEI TECHNOLOGIES CO. , LTD. Page

自己命名网络服务名 HUAWEI TECHNOLOGIES CO. , LTD. Page

自己命名网络服务名 HUAWEI TECHNOLOGIES CO. , LTD. Page

保存 HUAWEI TECHNOLOGIES CO. , LTD. Page

保存 HUAWEI TECHNOLOGIES CO. , LTD. Page

tnsnames. ora # TNSNAMES. ORA Network Configuration File: /u 03/ora 9 i/rel 12/network/admin/tnsnames. ora

tnsnames. ora # TNSNAMES. ORA Network Configuration File: /u 03/ora 9 i/rel 12/network/admin/tnsnames. ora # Generated by Oracle configuration tools. MY_SERVICE. US. ORACLE. COM = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = stc-sun 02. us. oracle. com)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = TEST. us. oracle. com) ) ) HUAWEI TECHNOLOGIES CO. , LTD. Page

第 1章 Oracle 体系结构 第 2章 数据库的日常检查 第 3章 Network 配置 第 4章 SQL语言基础

第 1章 Oracle 体系结构 第 2章 数据库的日常检查 第 3章 Network 配置 第 4章 SQL语言基础 HUAWEI TECHNOLOGIES CO. , LTD. Page

SQL Statements SELECT INSERT UPDATE DELETE Data retrieval Data manipulation language (DML) CREATE ALTER

SQL Statements SELECT INSERT UPDATE DELETE Data retrieval Data manipulation language (DML) CREATE ALTER DROP TRUNCATE COMMIT ROLLBACK SAVEPOINT GRANT REVOKE Data definition language (DDL) Data control language (DCL) HUAWEI TECHNOLOGIES CO. , LTD. Page

基础SELECT 语句语法 SELECT FROM *|{[DISTINCT] column|expression [alias], . . . } table; HUAWEI TECHNOLOGIES

基础SELECT 语句语法 SELECT FROM *|{[DISTINCT] column|expression [alias], . . . } table; HUAWEI TECHNOLOGIES CO. , LTD. Page

使用算术操作符 SELECT last_name, salary + 300 FROM employees; … HUAWEI TECHNOLOGIES CO. , LTD.

使用算术操作符 SELECT last_name, salary + 300 FROM employees; … HUAWEI TECHNOLOGIES CO. , LTD. Page

排除重复的行 SELECT DISTINCT department_id FROM employees; HUAWEI TECHNOLOGIES CO. , LTD. Page

排除重复的行 SELECT DISTINCT department_id FROM employees; HUAWEI TECHNOLOGIES CO. , LTD. Page

使用 WHERE 条件 SELECT employee_id, last_name, job_id, department_id FROM employees WHERE department_id = 90

使用 WHERE 条件 SELECT employee_id, last_name, job_id, department_id FROM employees WHERE department_id = 90 ; HUAWEI TECHNOLOGIES CO. , LTD. Page

字符串和日期值 都使用单引号. 字符串值区分大小写,日期值需注意格式. SELECT last_name, job_id, department_id FROM employees WHERE last_name = 'Whalen'; HUAWEI

字符串和日期值 都使用单引号. 字符串值区分大小写,日期值需注意格式. SELECT last_name, job_id, department_id FROM employees WHERE last_name = 'Whalen'; HUAWEI TECHNOLOGIES CO. , LTD. Page

使用 LIKE 条件 搜索条件能包括两种模式匹配类型: % 表示许多字符. _ 表示一个字符. SELECT FROM WHERE first_name employees first_name

使用 LIKE 条件 搜索条件能包括两种模式匹配类型: % 表示许多字符. _ 表示一个字符. SELECT FROM WHERE first_name employees first_name LIKE 'S%'; HUAWEI TECHNOLOGIES CO. , LTD. Page

使用 NULL 条件 测验空值使用 IS NULL 条件. SELECT last_name, manager_id FROM employees WHERE manager_id

使用 NULL 条件 测验空值使用 IS NULL 条件. SELECT last_name, manager_id FROM employees WHERE manager_id IS NULL; HUAWEI TECHNOLOGIES CO. , LTD. Page

使用 IN 条件 满足成员列表中的条件. SELECT employee_id, last_name, salary, manager_id FROM employees WHERE manager_id IN

使用 IN 条件 满足成员列表中的条件. SELECT employee_id, last_name, salary, manager_id FROM employees WHERE manager_id IN (100, 101, 201); HUAWEI TECHNOLOGIES CO. , LTD. Page

使用 AND 操作符 要求条件都为真. SELECT FROM WHERE AND employee_id, last_name, job_id, salary employees salary

使用 AND 操作符 要求条件都为真. SELECT FROM WHERE AND employee_id, last_name, job_id, salary employees salary >=10000 job_id LIKE '%MAN%'; HUAWEI TECHNOLOGIES CO. , LTD. Page

ORDER BY 条件 带 ORDER BY 条件的排序 ASC: 升序,缺省 DESC: 降序 ORDER BY 条件在Select语句最后.

ORDER BY 条件 带 ORDER BY 条件的排序 ASC: 升序,缺省 DESC: 降序 ORDER BY 条件在Select语句最后. SELECT last_name, job_id, department_id, hire_date FROM employees ORDER BY hire_date ; … HUAWEI TECHNOLOGIES CO. , LTD. Page

INSERT 语句语法 INSERT INTO table [(column [, column. . . ])] (value [, value.

INSERT 语句语法 INSERT INTO table [(column [, column. . . ])] (value [, value. . . ]); . VALUES HUAWEI TECHNOLOGIES CO. , LTD. Page

向表中插入新的数据行 插入的新行应包括所有的列值. 插入的值应按照表中列缺省的顺序排列. 如插入所有的列, INSERT 条件中可随意选择是否列出所有列. INSERT INTO departments(department_id, department_name, manager_id, location_id) VALUES (70,

向表中插入新的数据行 插入的新行应包括所有的列值. 插入的值应按照表中列缺省的顺序排列. 如插入所有的列, INSERT 条件中可随意选择是否列出所有列. INSERT INTO departments(department_id, department_name, manager_id, location_id) VALUES (70, 'Public Relations', 100, 1700); 1 row created. HUAWEI TECHNOLOGIES CO. , LTD. Page

UPDATE 语句语法 UPDATE SET [WHERE table column = value [, column = value, .

UPDATE 语句语法 UPDATE SET [WHERE table column = value [, column = value, . . . ] condition]; 可一次性修改多行 HUAWEI TECHNOLOGIES CO. , LTD. Page

修改表中数据 在WHERE条件中指定需要修改的行. UPDATE employees SET department_id = 70 WHERE employee_id = 113; 1 row

修改表中数据 在WHERE条件中指定需要修改的行. UPDATE employees SET department_id = 70 WHERE employee_id = 113; 1 row updated. 修改表中所有的行. UPDATE copy_emp SET department_id = 110; 22 rows updated. HUAWEI TECHNOLOGIES CO. , LTD. Page

DELETE 语句语法 DELETE [FROM] [WHERE table condition]; HUAWEI TECHNOLOGIES CO. , LTD. Page

DELETE 语句语法 DELETE [FROM] [WHERE table condition]; HUAWEI TECHNOLOGIES CO. , LTD. Page

控制事务 Time COMMIT Transaction DELETE SAVEPOINT A INSERT UPDATE SAVEPOINT B INSERT HUAWEI TECHNOLOGIES

控制事务 Time COMMIT Transaction DELETE SAVEPOINT A INSERT UPDATE SAVEPOINT B INSERT HUAWEI TECHNOLOGIES CO. , LTD. ROLLBACK to SAVEPOINT B ROLLBACK to SAVEPOINT A Page ROLLBACK

回滚改变到一个标记 在当前的事务中可通过 SAVEPOINT 语句创建标记. ROLLBACK TO SAVEPOINT 语句可回滚到标记. UPDATE. . . SAVEPOINT update_done; Savepoint

回滚改变到一个标记 在当前的事务中可通过 SAVEPOINT 语句创建标记. ROLLBACK TO SAVEPOINT 语句可回滚到标记. UPDATE. . . SAVEPOINT update_done; Savepoint created. INSERT. . . ROLLBACK TO update_done; Rollback complete. HUAWEI TECHNOLOGIES CO. , LTD. Page

隐性的事务处理 自动的 commit 发生在 : DDL 语句执行 HUAWEI TECHNOLOGIES CO. , LTD. Page

隐性的事务处理 自动的 commit 发生在 : DDL 语句执行 HUAWEI TECHNOLOGIES CO. , LTD. Page

提交数据 改变数据. DELETE FROM employees WHERE employee_id = 99999; 1 row deleted. INSERT INTO

提交数据 改变数据. DELETE FROM employees WHERE employee_id = 99999; 1 row deleted. INSERT INTO departments Commit 改变. VALUES (290, 'Corporate Tax', NULL, 1700); 1 row inserted. COMMIT; Commit complete. HUAWEI TECHNOLOGIES CO. , LTD. Page

回滚后数据状态 DELETE FROM copy_emp; 22 rows deleted. ROLLBACK; Rollback complete. 将丢弃所有未COMMIT的改变: HUAWEI TECHNOLOGIES CO.

回滚后数据状态 DELETE FROM copy_emp; 22 rows deleted. ROLLBACK; Rollback complete. 将丢弃所有未COMMIT的改变: HUAWEI TECHNOLOGIES CO. , LTD. Page

谢谢 www. huawei. com

谢谢 www. huawei. com