oracle和mysql字符类型长度问题
一、问题描述数据库大表冷热数据分离,需要把实例A的数据迁移到实例B, 由于表有300多G, 综合评估后,计划先在B实例创建相同表结构的表,然后通过dblink结合存储过程分批insert完成数据迁移;但是在迁移数据的时候报错,字段超长,但是明明我是按着原表表结构创建的归档表,并且字符集也一样,为啥会报错?二、问题分析原来是生产实例修改了参数NLS_LENGTH_SEMANTICS=char;介绍下
oracle dg库数据文件空间不足
dg库磁盘空间不足,但是其他目录还有空间处理办法,如果该实例数据量不大,可以直接从新搭建即可,但是如果实例数据很大,尽量还是修复下;方法1:当还有可用空间的时候,此时dg库还在正常运作,这个时候可以使用此方法:1、把主库所有可以扩展的数据文件关闭自动扩展;2、修改dg库参数:在dataguard的配置中,db_file_name_convert是比较常用的参数。如果备库中参数db_create_f
Oracle慢sql监控
近期需要给Oracle数据库添加慢sql监控,需要拿到sql文本,以及schema信息和真实耗时等等,于是探索了下Oracle 11g的特性sql monitor;1、如果同一个条慢sql执行两次,就会记录两条数据,如下图所示:select sql_id,username,sql_text,to_char(sql_exec_start,'yyyy-mm-dd hh24:mi:s
ora-04045和ora-16000报错处理
oracle 19c dg库查询视图报错,具体如下所示SQL> select count() from sysadm.DFW_SCHED;select count() from sysadm.DFW_SCHED*ERROR at line 1:ORA-04045: errors during recompilation/revalidation of SYSADM.DFW_SCHEDORA-
oracle 专用服务器连接和共享服务器连接
oracle服务器处理请求的两种最常用的方式,这两种方式分别是专用服务器连接和共享服务器连接。一、专用服务器: 登录时,Oracle总会为我创建一个新的线程。这通常称为专用服务器配置,因为这个服务器进程会在我的会话生存期中专门为我服务。对于每个会话,都为出现一个新的专用服务器,会话与专用服务器之间的存在一对一的映射。按照定义,这个专用服务器不是实例的一部分。我的客户进程(也就是想要连接数据库的程序
oracle锁级别相关测试
收到报警 数据库出现6级别的锁,于是研究下6级别的锁是什么!监控的sql如下:select count(*) from v$locked_object where locked_mode=6;做实验模拟出出现6级别锁的场景!1、ddl_lock_timeout参数DDL_LOCK_TIMEOUT specifies a time limit for
oracle密码过期处理办法
当账号处于expired locked 无法登录,但是还不知道该用户的密码,该如何解决呢? 解决办法: 方法1: 允许登录的天数为无限 密码过期后也可修改profile中的password_grace_time控制使用的天数 alter profile default limit PASSWORD_GRACE_TIME UNLIMITED;alter profile defa
gc current/cr block busy等待事件
最近遇到一个性能问题,top 5等待事件为 log file sync +gc cr block busy,于是总结下这俩之前的关系一:gc current/cr block busy等待事件首先知道:这里CR和current 是不同的概念,如果是读的话,那就是cr request,如果是更改的话,那就是current request(当前读)。1)gc current block busy&nb
oracle 19c pdb迁移
一:该方法失败了!使用rman 备份某个pdb,来实现迁移某个pdb的目的:针对19c制定备份任务,可以选择只备份特定的pdb,这样有个好处是,如果需要恢复,不用恢复重置文件和参数文件,直接恢复某个pdb即可,具体得做个试验记录下,这只是我的猜测!恢复某个或者多个pdb的时候,不需要停止其他的pdb; 然后再做一个试验,是不是可以从新起名来恢复某个pdb,例如liu_pdb恢复成he_pdb;首先
oracle 12c 静默安装以及使用问题小结
一:一定先创建监听,然后建库,否则报错:[oracle@tvy-mysql-cdsp-01 database]$ dbca -silent -createDatabase -responseFile /media/database/response/dbca.rsp[WARNING] [DBT-06801] Specified Fast Recov
sqlplus执行sql文件报错
问题1,具体报错如下,这个问题是字符集的问题, ORA-01756: quoted string not properly terminated 问题2 ,具体报错如下,这个问题是日期格式参数的问题 ORA-01843: not a valid month
Oracle rac时间不同步
oracle rac 11.2.0.4两个节点时间不同步检查数据库的时区发现不一样:节点oracle3:SQL> SELECT TZ_OFFSET(SESSIONTIMEZONE), TZ_OFFSET(DBTIMEZONE) FROM DUAL;TZ_OFFS TZ_OFFS------- -------+08:00 +00:00节点Oracle4:SQL> SELECT TZ_OF
oracle丢失的是所有的redo日志组
假设丢失的是所有的redo日志组,分下列几种情况分别处理:1.Oracle没开归档,一致性关闭数据库2.Oracle没开归档,非一致性关闭数据库3.Oracle开归档,一致性关闭数据库4.Oracle开归档,非一致性关闭数据库一:Oracle没开归档,一致性关闭数据库我做实验的过程中有一个诡异的情况,我先把redo文件从操作系统层面都删除了,但是数据库正常创建表,insert数据,我理解的是当你c
sqlplus和sqlldr工具安装
不管安装什么客户端工具都需要先安装instantclient-basic-linux.x64-11.2.0.4.0.zip这个包!!!首先介绍安装:sqlldr的命令!!!下载地址:https://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html直接下载zip包,解压即可!1、建立oracle的安装目录;[root@dev-
Oracle web界面乱码分析
问题描述web界面乱码,厂商给我一个sql文件,需要新建用户,然后新建表空间,然后执行人家的sql文件,刚开始什么没注意字符集问题直接执行了,很顺利的执行成功,然后启动tomcat,web界面居然乱码了!环境介绍:contos 6.9 +oracle 11g数据库的字符集为:SQL> select userenv('language') nls_lang from dual;
oracle dg库数据文件创建失败ORA-01111
ORA-10458: standby database requires recovery ORA-01157: cannot identify/lock data file 24 - see DBWR trace file ORA-01111: name for data file 24 is unknown - rename to correct file ORA-01110: data file 24:
Oracle相关数据字典视图
问题描述:alert日志发现报错主键冲突ORA-12012: 自动执行作业 24 出错ORA-00001: 违反唯一约束条件 (ADDEDTAXUSER.PK_PT_INOUTFLOW)ORA-06512: 在 "DWETL.SP_ETL_CONTROL", line 519ORA-06512: 在 line 7通过报错可以看出,是违反了ADDEDTAXUSER用户下的PK_PT_INOUTFLOW主键,并且是在执行DWETL用户...
oracle netca创建监听报错/u01/oracle/bin/netca: line 178: 11819 Aborted
环境:contos 6.9搭建Oracle 11.2.0.4安装oracle软件后,netca创建监听却报下面的错误:Oracle Net Services Configuration:## An unexpected error has been detected by HotSpot Virtual Machine:## SIGSEGV (0xb) at pc=0xa4bf5f4e, pid=11819, tid=3086902976## Java VM: Java HotSp...
RMAN的备份原理
今天看了DAVE对RMAN的备份原理的讲解,真的令我受益匪浅,之前只是能够熟练地运用该工具,却不知所以然。今天总算对RMAN的备份原理深入了一把。以下是我个人对DAVE讲的内容以及网上的文章的进行整理。注:本文只对RMAN的备份原理进行探究,并不讲到如何对数据库进行备份。RMAN的组成RMAN是SMR(Server Managed Rec...
oracle 11g自动内存管理
一:Oracle 11g自动内存管理概述oracle11g中的新的内存管理特性自动化内存管理(automatic memory management)。在该新特性之下SGA与PGA将会根据需要自动的扩展与收缩。你只需要设置两个内存管理相关的参数memory_target与memory_max_target.1)memory_target:该参数设置整个oracle数据库实例可以使用的内存量,or...