`
hanxinyu
  • 浏览: 127774 次
  • 来自: henan china
社区版块
存档分类
最新评论

oracel 常用操作(一)

阅读更多

查看存储过程内容:select text from user_source where name =upper('sp_kr_pd_markplan_info')
查看是否调用存储过程:select * from dgdm_dw.tb_dw_sys_log where table_name='TB_DW_MD_WORKF_MARKPLAN_CUR';
查看分区的命令:从视图user_tab_partitions  和  user_segments 中可以查询到

增加新分区命令:alter table table_name add partition partition_name values()
查看存储过程中含有tb_kr_kpi_nuser_day:select * from user_source t where t.type like '%tb_kr_kpi_nuser_day%'
查看表结构命令 select dbms_metadata.get_ddl('TABLE','TB_KR_SC_VIP_MON','dgdm_kr') from dual;

查看存储过程命令 select text from user_source where name =upper('sp_kr_pd_markplan_sta_qqt');
编译存储过程 alter procedure sp_kr_pd_markplan_sta_qqt COMPILE;

导出表结构和存储过程
exp dgdm_ods/dgdm_ods file=dgdm_ods_struct rows=no log=dgdm_ods
...
关键是rows=no不导入数据


显示表结构:
select dbms_metadata.get_ddl('TABLE','TB_MK_SC_USER_WEEK','DGDM_MK') FROM DUAL;

执行存储过程

var ttt number;

 SP_KR_SERVICE_DAY('20070610',:ttt);

1、查看表空间的名称及大小
column db_name format a10
select SYS_CONTEXT ('USERENV', 'db_name') db_name,t.tablespace_name,round(sum(bytes/(1024*1024)),0) ts_size
from sys.dba_tablespaces t, sys.dba_data_files d
where t.tablespace_name = d.tablespace_name
group by t.tablespace_name
order by 2;


6、查看表空间的使用情况
select tablespace_name,round(sum(bytes)/1024/1024/1024) as free_space
from dba_free_space
group by tablespace_name
order by 1;

--表空间使用情况
SELECT A.TABLESPACE_NAME,round(A.BYTES/1024/1024/1024) TOTAL,round(B.BYTES/1024/1024/1024) USED, round(C.BYTES/1024/1024/1024) FREE,
round((B.BYTES*100)/A.BYTES,2) "% USED",round((C.BYTES*100)/A.BYTES,2) "% FREE"
FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C
WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE_NAME
--and round((B.BYTES*100)/A.BYTES,2) >90
order by 1;


--表空间内对象
column segment_name format a30
column partition_name format a30
select segment_name,partition_name,bytes/1024/1024 from dba_segments where tablespace_name ='TBS_DW_LIST_DATA_5' order by 1,2;

压缩分区
alter table dgdm_dw.tb_dw_ls_cdr_gsm move partition ls_cdr_gsm_20070501 compress parallel 30;
--对象有效性
Select owner,object_Name,status From all_objects
Where owner In('GDDM_CB','DGDM_ODS','DGDM_DW','DGDM_KR','DGDM_MK')
 And object_type In ('PROCEDURE','FUNCTION')
Order By 1,2

select dbms_metadata.get_ddl('TABLE','TB_KR_SC_VIP_MON','dgdm_kr') from dual;


oracle数据库备份有两种方法:物理备份(数据库运行在归档模式下)和
 逻辑备份(数据库不需要运行在归档模式下,通常业务数据库采用逻辑备份,它备份比较简单)
逻辑备份数据库:
 oracle数据库的逻辑备份有三种模式:表备份,用户备份,完全备份
 表备份:备份某个用户下指定的对象,备份到本地文件命令:
  exp icdmain/icd rows=y indexs=n compress=n buffer=65536 feedback=100000 volsize=0
  file=test.dmp log=test.log tables=icdmain.table1,icdmain.table2
 用户备份:备份某个用户模式下所有的对象,备份到本地文件命令:
  exp icdmain/icd owner=icdmain rows=y indexs=n compress=n buffer=65536 feedback=100000 volsize=0
  file=test.dmp log=test.log
 完全备份:备份完整的数据库,备份到本地的命令如下:
  exp icdmain/icd
恢复方案:
 数据库逻辑恢复分为表恢复、用户恢复、完全恢复三种模式
 表恢复:
  A:恢复备份数据的全部内容,转向文件所在的目录,从本地文件恢复
   imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexs=n commit=y buffer=65536 feedback=100000 ignore=n volsize=0
   file=test.dmp log=test.log STATISTICS=none
  B:恢复备份数据
   imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexs=n commit=y buffer=65536 feedback=100000 ignore=n volsize=0
   file=test.dmp log=test.log tables=table1,table2
 用户恢复:
  imp icdmain/icd fromuser=icdmain touser=icdmain rows=y indexes=n
  commit=y buffer=65536 feedback=100000 ignore=n volsize=0
  file=exp_icdmain_yyyymmdd.dmp log=imp_icdmain_yyyymmdd.log
 完全模式:
  imp system/manager rows=y indexes=n commit=y buffer=65536
  feedback=100000 ignore=y volsize=0 full=y
  file=exp_icdmain_yyyymmdd.dmp log=imp_icdmain_yyyymmdd.log  
参数说明
1. ignore参数
Oracle在恢复数据的过程中,当恢复某个表时,该表已经存在,就要根据ignore参数的设置来决定如何操作。
若ignore=y,Oracle不执行CREATE TABLE语句,直接将数据插入到表中,如果插入的记录违背了约束条件,比如主键约束,则出错的记录不会插入,但合法的记录会添加到表中。
若ignore=n,Oracle不执行CREATE TABLE语句,同时也不会将数据插入到表中,而是忽略该表的错误,继续恢复下一个表。
2. indexes参数
在恢复数据的过程中,若indexes=n,则表上的索引不会被恢复,但是主键对应的唯一索引将无条件恢复,这是为了保证数据的完整性。  
恢复方法
业务数据库采用表恢复方案。在用IMP进行恢复前,先在SYS用户下运行CATEXP.SQL文件(如果以前已运行该文件,则不要执行这个脚本),然后执行下列命令:
IMP ICDMAIN/ICD FILE=文件名 LOG=LOG文件名 ROWS=Y
COMMIT=Y BUFFER=Y IGNORE=Y TABLES=表名
注:要恢复的表名参照备份的表名
  。恢复是在原表基础上累加数据
  。没有特殊说明,不允许在客户端执行恢复命令
恢复时注意事项:如果存在分区表,目标分区表中的分区必须存在源分区表中的分区,否则会提示分区不存在
  
  
  
从oracle数据库导出数据命令:
exp dgdm_ods/dgdm_ods file=XXXX0615 log=XXXX0615 direct=y tables=dgdm_dw.ab1,tab2,tab3:part1,tab4:part2,
 
表的话直接写表名,可以加上用户名
direct=y:从直接路径倒出数据,比常规方式更快速;

导入数据命令:
imp dgdm_kr/dgdm_kr file=kr0615.dmp full=y  log=imp.kr0615.dmp.log ignore=y


ORA-01033: ORACLE initialization or shutdown in progress
原因:可能是起了一个sqlplus来关闭数据库,但数据库还没有完全关闭之前,从操作系统里把刚才那个sqlplus的进程给杀掉了
      另一种可能是oracle的一些核心后台进程,被人从操作系统里杀掉了,那么在关闭数据库是就出现了问题
解决方法:
1.在dos下执行sqlplus /nolog
2.以sysdba连接conn / as sysdba
3.startup
4.shutdown immediate
5.startup
数据库成功装载成功

分享到:
评论

相关推荐

    Linux下Oracle常用操作

    ### Linux下Oracle常用操作知识点详解 #### 一、概述 在Linux环境下管理Oracle数据库时,掌握一系列常用的命令是非常重要的。这些命令可以帮助我们有效地监控、维护和优化数据库性能。本文将详细介绍Linux下Oracle...

    oracle常用操作大全

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,它在企业级数据...以上是对Oracle常用操作的概述,实践中可能涉及更多细节和特定场景的应用。熟练掌握这些操作将有助于提高Oracle数据库管理的效率和可靠性。

    Oracle常用操作技巧.zip

    oracle常用操作技巧,包括oracle安装步骤、网络配制、EM、备份、RMAN的备份与恢复、逻辑备份、闪回、ASM(管理存储软件)、数据迁移、安全控制、oracle安装及常规操作、SQL语句、函数、SQL语句、权限、体系结构、空间...

    Oracle dba常用操作

    Oracle dba常用操作,很基础很详细。

    C# oracle 常用操作类

    自己常用的Oracle 操作类,写写小程序很好用。简单实用。

    Oracle常用操作汇编

    本文主要涵盖了在Oracle数据库中进行的一些常用操作,包括DOS下的命令、用户管理、系统参数查看与修改,以及在Linux环境下数据库的进程和内存查看,以及如何配置数据库自动启动。 首先,我们来看DOS下的Oracle常用...

    Oracle常用方法

    集合部分Oracle常用操作,实现建立表空间,创建用户,分配权限,备份/还原Oracle数据库等等。

    oracle数据库常用操作语句

    oracle数据库常用操作语句,实现对用户的管理和权限管理。

    Oracle常用命令大全

    ### Oracle常用命令详解 #### 一、Oracle的启动与关闭 **1. 在单机环境下的启动与关闭** - **启动Oracle系统** - **切换用户:** 首先需要切换到Oracle用户环境。 ```bash su - oracle ``` - **使用`svrmgrl`...

    oracle 常用命令 TXT 最全的

    根据提供的文件信息,我们可以整理出一系列关于Oracle数据库管理和操作的重要知识点。下面将详细解析这些知识点,并尽可能地提供更多的背景信息和实用建议。 ### 1. 启动与停止Oracle服务 - **启动Oracle服务**: ...

    oracle常用操作文档

    本压缩包中的“oracle常用操作文档”显然是一份详尽的指南,涵盖了Oracle数据库系统的各种常见操作和管理任务。以下是对这些知识点的详细说明: 1. **Oracle安装与配置**:在开始使用Oracle之前,需要正确安装...

    oracle常用监控脚本

    "Oracle常用监控脚本"通常包含了多种用于检查数据库性能、资源使用情况以及问题排查的工具和脚本。这些脚本可以帮助DBA(数据库管理员)实时了解数据库的状态,及时发现并解决问题,确保系统的健康运行。 1. **SQL ...

    oracle常用命令文档

    ### Oracle 常用命令与操作指南 #### 一、Oracle 安装与卸载注意事项 **1.1 Oracle 的安装** - **安装步骤:** 对于 Oracle 的安装,网络上有很多详细的指导教程。在安装过程中,需要注意的是,管理口令部分确保...

    oracle常用操作备份

    本文将详细讨论Oracle数据库的常用操作以及备份策略,特别关注冷备份这一经典方法。 首先,我们来看"冷备份"。冷备份是在数据库完全关闭状态下进行的备份,这意味着在备份期间,数据库不会接收任何新的事务,保证了...

    oracle常用函数大全

    Oracle 常用函数大全 Oracle 中有许多常用函数,以下是其中一些: 字符函数 1. ASCII:返回与指定的字符对应的十进制数。...这些函数是 Oracle 中常用的字符串处理函数,可以用来进行字符串的操作和处理。

    oracle常用sql整理

    本文将基于"oracle常用sql整理"的主题,深入探讨Oracle SQL的一些核心概念、语句及其实用技巧,适合初级到中级水平的学习者。 一、SQL基础 SQL是标准化的查询语言,分为DDL(Data Definition Language)、DML(Data...

    ORACLE常用SQL语句大全.pdf

    本文档总结了 Oracle 中常用的 SQL 语句,包括数据库的创建、删除、备份、表的创建、删除、修改、索引的创建、视图的创建等基本操作,以及一些高级查询运算符的使用。 一、数据库操作 * 创建数据库:CREATE ...

    oracle常用管理工具

    本文将详细介绍Oracle中的一些常用管理工具,包括Oracle Database Configuration Assistant (DBCA)、SQL*Plus、SQL*Plus Worksheet以及Oracle Enterprise Manager (OEM)。 1. **Oracle Database Configuration ...

    oracle常用cmd命令

    下面我们将详细介绍 Oracle 常用的 CMD 命令,帮助新手快速了解相关的操作。 一、连接数据库 在使用 Oracle 之前,需要连接到数据库。我们可以使用 sqlplus 命令连接到数据库。sqlplus 是 Oracle 的命令行工具,...

Global site tag (gtag.js) - Google Analytics