![个人头像照片](https://ucc.alicdn.com/avatar/img_2963b4acf7a42c6ca251715df5359c5d.jpg)
开源技术专家
【一】环境说明 1.1 Oracle服务端版本:12.2.0.1 1.2 Oracle客户端版本:11.2.0.1 【二】问题说明 2.1 客户端连接服务端的时候报ORA-28040的错误。
> > >> > > > > > > >>
...
一、mysqlbackup工具的介绍 1.1 mysqlbackup软件的说明undefined Mysql的备份方法有很多种,大部分企业当数据量很小的时候都是选择mysqldump导出数据库的方式来进行备份,但是当数据量较多的时候,就不建议用这种方法进行。
【前言】测试环境中经常需要多台mysql数据库来进行各种环境和场景的模拟,由于测试环境中的资源一般都是比较有限的,也就需要在一台服务器上面搭建多个mysql数据库来完成测试的需求。
【环境说明】 Oracle Dataguard在的运用已经算是比较成熟了,个人也用了挺多的场景和各种平台了。之前在windows2003平台上面的搭建oracle 11.2数据库的datagaurad遇到了bug。
【说明】MySQL5.7忘记root密码的时候,处理方式跟之前的版本有些不一样,这边整理如下: 【1】修改参数文件跳过密码验证 ...
【前言】很久没有用ORACLE EM了,在LINUX上面安装了ORACLE 12.2的数据库,并安装了ORACLE EM,结果登录的时候就报了以下的问题 解决方法:其实也很简单,这边把网上其他网友遇到的问题也汇总以下: 1、地址...
【前言】现在CPU的发展已不仅朝着单个性能更好的方向了,而且还朝着多核数多核心的方向发展了。Oracle数据库大部分也都是利用单线程的串行方式在运行。通过并行(Parallel)操作特性,充分应用CPU的多核心特点,提高对数据的操作效率,满足在特定场景下对海量数据操作的需求。
【前言】Oracle 11G开始支持了active dataguard,这时候从库就可以分担一些主库的读的压力了。这种架构有个问题就是从库的性能压力很难排除出来。有个朋友也是使用从库进行数据的抽取,但是这个从库每隔一段时间就会由于压力过大而导致系统宕机了。
【说明】在进行对oralce的分区表的分区字段进行update操作的时候,就会报ORA-14402的错误,这种情况通过开启表的行移动来避免错误的发生; 【场景模拟】 1、创建分区表SCOTT.
【前言】Dataguard的从库一般情况下都是出于数据的抽取和查询的作用的,但是万一在主库发生故障的情况下就需要切换到备库了。而这种故障的切换往往又是灾难性的情况:比如主库的服务器根本就起不来了,没有办法进行正常的切换,就需要强制的把从库切换成主库了。
【文档说明】本文档介绍从SQLSERVER2008R2通过创建链接服务器ORACLE11G,进行数据的获取操作的步骤;网上也有很多的相关文档,但是操作一直不成功,估计是环境比较复杂。
【1】在root账号下 使用命令vi /etc/oratab编辑文件/etc/oratab,把N修改成Y DB1:/u01/app/oracle/product/OraDb11g_home1:Y 主机名 oracle_home 【2...
【背景】分区表创建好了之后,如果需要最大化分区表的性能就需要结合索引的使用,分区表有两种索引:本地索引和全局索引。既然存在着两种的索引类型,相信存在即合理。既然存在就会有存在的原因,也就是在特定的场景中就更能发挥出索引的性能的; 本文档通过测试,总结出两种索引的适合的场景; 【测试环境】 数据库版本:11.
【背景】公司业务系统的数据增长很快,需要进行定期进行归档,其中有些数据用分区表进行存储,归档完之后释放了大量的空间,之前已经有文档介绍普通表进行shrink操作的步骤,本文档记录对分区表和复合分区表进行shrink的操作; 【测试环境的搭建】 数据库版本:11.
【业务场景】需要把生产的ERP系统上面的一个表的数据抽取到另外一个报表的数据库里面,公司内部是没有ESB的平台,考虑到整个需求的紧急程度和对效率的要求,建议采用物化视图+DBLINK的方式来实现数据的同步; 【环境说明】 数据库的版本:11.
ORACLE在写JOB的时候经常会遇到时间的计算等操作,现简单整理下各种时间的计算: 以下sql语句是两种的写法:s select to_char(sysdate ,'YYYY-MM-DD HH24:MI:SS') ...
【背景】一个TEMP表的字段设置短了,开发要进行修改, alter table SALE_TEMP modify CODE VARCHAR2(2000); 就报了一个错误ORA-14450:试图访问已经在使用的事务处理临时表; ...
【背景】今天在做一个SAP表VBRP的在线重定义,报了如下的错误,这个报错的原因很清晰,就是由于VBRP_NEW20161221的有些字段有问题导致数据插入不进去; 点击(此处)折叠或打开 SQL> EXEC DBMS_REDEFINITION.
【前言】oracle官方建议当表的大小大于2GB的时候就使用分区表进行管理,分区表相对于小的表管理和性能上都有很大的优势,本文档暂时不介绍具体的优势,主要介绍几种普通表转换成分区表的方法;【方法概述】oracle官方给了以下四种操作的方法: A) Export...
环境说明】 oracle版本:11.2.0 【一】进行测试环境的配置 1. 创建表test create table test as select rownum id ,a.
当系统运行了一段时间后,系统基本也趋于稳定了,SQL调优也变了DBA的一个主要的工作内容,很多时候都是通过查看awr报告来检查出有性能瓶颈的SQL语句,通过这个可以很清晰的看到具体运行多少时间、次数、CPU、IO的比例。
【场景说明】数据库版本:11.2.0.3,创建SCHEDULER JOB,前台运行的时候没有报错,但是设置成后台JOB的时候,就是不会自动运行,且报如下错误 ORA-27492和ORA-06512 【原因分析】当前用户下可以运行,说明JOB本身没有问题;在使用Oracle jobs时,需要关注job_queue_processes参数,该参数用于设定job队列可以启动的进程数,之前有碰到用户由于这个参数设置为0导致JOB不能运行。
【环境说明】本文档介绍在OEL6.3的环境下安装基于ASM 11.2.0.3的ORACLE数据库的安装; 虚拟机:VMware 10 OS:Oracle Linux Server release 6.
【说明】本文档介绍DataGuard在最大性能模式下面的写测试实验; 启用Dataguard的日志传输命令: ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2='ENABLE'; 启用日志传输 ...
脚本如下: SELECT TO_CHAR(TRUNC(FIRST_TIME),'Mon DD') "DG Date", TO_CHAR(SUM(DECODE(TO_CHAR(FIRST_TIME,'HH24'),'00',1,0)),'9999') "...
【前言】管理Oracle DataGuard的方式有三种:SQLPlus、OEM Grid Control、Broker; 先学习用SQLPlus进行切换,先了解其中的原理。
背景:测试环境突然发现,主备库不能同步了,查看备库的日志发现备库一直处于等待接收日志的状态; Media Recovery Waiting for thread 1 sequence 34 Completed: ALTER DATABASE RECOVER MA...
在WINDOS下面操作Sqlplus下面可以很方便的进行左右键,上下键的操作。但是在Linux下面这样操作就会乱码,一旦输入错误就很麻烦,虽然可以安装Ctrl+Backspace可以实现后退删除的功能,但始终不方便; 通过rlwrap可以很方便的实现,上下查看历史命令,左右修改的问题。
【说明】有时候由于前期数据库的规划时没有想得那么细,或者后期的变更导致数数据文件需要改名或者进行位置的变更,本文档介绍数据文件改名的方法: 【1】查看数据文件的位置 SQL> select file_name,TABLESPACE_NAME from dba...
【前言】学习技术跟学习武功一样,之前整理了DataGuard的搭建和切换,这些都是武功招式,但是心法还没有学。本文档介绍DataGuard的重要心法,DataGuard的三种保护模式跟日志传输模式的关系,文章的主要内容来自于Oracle DataGuard 11G的参考手册。
【前言】连接ORACLE其实是挺简单的一件事,只要会启动监听、配置tnsnames文件就可以了,但是相信大部分的人对于更深一点的动态监听和静态监听会知道一些,但也仅限于表面而已,在后面的工作中,因为一些配置的缘故需要对这个更深一步了解,所以就有了今天这个文档; 【1】数据库和监听注册的过程: 1.
【环境】数据库版本:ORACLE 11.2.0.3 【错误日志】用system用户进行数据库的expdp操作的时候报错了,详细如下: Starting "SYSTEM".
ASM磁盘空间查看可以通过操作系统查看,也可以在sqlplus里面进行查看 【1】操作系统中查看的方法 [grid@db01 ~]$ asmcmdASMCMD> lsdgState Type Rebal Sector Block ...
环境说明: OS:Centos6.5 DB:Oracle 11.2.0.3 问题:数据库启动监听的时候,报如下错误: [oracle@localhost admin]$ lsnrctl start Connecting to (DESCRIPTION...
【前言】很多人都习惯了图形化界面的方式安装ORACLE数据库,随着阿里云的兴起,有的数据库开始部署到了阿里云上面,但是随即面临这个一个问题:阿里云的服务器是在公网上面的,但是个人电脑属于内网里面的,这样在进行设置DISPLAY的环境变量的时候就没有办法从公网上发送安装图面到个人电脑上。
【说明】生产数据库一般情况下都是不建议使用11.2.0.1等类似的点1或R1的版本,11.2.0.1是基础版本,这个版本相对上一个版本有较多的特性的更新,而特性的更新也意味着出现BUG的可能性会比其他版本高很多。
【说明】无意中看到一个同事的QQ留言上面写着“真累“,还没有过30分钟就接到这个同事的电话,如下:刚在做删除数据的时候,发现由于条件没有写好,导致删错了,有没有办法恢复;接到这个任务 ,首先是深深的感慨了一下:人在状态不好的情况下尽量多休息少做事,特别是涉及到很重要的事情。
【前言】windows平台oracle连接mysql的方法已经给大家介绍过了,现在大部分的ORACLE和MySQL都是在LINUX平台上面,刚好最近也有这种需求,顺手把整个搭建过程记录起来和大家分享。
【一】朋友公司有个重要的系统,由于业务的需求需要直接开放外网,这个安全隐患让信息中心的领导一直挂在心上。终于有一天公司的一个开发人员离职出去了,但是系统的一些账号密码并没有更新,然后这个开发人员就频繁的登录到系统中查看数据; 其实以上的场景在很多小公司都会出现,由于公司没有一名专职的DBA,开发人员需要兼着DBA的工作,做的往往没有那么到位。
【问题背景】公司的一个销售系统运行了有5年的时间了,最近需要对该系统升级,其中有个问题一直导致整个升级过程一直停滞;升级的过程中,需要对一个表做添加字段的操作,直接运行alter语句进行操作,需要消耗大概8个小时,由于操作的过程中会进行锁表的操作,但是业务允许的停机操作只有4个小时;经过了一系列的测试终于完成了系统的更新,以下是更新过程中的一些经验。
【前言】测试环境中,磁盘空间爆满了。发现有一百多个的binlog文件,每个文件默认都是1GB,这些binlog占用了90%的空间。然后就用rm -rf命令删除了binlog,紧接着重启数据库的时候发现启动报错了; 150915 16:22:21 mysqld_safe mysqld from pid file /data/mysql/localhost.
【前言】刚在mysql的测试环境中开启了审计的功能,结果第二天业务人员就反馈测试库登录不。幸好是测试环境,不然就惨了。。。。。 详细报错如下: mysql> insert into test.
【前言】其实mysql数据库本身并没有审计功能的,在实际的工作中往往会需要用到这方面的功能,公司最近就出现了这么一个让人很烦人的场景:pos系统有六台应用连接数据库,且数据库本身跟其他系统也有关联,最近业务反馈偶尔会出现系统日结翻倍的情况,开发找到了导致日结出现...
【背景】随着业务的变更,应用每天需要对系统里面的所有客户积分进行累计计算,在做整个操作的时候,系统的其他收银等一些业务就会受到影响,所以经过确认在每天晚上23点,做一个定时的Events让系统自动运行,以下是关于Events的相关学习文档; 【介绍】event_scheduler:时间调度器,是MySQL5.1.x版本中引入了一项新特性,在指定的时间单元内执行特定的任务,早期一些对数据定时性操作通过操作系统的crontable的操作,可以直接使用数据库本身提供的功能。
著名的墨菲定律:事情如果有变坏的可能,不管这种可能性有多小,它总会发生;学ORACLE的人都知道,作为一个DBA可以什么都不会,但是数据库的备份恢复必须会,说明数据库的备份恢复的重要性; 作为一个传统制造行业的DBA(虽然现在负责的事情已经不仅仅是数据库了),也面临着企业内部数据备份的问题。
【说明】本文档介绍通过sqlplus导出数据的办法 【1】远程桌面登录到服务器 【2】进行脚本的编辑,脚本文件为D:\export.sql,用记事本打开 注意:请注意修改导出文件的名称和导出条件 set termout off set pa...
【背景说明】生产数据库需要定期还原到测试环境中,才能保证测试系统数据的准确和真实性。最近在一次进行数据库从正式迁移到测试环境的时候,就发生了一件诡异的现象,虽然问题解决了,但是出现这种奇怪问题的本身并没有找到根本的原因。
【背景】以下是一个ERP数据库的AWR报告,初看数据库挺繁忙的,DB Time/Elapsed的比值接近20,再深入往下看发现数据库的read by other session事件明显,以下是经过一系列的分析解决了read by other session等待事件的问题; Top 5等待事件 【问题分析一】read by other session产生的原因:发生在一个数据块正在被读进buffer,而其它session此时也要请求这个数据块的时候。