`
csbison
  • 浏览: 154865 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Oracle维护笔记1

阅读更多

Oracle维护笔记

 

 

·常用的数据字典视图——        

select * from v$parameter;  --查看系统参数

select * from v$version;    --查看Oracle的版本

select * from v$session;    --查看当前Session

select * from v$statname;

select name,log_mode from v$database;    -- 查看归档模式

 

Oracle中有一些常用的视图:

ALL_开头,USER_开头,DBA_开头,V_$开头(这个跟V$开头是一样的,因为后者是前者的同义词)。

 

 

查看重做日志文件:

select a.member,b.status from v$logfile a ,v$log b where a.group#=b.group#;

 

·常用系统变量的设置——                  

SQL> set timing on

SQL> set autotrace traceonly

SQL> set linesize 1000  

       

·常用的imp/exp,impdp/expdp ——                  

--expdp/impdp--

expdp aidm32/aidm32  dumpfile=dp_et_src_devinfo.dmp tables=et_src_devinfo PARALLEL=4 CONTENT=DATA_ONLY

 

impdp aidm32/aidm32  dumpfile=dp_et_src_devinfo.dmp tables=et_src_devinfo PARALLEL=4 CONTENT=DATA_ONLY

 

--imp/exp--

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

--

exp AIDMCU/AIDMCU FILE="USER_INFO.dmp" TABLES='USER_INFO' INDEXES=N TRIGGERS=N CONSTRAINTS=N GRANTS=N BUFFER=10240000  

 

--

imp FROMUSER=aidmcu TOUSER=aidmcu INDEXES=N IGNORE=Y CONSTRAINTS=N GRANTS=N BUFFER=10240000   FILE="OP_DOMAIN.dmp"

   

·查看表空间大小——       

        --当前表空间大小

select sum(bytes) from dba_data_files where tablespace_name=$TABLESPACE_NAME

--已使用的表空间大小

select sum(bytes) from dba_segments where tablespace_name=$TABLESPACE_NAME;

--未使用空间大小

select sum(bytes) from dba_free_space where tablespace_name=$TABLESPACE_NAME;   

      

 ·更改表空间——        

         --ADD DATAFILE

Alter tablespace AIDM_OTHER_IDX ADD DATAFILE '/data1/aidmcu/oracle10_data/AIDM_OTHER_IDX_03.dbf'  size 2000m Autoextend on next 100m maxsize 10000M;

 

alter tablespace AIDM_OTHER_IDX OFFLINE;

 

--RENAME DATAFILE

alter tablespace AIDM_OTHER_IDX RENAME DATAFILE '/data1/aidmcu/oracle10_data/AIDM_OTHER_IDX_04.dbf' to '/data1/aidmcu/oracle10_data/dmcu15/AIDM_OTHER_IDX_04.dbf';

 

alter tablespace AIDM_OTHER_IDX ONLINE;

 

--删除表空间、用户

drop tablespace aidmcucc_tmp including contents and datafiles;

drop user aidmcucc cascade;

        

·查看SQL语句的执行性能——                  

 select length(cpu_time)

   ,to_char(cpu_time)

   ,to_char(round(cpu_time/case when executions=0 then 1 else executions end,3))

   ,to_char(round(DISK_READS/case when executions=0 then 1 else executions end,3)) as DISK_READS1

   ,to_char(round(BUFFER_GETS/case when executions=0 then 1 else executions end,3)) as BUFFER_GETS1

   ,to_char(round(DISK_READS/case when BUFFER_GETS=0 then 1 else BUFFER_GETS end,3)) as DISK_READS_BUFFER_GETS

   ,to_char(executions) as executions

   ,to_char(elapsed_time) as elapsed_time

   ,to_char(DISK_READS) as DISK_READS,to_char(DIRECT_WRITES) as DIRECT_WRITES,to_char(BUFFER_GETS) as BUFFER_GETS

   ,sql_text from

 

(select * from v$sqlarea  where parsing_schema_name='AIDMCU'

 order by cpu_time  desc)

  where rownum<=6;

           

 ·查看正在运行的job——                 

-- 2. 查询是否有job正在执行!

  select * from dba_jobs_running;

 

-- 1. 查看job ID

select job,log_user,what from user_jobs where what = 'merge_ud_pair;'; 

        ·查看用户权限

      

--本用户读取其他用户对象的权限:

  select * from user_tab_privs;

--本用户所拥有的系统权限:

  select * from user_sys_privs;

--  授予用户帐户的角色

select * from user_role_privs;

        ·查看数据库字符和修改数据库字符集

        DB字符集对varchar的字段类型有影响(但对nvarchar2类型没有影响,nvarchar类型是计算字符的,mysql也是)。

        DB字符集是ZHS16GBK,则汉字占用2字节;若DB字符集是AL32UTF8,则汉字占用三字节!

        ASCII码都是占用单字节!

     

select userenv('language') from dual;   

     -- select SYS_CONTEXT ('USERENV', 'DB_NAME') from dual; 是类似的。或者

select * from v$nls_parameters ;       

结果如下:

    PARAMETER VALUE

1 NLS_LANGUAGE SIMPLIFIED CHINESE

2 NLS_TERRITORY CHINA

3 NLS_CURRENCY RMB

4 NLS_ISO_CURRENCY CHINA

5 NLS_NUMERIC_CHARACTERS .,

6 NLS_CALENDAR GREGORIAN

7 NLS_DATE_FORMAT DD-MON-RR

8 NLS_DATE_LANGUAGE SIMPLIFIED CHINESE

9 NLS_CHARACTERSET ZHS16GBK

10 NLS_SORT BINARY

11 NLS_TIME_FORMAT HH.MI.SSXFF AM

12 NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM

13 NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR

14 NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR

15 NLS_DUAL_CURRENCY RMB

16 NLS_NCHAR_CHARACTERSET AL16UTF16

17 NLS_COMP BINARY

18 NLS_LENGTH_SEMANTICS BYTE

19 NLS_NCHAR_CONV_EXCP FALSE

 

·修改DB字符集的方法如下————

更改前:ORACLE10g更改前数据库SERVER字符集为:ZHS16GBK

更改为:AL32UTF8

更改步骤:

  SQL>STARTUP MOUNT;

  SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;

  SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;

  SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;

  SQL>ALTER DATABASE OPEN;

  SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE AL32UTF8; //跳过超子集检测

  SQL>ALTER DATABASE national CHARACTER SET INTERNAL AL32UTF8;

 

这一行不起作用,执行后出错ORA-00933: SQL 命令未正确结束,不过执行上一行命令已经生效,其他文章里未提到本行。

   SQL>SHUTDOWN IMMEDIATE;

    SQL>STARTUP

 

更改结果:存在于数据库中的汉字编码仍然是2字节方式存储,新的输入的汉字将是3字节方式存储。

查看方式: SQL>select lengthb('你好') from dual;      

       

·查看Oracle的系统选项或参数:

·show parameter 相等于 show parameters

 

* 可以通过show parameter 来显示所有的参数名/值。

* 查询 show parameter 跟查询select * from v$parameter是一样的。

 

-- 查询SGA

show parameter sga;

-- 查询实例名

show parameter instance_name;

        

·select * from v$option 

 

* 例如 "Advanced replication"="TRUE",则表示支持高级复制。    

         ·alter命令——        

        

alter database ... ; -- 例如 alter database mount;

alter table ... ;

alter user ... ;

alter system ... ;

alter tablespace ... ;

alter session ... ;

       

·show命令——                  

-- 常用的show命令有:

show paramaters

show sga

show all

show spool

show user

--其他请参照 help show.

       

·SGA的调整——                  

-- 查询SGA

show parameters sga;

-- 设置,然后重启

show * from v$version;

alter system set sga_max_size=1300M scope=spfile;

 

   

·Oracle的备份和恢复——        

    RMAN——Recovery Manager

 

·锁、REDOUNDO——        

阻塞

导致行级锁 阻塞的情况:

1. 对有约束的列,两个会话插入同样值的行记录。

2. 两个会话更新相同的一行。

 

 

TX(行级锁)锁、TM(表级锁)锁、DDL

 

redo (重做信息)是 Oracle 在在线(或归档)重做日志文件中记录的信息,万一出现失败时可以利用这些数据来 重放 (或重做)事

undo (撤销信息)是 Oracle undo 段中记录的信息,用于取消或回滚事务。

 

 

重做日志文件( redo log file )对 Oracle 数据库来说至关重要。它们是数据库的事务日志。 Oracle

维护着两类重做日志文件:在线( online )重做日志文件和归档( archived )重做日志文件。这两类重做日志文件都用于恢复;其主要目的是,万一实例失败或介质失败,它们就能派上用场。

 

 

回滚段 rollback segment )和 undo undo segment )是一样的。UNDO时,数据库只是逻辑地恢复到原来的样子。

 

REDO 是在*.log文件中。UNDO 是在DBF文件中;他存储在一组特殊的段中,称为undo segment. 

分享到:
评论

相关推荐

    李兴华Oracle全部笔记

    Oracle数据库是全球最广泛使用的商业关系型数据库管理系统之一,由美国甲骨文公司(Oracle Corporation)开发和维护。李兴华Oracle全部笔记是一份详细记录了Oracle相关知识的学习资料,涵盖了从基础概念到高级特性的...

    Oracle日常维护操作笔记

    本笔记主要涵盖了Oracle数据库在表空间管理、用户与权限控制以及归档和非归档模式操作等方面的基本知识。 一、表空间 1. 创建表空间:表空间是Oracle数据库存储数据的逻辑单位,用于组织和管理数据库对象,如表、...

    Oracle学习笔记.pdf

    以下是对Oracle学习笔记中提到的一些关键知识点的详细解释: 1. **SQL执行顺序**: SQL语句的执行顺序是:`FROM` -&gt; `WHERE` -&gt; `SELECT` -&gt; `GROUP BY` -&gt; `HAVING` -&gt; `ORDER BY`。首先从`FROM`子句开始,确定...

    Oracle课堂笔记(很全很详细的Oracle笔记)

    根据提供的信息,我们可以总结出以下关于Oracle的相关知识点: ### Oracle基础知识与分类 #### DDL (Data Definition Language) 数据定义语言 ...这些知识点对于学习Oracle数据库管理和维护具有重要的指导意义。

    Oracle学习笔记-日常应用、深入管理、性能优化

    资源名称:Oracle学习笔记-日常应用、深入管理、性能优化内容简介:Oracle学习笔记-日常应用、深入管理、性能优化Oracle 11g是最具代表性的高端关系型数据库管理系统,它在世界各地的大型商务数据库应用系统中被广泛...

    oracle实用笔记 命令 文档 pdf

    这份"Oracle实用笔记 命令 文档 PDF"很可能是对Oracle数据库管理、查询和维护的一份详细指南,涵盖了各种关键的Oracle命令和操作技巧。下面我们将深入探讨其中可能涉及的一些重要知识点。 1. **Oracle SQL语法**:...

    oracle dba学习笔记

    Oracle DBA 学习笔记 ...该 Oracle DBA 学习笔记涵盖了 Oracle 数据库维护的多个方面,包括表空间统计、SGA 信息、命中率等。这些知识点对于 Oracle DBA 来说非常重要,可以帮助他们更好地维护和优化数据库。

    oracle教程笔记

    Oracle教程笔记涵盖了数据库管理系统Oracle的核心概念、安装配置、SQL语言基础、PL/SQL编程以及数据库管理等多个方面。这篇笔记旨在帮助初学者系统地理解和掌握Oracle技术。 首先,Oracle是全球最大的企业级数据库...

    ORACLE DBA工作笔记 运维数据迁移与性能调优

    标题中提到的“ORACLE DBA工作笔记 运维数据迁移与性能调优”揭示了这本书籍主要围绕着Oracle数据库管理员(DBA)在日常工作中经常需要进行的两项关键任务:数据迁移和性能调优。作为一名Oracle DBA,不仅要负责...

    李兴华—oracle课堂笔记(全).rar

    1. **Oracle基础知识**:首先,笔记可能会介绍Oracle的基本概念,如数据库架构、表空间、数据块等。这包括数据库的创建、启动和关闭,以及如何管理和维护数据库实例。 2. **SQL语言**:Oracle支持结构化查询语言...

    韩顺平oracle视频笔记

    ### 韩顺平Oracle视频笔记知识点概览 #### 1. Oracle 用户管理 - **概念**:在Oracle数据库中,用户是用来管理访问权限的基本单位。每个用户都可以有自己的模式(schema),其中包含各种对象如表、视图等。 - **创建...

    oracle学习笔记整理

    以下是对Oracle学习笔记整理的主要知识点的详细说明: 1. **数据库选择**: 在决定使用哪种数据库时,通常需要考虑项目的规模、性能需求、安全性要求以及可用资源。Oracle数据库因其稳定性、可扩展性和高性能而被...

    MSDN oracle学习笔记

    Oracle数据库是全球最广泛使用的商业关系型数据库管理系统之一,由美国甲骨文公司(Oracle Corporation)开发和维护。MSDN(Microsoft Developer Network)是微软提供的一系列开发资源和技术支持的集合,其中包括对...

    oracle学习笔记-入门基础

    Oracle数据库是世界上最流行的数据库管理系统之一,它提供了丰富的特性和功能来优化数据管理和查询性能。本文主要探讨Oracle数据库的入门基础知识,特别是与索引相关的概念。 首先,我们要理解ROWID的概念。ROWID是...

    Oracle学习笔记——日常应用、深入管理、性能优化 示例代码

    Oracle 11g是最具代表性的高端关系型数据库管理系统,它在世界各地的大型商务数据库应用系统中被广泛...本书设计了大量的应用情景,介绍了数据库管理员和开发人员常用的管理、维护和优化Oracle 11g数据库的技术和技巧。

    韩顺平玩转oracle视频教程笔记

    总的来说,韩顺平的Oracle视频教程笔记覆盖了Oracle认证、安装、基本使用、用户管理等多个关键领域,旨在提供一个全面的学习路径,帮助初学者逐步掌握Oracle数据库的精髓。通过这些知识,学习者可以有效地管理和维护...

    韩顺平玩转Oracle视频笔记

    "韩顺平玩转Oracle视频笔记"是一份非常适合初学者的学习资料,通过视频教程的形式,深入浅出地讲解Oracle的基础知识和实际操作。 首先,Oracle安装过程中会自动创建两个关键用户:sys和system。sys用户作为超级用户...

    oracle学习笔记下载

    ### Oracle 学习笔记知识点概览 #### 一、Oracle 数据库系统参数查询与管理 在 Oracle 数据库的学习过程中,了解如何查看和管理数据库的系统参数是非常重要的。这些参数直接影响着数据库的性能和稳定性。 ##### ...

    王重东Oracle-EBS R12DBA维护笔记

    王重东的《Oracle-EBS R12 DBA维护笔记》是一份详尽的数据库管理员(DBA)参考资料,特别针对使用Oracle E-Business Suite Release 12 (EBS R12)的DBA。EBS是Oracle公司推出的一套全面的ERP解决方案,广泛应用于企业...

Global site tag (gtag.js) - Google Analytics