ORACLE
AskTOMmorow
不会理财的DBA不是一个好哲学家
展开
-
【ORACLE】锁机制
1.存在原因:并发+数据一致性==>锁 事务隔离级别也是基于锁实现的。2.基本锁类型: 排它锁(Exclusive Locks,即X锁):no read ,no write ;X+NULL(任何事务都不能再对当前数据对象加任何类型的锁) 共享锁(Share Locks,即S锁):read only;S+S(表示其它事务只能对当前数据加S锁,而不能加X锁)3.按保护对象的锁分类: DML锁(d原创 2016-08-30 11:15:18 · 378 阅读 · 0 评论 -
【ORACLE】ORA-00933 sql 命令未正确结束
sql语句(或者代码中的sql语句)写的问题原创 2017-03-01 16:38:18 · 827 阅读 · 0 评论 -
【ORACLE】ORA-01031 insufficient privileges
sqlplus "/ as sysdba" 连不上,报ora-01031:insufficient privileges解决方法注意多个数据库实例时候,set ORACLE_SID='',1、检查sqlnet.ora(WINDOWS下位于%ORACLE_HOME%NETWORKADMIN目录)是否包含这句:SQLNET.AUTHENTICATION_SERVICES=(NTS),没有的话加上2、检原创 2017-03-01 16:38:54 · 607 阅读 · 0 评论 -
【ORACLE】ORA-01034ORACLE not available
刚装上的oracle9i,上次还能用呢,这次突然用不了.[oracle@R39i oracle]$ sqlplus scott/tigerSQL*Plus: Release 9.2.0.4.0 - Production on Mon Nov 24 11:06:50 2008Copyright (c) 1982, 2002, Oracle Corporation. All rights reserve原创 2017-03-02 09:57:33 · 205 阅读 · 0 评论 -
【ORACLE】ORA-01157错误解决
ORA-01157错误解决(zt)ORA-1157错误解决手册一.错误描述ORA-1157, "cannot identify/lock data file %s - see DBWR trace file"引起的原因: 因为数据文件已经在被使用了从而导致数据库的后台进程不能找到相应的数据文件或者不能锁定相应的数据文件,这样数据库将禁止访问这些数据文件而其他的数据文件则没有影响。伴随这个错转载 2017-03-02 09:58:48 · 2805 阅读 · 0 评论 -
【ORACLE】ORA-01722无效数字
【原因】筛选数据类型和数据库数据类型不符【解决】where条件逐一排查,查看是否符合数据类型,若条件较多则采用分批试运行排查的方法 select * from workflow_requestlog where workflowid = 5085 and logtype = '3' -- and logtype = 3 logtype是char(1) and nodeid i原创 2017-03-02 09:59:51 · 462 阅读 · 0 评论 -
【ORACLE】ORA-02374 ORA-12899 ORA-02372 (impdp)
今天使用数据泵导入数据的时候报:ORA-02374: conversion error loading table "HR2QAS01"."V_PS_STAFFPOS_REPTO_PUB_MT"ORA-12899: value too large for column POST_NAME (actual: 57, maximum: 50)ORA-02372: data for row: POS原创 2017-03-02 10:00:38 · 1747 阅读 · 0 评论 -
【ORACLE】ORA-02374
ORA-02374: conversion error loading table "NCDATA"."IA_BILL_B"ORA-12899: value too large for column VDEF3 (actual: 107, maximum: 100)ORA-02372: data for row: VDEF3 : 0X'30313533323837A3AC303135333238原创 2017-03-02 10:01:28 · 798 阅读 · 0 评论 -
【ORACLE】ORA-08104
ORA-08104: this index object 903237 is being online built or rebuilt异常终止的在线重建索引导致SMON进程没有将索引的重建标志改回来,ORACLE认为索引还在ONLINE REBUILD中,禁止删除索引。--sysdbaDECLARE RetVal BOOLEAN; OBJECT_ID BINARY_INTEGER;原创 2017-03-02 10:02:11 · 314 阅读 · 0 评论 -
【ORACLE】ora-12518【AIX】监听程序无法分发客户机连接
su - oracle0403-030 The fork function failed. Too many processes already exist.看来不是oracle的问题了# ps -ef|grep oracle|wc 126 1239 10614 # lsattr -E -l sys0 -a maxuproc maxuproc 128 Maximum nu原创 2017-03-02 10:03:26 · 488 阅读 · 0 评论 -
【ORACLE】ORA-12154 TNS无法解析指定的连接标识符;ORA-12541 TNS 无监听程序;ORA-12560 TNS 协议适配器错误
ORA-12154 TNS无法解析指定的连接标识符ORA-12154 TNS无法解析指定的连接标识符重建监听,确保ORACLE_HOME/db_1/NETWORK/ADMIN下参数正确启动数据库的监听(ORACLE_HOME/db_1/bin/lsnrctl.exe start)ORA-12541 TNS 无监听程序(1)ping(测网络能不能通);(2)telnet 对应端口(默认telnet原创 2017-03-02 10:06:17 · 1085 阅读 · 0 评论 -
【ORACLE】ORA-27102 out of memory Linux-X86_64 Error 28 No space left on device
ORA-27102:out of memory Linux-X86_64 Error: 28: No space left on device 适用于:Oracle Server - Enterprise Edition - Ver原创 2017-03-02 10:07:41 · 812 阅读 · 0 评论 -
【ORACLE】ORA-28000 the account is locked-的解决办法;ORA-39001,ORA-39000,ORA-39143
ORA-28000 the account is locked-的解决办法ORA-28000: the account is locked第一步:使用PL/SQL,登录名为system,数据库名称不变,选择类型的时候把Normal修改为Sysdba;第二步:选择myjob,查看users;第三步:选择system,右击点击“编辑”;第四步:修改密码,把“帐户被锁住”的勾去掉;第五步:点击“原创 2017-03-02 10:10:09 · 1687 阅读 · 0 评论 -
【ORACLE】ORA-39014错误
到ORA-39014错误,查Metalink找到如下文章,确认可用,分享给没有账号的朋友。Applies to: Oracle Server - Enterprise Edition - Version: 10.2.0.3.0This problem can occur on any platform.SymptomsWhile attempting to perform an expor原创 2017-03-02 10:11:20 · 1179 阅读 · 0 评论 -
【ORACLE】Oracle11g,12c 高危漏洞
【性质】高危漏洞【危害】仅有查询权限的用户可以对数据进行增、删、改操作【影响范围】广泛,包括11.2.0.3,11.2.0.4,12.1等版本(10g版本不包含)。【修复】2014年7月的CPU中被修正,强烈建议您检查所有Oracle数据库,确认是否存在该安全风险。与此有关的CVE号包括:CVE-2013-3751、CVE-2014-4236、CVE-2014-4237、CVE-2014-42原创 2017-03-02 10:12:06 · 1367 阅读 · 0 评论 -
【SQLSERVER】output用法解析
USE njtestdbGOCREATE TABLE testbzm([ID] bigint IDENTITY(1,1) NOT NULL PRIMARY KEY,[CODE] varchar(20) NOT NULL )insert into testbzm(code) values('10010')select * from testbzm-------------------原创 2017-03-02 11:05:57 · 1836 阅读 · 0 评论 -
【ORACLE】ORA-00911 无效字符
sql语句语法写的有问题(或者字符大小写有问题)原创 2017-03-01 16:36:48 · 421 阅读 · 0 评论 -
【ORACLE】ORA-00845 MEMORY_TARGET not supported on this system
SQL> startupORA-00845: MEMORY_TARGET not supported on this system查找资料后发现问题如下,见metalinikID 460506.1在oracle 11g中新增的内存自动管理的参数MEMORY_TARGET,它能自动调整SGA和PGA,这个特性需要用到/dev/shm共享文件系统,而且要求/dev/shm必须大于MEMORY_TARGE原创 2017-03-01 16:36:06 · 268 阅读 · 0 评论 -
【ORACLE】SQL死锁及结束SQL线程
---------------lock--------------------SELECT l.session_id sid, s.serial#, l.locked_mode 锁模式, l.oracle_username 登录用户, s.username, l.os_user_name 登录机器用户名,原创 2016-08-30 11:17:02 · 498 阅读 · 0 评论 -
【ORACLE】数据库监控常用脚本
--SQL监控常用脚本--锁等待select w.holding_session sid, w.* from (select * from dba_waiters) w;--会话锁信息select sid, type, id1, id2, decode(lmode, 0, 'Non原创 2016-08-30 11:22:35 · 436 阅读 · 0 评论 -
【ORACLE】大数据快速插入
删除索引 数据量评估,确定分批字段 测试插入 分批插入 校验 恢复索引1.alter table TABLENAME nologging;--归档模式必须设置,最后logging2.insert /*+ Append */ into TABLENAME(......) --和/*+ Append */ 配合效果最好/*append只在insert … select …中起作用,像i原创 2016-08-30 15:41:50 · 615 阅读 · 0 评论 -
【ORACLE】大数据快速更新(游标分批提交)
--【避免回滚段过大】--删除索引,最后恢复索引--分批插入DECLARECURSOR c1 IS SELECT ROWID row_id FROM ts_batchcode WHERE dr=0 order by rowid;c_commit CONSTANT PLS_INTEGER := 10000;--CONSTANT原创 2016-08-30 15:43:35 · 1809 阅读 · 0 评论 -
【ORACLE】执行计划--Get && Look
--(1)sqlplus下SQL> set autotrace on; --实际执行后生成执行计划SQL> select * from dual;--SQL --执行完语句后,会显示explain plan 与 统计信息。SQL> set autotrace traceonly;--只列出执行计划,而不会真正的执行语句(执行计划可能不准)SQL>SET AUTOTRACE OFF原创 2016-08-30 15:44:52 · 402 阅读 · 0 评论 -
【ORACLE】执行计划--名词&&概念
--名词-------------------------------1)Rowid:系统自动生成的伪列,广泛(每个表都有),只读,伴随行的整个生命周期。指出了该行所在的数据文件、数据块以及行在该块中的位置。Recursive SQL(递归SQL): 触发Recursive Call的情况: (1)动态的分配空间:insert没有足够的空间来保存row记录时发生。原创 2016-08-30 15:46:19 · 958 阅读 · 0 评论 -
执行计划、索引 是否会影响SQL的执行结果
以前一自认为数据库的执行计划、索引属于数据库调优的范畴,最多只影响数据库的执行结果,但是接触的案例多了,理解执行计划深入了之后发现,有的时候执行计划会影响数据库的执行结果,甚至能使原来正确运行的SQL报错,无法正常产生结果集。下面分享下笔者在日常工作中遇到的两个案例: 注:案例在原库能重现,此处没有提供可以重现的DEMO,只做参考之用,相关表和字段已做脱敏处理。案例一:DB:oracle 10原创 2016-09-01 18:12:21 · 671 阅读 · 0 评论 -
【ORACLE】报错IMP-00058ORA-00942
【原因】检查了一下导出的日志,发现了问题: 一、dmp文件是由10.02.01导出的 二、目标库的版本是10.2.0.1.0 三、导入dmp用的客户端是11.2.0.1.0 估计是版本的问题导致,我直接到目标数据的服务器导数据,导入一切正常。为什么有些表能正常导入,有些表有问题呢?检查的结果是,所有不能正常导入的表中都含有CLOB字段。--Error log连接到: Ora原创 2017-03-01 16:25:40 · 1338 阅读 · 0 评论 -
【ORACLE】[问题解决]ORA-01427 单行子查询返回多个行
有人问题我一个问题,情况如下: 他要用根据divide_act_channel_day的new_amount字段去更新divide_stat的new_amount字段。 两张表关联的条件:day=log_time,channel=channel–SQL如下: update divide_stat set divide_stat.new_amount=(select divide_act_c原创 2017-03-01 16:26:59 · 7853 阅读 · 0 评论 -
【oracle】【oracle 11g】空表无法导出解决方法
ORACLE11g空表无法导出解决方法系统环境:Oracle 11g问题描述11G中有个新特性,当表无数据时,不分配segment,以节省空间 解决方法:该问题有三种解决方法:方法一:insert一行,再rollback就产生segment了。该方法是在在空表中插入数据,再删除,则产生segment。导出时则可导出空表。弊端:该方式如果空表很多,工作量很大。方法二:设置deferre原创 2017-03-01 16:28:06 · 643 阅读 · 0 评论 -
【ORACLE】【操作报错】ORA-25150不允许对区参数执行ALERING
1、执行 ,在pl/sql develop 中修改表,新家字段,点应用,出现错误ORA-25150:不允许对区参数执行ALERING;ALTER table MBXXB0 add SYCS00 varchar2(10);报错:ORA-25150:不允许对区参数执行ALTERING -- Alter table alter table MBXXB0storage { next 32原创 2017-03-01 16:28:56 · 1239 阅读 · 0 评论 -
【ORACLE】EXP-00002 写入导出文件时出错
. . 正在导出表 GL_TRANSSELFDEF导出了 1 行 . . 正在导出表 GL_UICONFIG EXP-00002: 写入导出文件时出错 EXP-00002: 写入导出文件时出错 EXP-00000: 导出终止失败1.检查磁盘空间 2.检查磁盘格式 FAT32文件系统不支持大于4G的原创 2017-03-01 16:32:28 · 2940 阅读 · 0 评论 -
【ORACLE】EXP-00003问题解决
使用旧版本的exp从9205(或以上)版本导出有lob对象的表时会出现 “EXP-00003: no storage definition found for segment …..”的错误, 这是Oracle的一个Bug用Oracle 11g EXP/10g Exp命令备份库遇到以下错误: EXP-00003: no storage definition found for segment(11原创 2017-03-01 16:33:12 · 371 阅读 · 0 评论 -
【ORACLE】IMP-00058
IMP-00058: 遇到 ORACLE 错误 12154ORA-12154: TNS: 无法解析指定的连接标识符 (1)启动监听服务(测试client能否连接上或者sqlplus username/passwd@SID能否登陆或者tnsping SID能否通,不通则新建监听服务) (2)检查用户权限及用户对应的表空间默认值为NNC_DATA01; (3)增加参数full=y,SID增加_IP原创 2017-03-01 16:34:21 · 883 阅读 · 0 评论 -
【ORACLE】ORA-00054 资源正忙,要求指定 NOWAIT
问题如下:SQL> conn scott/tiger@vm_databaseConnected to Oracle Database 11g Enterprise Edition Release 11.1.0.6.0Connected as scott。。。。。。SQL> drop table student2;drop table student2ORA-00054: 资源正忙, 但指定原创 2017-03-01 16:35:16 · 265 阅读 · 0 评论 -
oracle 11g for Linux(Red Hat 4.8.5-11) 部署手记
查看系统版本信息[root@db_slave ~]# uname -aLinux db_slave 3.10.0-514.6.1.el7.x86_64 #1 SMP Wed Jan 18 13:06:36 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux[root@db_slave ~]# lsb_release -abash: lsb_release: comm原创 2017-08-24 22:04:34 · 1787 阅读 · 0 评论