代码改变世界

随笔档案-2016年03月

Linux 虚拟机网络适配器从E1000改为VMXNET3

2016-03-28 22:59 by 潇湘隐者, 33782 阅读, 收藏, 编辑
摘要: 我们知道VMware的网络适配器类型有多种,例如E1000、VMXNET、VMXNET 2 (Enhanced)、VMXNET3等,就性能而言,一般VMXNET3要优于E1000,下面介绍如果将Linux虚拟机的网络适配器类型从E1000改为VMXNET3。本文测试环境如下 操作系统 :Oracle Linux Server release 5.7 ... 阅读全文

v$session中server为none与shared值解析

2016-03-24 15:38 by 潇湘隐者, 1279 阅读, 收藏, 编辑
摘要: 查询V$SESSION,你会看到SERVER可能会有DEDICATED| SHARED| PSEUDO| NONE 四种值,如果SERVER字段的值除了DEDICATED,还有NONE,则说明当前实例启动了共享服务器,并且SERVER为NONE的会话表示其正使用共享服务器连接模式,同时,如果只显示有DEDICATED,则不能说明服务器就一定工作在专用服务器下面,此时也有可能启动了共享模式。只是目前... 阅读全文

SQL SERVER导出特殊格式的平面文件

2016-03-23 23:21 by 潇湘隐者, 4034 阅读, 收藏, 编辑
摘要: 有时候我们需要将SQL SERVER的数据一次性导入到ORACLE中,对于数据量大的表。我一般习惯先从SQL SERVER导出特殊格式的平面文件(CSV或TXT),然后用SQL*Loader装载数据到ORACLE数据库。 有时候由于一些特殊数据,我们需要导出一些特殊格式的文件,例如: 1:导出的平面文件,字段分隔符不要用逗号, 而使用其它分隔符,例如 | 或 &等 2:我们需... 阅读全文

XtraBackup出现 Can't connect to local MySQL server through socket '/tmp/mysql.sock'

2016-03-22 23:18 by 潇湘隐者, 21021 阅读, 收藏, 编辑
摘要: Xtrabackup做备份时遇到下面错误信息MySQL server: Can't connect to local MySQL server through socket '/tmp/mysql.so‘(2) [root@MySQL-DB ~]# innobackupex --defaults-file=/usr/my.cnf --user=root --password=passwor... 阅读全文

CentOS 6.6安装Xtrabackup RPM提示缺少libev.so.4()

2016-03-22 22:02 by 潇湘隐者, 17058 阅读, 收藏, 编辑
摘要: 在CentOS Release 6.6安装percona-xtrabackup-2.3.4时,遇到下面错误信息 rpm -ivh percona-xtrabackup-2.3.4-1.el6.x86_64.rpm 在 https://bugs.launchpad.net/percona-xtrabackup/+bug/1526636上看到,这个是一个bug来着,在 percona-xtraba... 阅读全文

SQL Server Replication 中关于视图的点滴

2016-03-19 11:52 by 潇湘隐者, 1783 阅读, 收藏, 编辑
摘要: 在服务器A数据库TEST新建了一个本地发布(Local Publications)RPL_GES_MIS_TEST,在服务器B数据库RPL_TEST上创建了一个本地订阅(Local Subscriptions),它订阅了了这个发布RPL_GES_MIS_TEST.如下截图所示,本地发布只有DB_OBJECTS 、Location两个表 假设现在有一个需求,我们需要同步一个视图V_DB_O... 阅读全文

ORA-00988: missing or invalid password(s)

2016-03-17 22:22 by 潇湘隐者, 21049 阅读, 收藏, 编辑
摘要: 创建账号或修改账号密码时有可能会遇到ORA-00988: missing or invalid password(s),那么什么情况下会遇到这种错误呢? 一般是因为密码的设置不符合命名规范: 1:密码是关键字,但是没有用双引号包裹起来。 2:密码以数字开头,但是没有用双引号包裹起来 3:密码包含特殊字符,并且没有用双引号包裹起来。 官方文档关于passwor的介绍如下: The BY pass... 阅读全文

ORACLE 查看有多个执行计划的SQL语句

2016-03-17 16:48 by 潇湘隐者, 5562 阅读, 收藏, 编辑
摘要: 在SQL优化过程,有时候需要查看哪些SQL具有多个执行计划(Multiple Executions Plans for the same SQL statement),因为同一个SQL有多个执行计划一般意味着代码有问题或某些其它原因,例如,SQL语句使用绑定变量,但是绑定变量的类型或长度可能不一致会导致同一SQL出现不同执行计划。 --查看数据库里面有多个执行计划的SQL语句的SQL_ID SE... 阅读全文

ORACLE绑定变量隐式转换导致性能问题

2016-03-15 12:10 by 潇湘隐者, 2554 阅读, 收藏, 编辑
摘要: 年后一次系统升级后,监控数据库的工具DPA发现数据库的Total Wait时间突然飙增,如下截图所示,数据库的总体等待时间对比升级前飙增了非常多 另外就是发现出现了较多的等待事件,主要有latch: cache buffers chains、 latch: shared pool 、db file scattered read。根据这边的监控发现TOP SQL里面从升级前的0次变为了一天... 阅读全文

如何分析解读systemstat dump产生的trc文件

2016-03-14 15:59 by 潇湘隐者, 3627 阅读, 收藏, 编辑
摘要: ORACLE数据库的systemstat dump生成trace文件虽然比较简单,但是怎么从trace文件中浩如烟海的信息中提炼有用信息,并作出分析诊断是一件技术活,下面收集、整理如何分析解读systemstat dump产生的trace文件。 如果要人工去解读systemstat dump生成的trace文件,真是一件体力活,因为这些trace文件动不动就几百M甚至更大,它产生的... 阅读全文

SQL Server里面如何检查没有释放的游标

2016-03-14 12:13 by 潇湘隐者, 4935 阅读, 收藏, 编辑
摘要: 一直以来对SQL SERVER的游标都不怎么感冒,也很少使用SQL Server里面的游标,前几天有一位网友问如何检查数据库里面没有释放的游标,觉得有点意思,就测试验证了一下,顺便整理于此。 会话1:我们模拟一个应用程序或脚本,在打开游标后,忘记关闭、释放游标。 DECLARE Cursor_Test CURSOR FORSELECT * FROM dbo.TEST;OPEN Cu... 阅读全文

SQL Tune Report–sqltrpt.sql

2016-03-09 22:34 by 潇湘隐者, 4475 阅读, 收藏, 编辑
摘要: ORACLE 10g提供了一个脚本sqltrpt.sql用来查询最耗费资源的SQL语句,其输出的结果分为两部分: 15 Most expensive SQL in the cursor cache 15 Most expensive SQL in the workload repository 另外可以根据输入的SQL_ID,生成对应执行计划和调优建议,是一个不错的调优优化脚本。其... 阅读全文

Microsoft SQL Server 2005 Service fails to start

2016-03-09 17:34 by 潇湘隐者, 1076 阅读, 收藏, 编辑
摘要: 今天碰到一雷死人的事情,在Windows Server 2012 R2上安装SQL SERVER 2005标准版过程中一直遇到“The SQL Server service failed to start。 For more information......",最后下面两个组件无法安装成功。 后面查了一下,原来Microsoft SQL Server 2005在Windows Server... 阅读全文

SQL SERVER普通用户需要什么权限才能执行sp_configure命令

2016-03-08 11:59 by 潇湘隐者, 8817 阅读, 收藏, 编辑
摘要: SQL SERVER普通用户需要什么权限才能执行sp_configure命令呢? 例如如下存储过程所示 CREATE PROCEDURE PRC_TESTASBEGIN exec sp_configure 'show advanced option',1;RECONFIGURE;exec sp_configure 'Ole Automation Procedures', 1;RECONFIGU... 阅读全文

linux pstack命令总结

2016-03-07 11:50 by 潇湘隐者, 15798 阅读, 收藏, 编辑
摘要: pstack命令用来显示进程的栈跟踪。 pstack 命令必须由相应进程的属主或root账号运行。可以使用pstack来确定进程挂起的位置。此命令只有一个参数,那就是pid,具体关于pstack的介绍可以查看man手册,如下所示: [root@DB-Server ~]# man pstackPSTACK(1) Linux Programmer’s Manual ... 阅读全文

EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS的删除创建

2016-03-06 09:57 by 潇湘隐者, 4045 阅读, 收藏, 编辑
摘要: 在最近的一次优化过程中发现了ORACLE 10g中一个作业EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS执行相当频繁,其实以前也看到过,只是没有做过多的了解和关注。这个任务在某些版本或某些情况会引起一些性能问题。其实EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS这个作业是为Database Control收集相关数据的... 阅读全文

Linux Swap交换分区介绍总结

2016-03-06 00:22 by 潇湘隐者, 111578 阅读, 收藏, 编辑
摘要: Swap交换分区概念 什么是Linux swap space呢?我们先来看看下面两段关于Linux swap space的英文介绍资料: Linux divides its physical RAM (random access memory) into chucks of memory called pages. Swapping is the process whereby a pag... 阅读全文

Oracle systemstate dump介绍

2016-03-02 23:16 by 潇湘隐者, 6583 阅读, 收藏, 编辑
摘要: 当数据库出现严重的性能问题或者hang起的时候,那么我们非常需要通过systemstate dump来知道进程在做什么,在等待什么,谁是资源的持有者,谁阻塞了别人。在出现上述问题时,及时收集systemstate dump非常有助于问题原因的分析。一般Oracle Support工程是也是需要你提供systemstate dump生成的trace文件做分析,关于systemstate du... 阅读全文

Symantec Backup Exec备份作业服务器盘符变更

2016-03-01 11:54 by 潇湘隐者, 1079 阅读, 收藏, 编辑
摘要: Symantec Backup Exec的备份作业中,如果某个服务器的磁盘更改了盘符,如果不修改备份作业里面的相关配置,就会出现类似下面的错误信息,如下截图所示 因为这台服务器上我们将原先的G盘的盘符修改成了M盘,此时必须找到对应作业,右键单击属性,在“View Selection Details”里面找到对应记录,删除记录后,然后在”View by Resource"里面找到对应的服务器,... 阅读全文