代码改变世界

Linux中如何通过设备号找到设备

2018-07-19 14:25 by 潇湘隐者, 47 阅读, 收藏, 编辑
摘要: 关于Linux中的设备文件,设备文件用来为操作系统和用户提供它们代表的设备接口。所有的Linux设备文件均位于/dev目录下,是根(/)文件系统的一个组成部分,因为这些设备文件在操作系统启动过程中必须可以使用。应用程序可以打开、关闭和读写这些设备文件,完成对设备的操作,就像操作普通的数据文件一样。为了管理这些设备,系统为设备编了号,每个设备号又分为主设备号和次设备号。主设备号用来区分不同种类的设备...阅读全文

SQL Server 2012还原一直卡在ASYNC_IO_COMPLETION浅析

2018-07-18 15:15 by 潇湘隐者, 35 阅读, 收藏, 编辑
摘要: 在SQL Server 2012(11.0.7001.0)下面在还原一个数据库(备份文件40多G大小,实际数据库大小300G),在还原过程中,出现一直等待ASYNC_IO_COMPLETION,如下测试截图所示,已经等待了72分钟了,但是还原比例依然为0% SELECT r.session_id , r.command , r.start_time, ...阅读全文

Symantec Backup Exec 2010 安装报 bad ELF interpreter: No such file or directory

2018-07-17 23:58 by 潇湘隐者, 27 阅读, 收藏, 编辑
摘要: 在64位的Red Hat Enterprise Linux Server release 6.6上安装Symantec Backup Exec 2010时, 遇到下面错误: # ./installralus ./installralus: ../perl/Linux/bin/perl: /lib/ld-linux.so.2: bad ELF interpreter: No such file ...阅读全文

MySQL mysqlbinlog解析出的SQL语句被注释是怎么回事

2018-07-16 08:47 by 潇湘隐者, 43 阅读, 收藏, 编辑
摘要: MySQL mysqlbinlog解析出的SQL语句被注释是怎么回事 一网友反馈使用mysqlbinlog解析出的二进制日志中的内容中,有些SQL语句有#注释的情况,这个是怎么回事呢?我们通过实验来了解一下具体细节情况,如下所示,实验环境为5.6.20-enterprise-commercial-advanced-log # whereis mysqlbinlog mysqlbinlo...阅读全文

MySQL 5.7开启二进制日志注意事项

2018-07-11 15:56 by 潇湘隐者, 57 阅读, 收藏, 编辑
摘要: 最近才开始将部分MySQL 5.6升级到MySQL 5.7, 在开启MySQL的二进制日志时,发现MySQL 5.7 与MySQL 5.6已有细微区别。如果在my.cnf配置文件中,只设置了全局系统变量log_bin,没有设置全局系统变量server_id的话,那么MySQL启动不了,而且错误日志没有任何错误信息。 查了一下官方文档16.1.6.4 Binary Logging Options...阅读全文

MySQL自增列(AUTO_INCREMENT)相关知识点总结

2018-07-11 15:32 by 潇湘隐者, 79 阅读, 收藏, 编辑
摘要: MySQL的自增列(AUTO_INCREMENT)和其它数据库的自增列对比,有很多特性和不同点(甚至不同存储引擎、不同版本也有一些不同的特性),让人感觉有点稍微复杂。下面我们从一些测试开始,来认识、了解一下这方面的特殊知识点: 自增列持久化问题 如果一个表拥有自增列,当前最大自增列值为9, 删除了自增列6、7、8、9的记录,重启MySQL服务后,再往表里面插入数据,自增列的值为6还...阅读全文

ALTER SYSTEM ARCHIVELOG CURRENT挂起案例

2018-07-05 14:12 by 潇湘隐者, 76 阅读, 收藏, 编辑
摘要: 最近两天,一台ORACLE数据库的作业执行delete_ob_get_epps.sh脚本清理过期备份时,执行下面SQL语句就会被阻塞,在监控工具DPA里面部分截图如下(图片分开截断) sql 'alter system archive log current'; 如上截图所示,会话ID=650的EVENT为Log archive I/O,被阻塞的会话303在...阅读全文

ORA-19816: WARNING: Files may exist in db_recovery_file_dest that are not known to database

2018-07-04 22:32 by 潇湘隐者, 3 阅读, 收藏, 编辑
该文被密码保护。

Linux查杀stopped进程

2018-07-02 16:33 by 潇湘隐者, 141 阅读, 收藏, 编辑
摘要: 在Linux系统下面,top命令可以查看查看stopped进程。但是不能查看stopped进程的详细信息。那么如何查看stopped 进程,并且杀掉这些stopped进程呢? ps -e j | grep T stopped进程的STAT状态为T,一般而言,进程有下面这些状态码: D uninterruptible sleep (usually IO) I I...阅读全文

Linux日志出现大量"kernel: NET: Registered protocol family 36"

2018-07-02 11:55 by 潇湘隐者, 95 阅读, 收藏, 编辑
摘要: 一台Linux服务器的系统错误日志出现大量的“ kernel: NET: Registered protocol family 36”错误信息,如下所示: Jul 2 05:27:45 xxxxxx kernel: NET: Registered protocol family 36 Jul 2 05:27:45 xxxxxx kernel: NET: Unregistered pr...阅读全文

DBA思考系列——学会拒绝不合理的需求

2018-06-30 11:50 by 潇湘隐者, 185 阅读, 收藏, 编辑
摘要: DBA思考系列——学会拒绝不合理的需求 一直以来,个性都比较随意,一般很少拒绝开发人员的一些需求(有点老好人的感觉). 这点一直被老大诟病,也一直在反省!最近又有一件事情,让我觉得:应该学会拒绝不合理需求!先简单阐述一下事情经过 在一个SQL Server服务器上有一个作业,已经按照他们的需求设置了好几个Schedule了。如下所示,这个作业执行的Schedule是已经够复杂的了吧 ...阅读全文

Percona XtraBackup 备份还原篇

2018-06-27 23:34 by 潇湘隐者, 123 阅读, 收藏, 编辑
摘要: Percona XtraBackup 安装介绍篇已经对Percona XtraBackup的功能和安装做了比较详细的介绍,那么本篇我们直接进入主题,如何使用XtraBackup做备份、还原,下面主要介绍XtraBackup备份还原操作的细节和场景,疏漏之处难免存在,如有不足,敬请指出。本篇暂时不做原理介绍,后续篇章"Percona XtraBackup 原理分析篇"再做介绍。 ...阅读全文

ORACLE中Scalar subquery Caching的hash table大小测试浅析

2018-06-25 10:20 by 潇湘隐者, 116 阅读, 收藏, 编辑
摘要: 前阵子总结了这篇“ORACLE当中自定义函数性优化浅析”博客,里面介绍了标量子查询缓存(scalar subquery caching),如果使用标量子查询缓存,ORACLE会将子查询结果缓存在哈希表中,如果后续的记录出现同样的值,优化器通过缓存在哈希表中的值,判断重复值不用重复调用函数,直接使用上次计算结果即可。从而减少调用函数次数,从而达到优化性能的效果。另外在ORACLE 10和11中,...阅读全文

MySQL状态变量Aborted_connects与Aborted_clients浅析

2018-06-21 00:25 by 潇湘隐者, 92 阅读, 收藏, 编辑
摘要: 关于MySQL的状态变量Aborted_clients & Aborted_connects分别代表的意义,以及哪些情况或因素会导致这些状态变量变化呢?下文通过实验测试来验证一下,首先我们来看看状态变量的描述: Aborted Connect Aborted Connect表示尝试连接到MySQL服务器失败的次数。这个状态变量可以结合host_cache表和其错误日志一起来分析问题...阅读全文

ERROR 1044 (42000): Access denied for user 'root'@'localhost'

2018-06-19 14:53 by 潇湘隐者, 174 阅读, 收藏, 编辑
摘要: 从供应商那边接手一个MySQL数据库(数据库版本为5.7.21 MySQL Community Server (GPL)),在创建账号时遇到了“ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database xxx”错误,如下所示 mysql> grant all on xxx.* to xxx@'192...阅读全文

ERROR 3009 (HY000): Column count of mysql.user is wrong…..

2018-06-19 13:45 by 潇湘隐者, 142 阅读, 收藏, 编辑
摘要: 在测试备份还原时,使用XtraBackup还原数据库后,创建一个测试账号时遇到了下面错误: mysql> grant all on house.* to test@'192.168.%' identified by 'test1249'; ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 45, found ...阅读全文

服务器CPU繁忙或内存压力引起网络掉包的浅析与总结

2018-06-17 11:19 by 潇湘隐者, 161 阅读, 收藏, 编辑
摘要: 最近一段时间遇到了两起有意思的故障,现象都是网络掉包或网络断开,不过这些只是表面现象,引起现象出现的本质才是我们需要关注的重点: 案例1: 平台 :VMware平台 操作系统 :Windows Server 2008 R2 现象描述 :Zabbix监控和开发人员反馈数据库服务器出现偶尔掉包的现象。仅阅读全文

ORACLE如何找到引起账号锁定的IP的一点思考与总结

2018-06-17 08:03 by 潇湘隐者, 120 阅读, 收藏, 编辑
摘要: 在ORACLE数据库中,如果没有修改过FAILED_LOGIN_ATTEMPTS的话,默认10次尝试失败后就会锁住用户。此时再登录数据库,就会遇到ORA-28000: the account is locked SQL> SELECT * 2 FROM DBA_PROFILES 3 WHERE RESOURCE_NAME='FAILED_LOGIN_ATTEMPTS'; P...阅读全文

记一次坑爹的ORA-01152&ORA-01110错误

2018-06-15 13:39 by 潇湘隐者, 195 阅读, 收藏, 编辑
摘要: 最近做RMAN还原时遇到了一次非常坑爹的ORA-01152&ORA-01110错误。遇到的具体错误信息如下所示: RMAN> alter database open resetlogs; RMAN-00571: RMAN-00569: ERROR MESSAGE STACK FOLLOWS RMAN阅读全文

RMAN restore fails with ORA-01180: can not create datafile 1

2018-06-15 10:02 by 潇湘隐者, 69 阅读, 收藏, 编辑
摘要: 最近在验证、测试备份有效性时,遇到了“ORA-01180: can not create datafile 1”这个错误,顺便结合metalink的官方文档“RMAN restore fails with ORA-01180: can not create datafile 1 (文档 ID 1265151.1)”里面的内容做一个学习、归纳、总结,顺便加深一下理解。 creating ...阅读全文

ORACLE中使用ANALYZE引起ORA-00604& ORA-30511&ORA-06512错误Troubleshooting

2018-06-14 16:19 by 潇湘隐者, 5 阅读, 收藏, 编辑
该文被密码保护。

SQL Server的优化器会缓存标量子查询结果集吗

2018-06-05 13:48 by 潇湘隐者, 131 阅读, 收藏, 编辑
摘要: 在这篇博客“ORACLE当中自定义函数性优化浅析”中,我们介绍了通过标量子查询缓存来优化函数性能: 标量子查询缓存(scalar subquery caching)会通过缓存结果减少SQL对函数(Function)的调用次数, ORACLE会在内存中构建一个哈希表来缓存标量子查询的结果。 那么SQL Server的优化器是否也会有类似这样的功能呢? 抱着这样的疑问,动手测试了一下,准备测试环境 ...阅读全文

Snapshot origin volumes can be resized only while inactive: try lvchange -an

2018-06-05 11:11 by 潇湘隐者, 74 阅读, 收藏, 编辑
摘要: 事件现象: 最近同事在扩展VG时遇到了“Snapshot origin volumes can be resized only while inactive: try lvchange -an”错误 # partprobe # mkfs -t ext3 /dev/sdd3 # pvcreate /dev/sdd3 # vgextend VolGroup03 /dev/...阅读全文

MySQL InnoDB下关于MVCC的一个问题的分析

2018-05-29 22:33 by 潇湘隐者, 139 阅读, 收藏, 编辑
摘要: 这个是网友++C++在群里问的一个关于MySQL的问题,本篇文章实验测试环境为MySQL 5.6.20,事务隔离级别为REPEATABLE-READ ,在演示问题前,我们先准备测试环境。准备一个测试表test以及一个存储过程循环往test表里面插入记录。 CREATE TABLE test( `id` int(11) primary key not null, `name` char...阅读全文

ORACLE当中自定义函数性优化浅析

2018-05-28 12:15 by 潇湘隐者, 173 阅读, 收藏, 编辑
摘要: 为什么函数影响性能 在SQL语句中,如果不合理的使用函数(Function)就会严重影响性能,其实这里想说的是PL/SQL中的自定义函数,反而对于一些内置函数而言,影响性能的可能性较小。那么为什么SQL语句当中,不合理的使用函数会影响性能呢? 在SELECT语句中调用函数时,那么查询返回的结果集中的每一行都会调用该函数。如果该函数需要执行1秒,返回的结果集是10行,那么此时SQ...阅读全文

翻译:MySQL "Got an Error Reading Communication Packet" Errors

2018-05-23 09:07 by 潇湘隐者, 159 阅读, 收藏, 编辑
摘要: 前言: 本文是对Muhammad Irfan的这篇博客MySQL "Got an Error Reading Communication Packet" Errors的翻译,如有翻译不对或不好的地方,敬请指出,大家一起学习进步。尊重原创和翻译劳动成果,转载时请注明出处。谢谢! 英文原文地址:https://www.percona.com/blog/2016/05/16/mysql-got-...阅读全文

SQL Server中如何识别、查找未使用的索引(unused indexes)

2018-05-22 23:10 by 潇湘隐者, 163 阅读, 收藏, 编辑
摘要: 在SQL Server中,索引是优化SQL性能的一大法宝。但是由于各种原因,索引会被当做“银弹”滥用,一方面有些开发人员(甚至是部分数据库管理员)有一些陋习,不管三七二十一,总是根据所谓的"感觉"或“经验”先增加一些索引,而不管这些索引是否未被使用或是否合理。另外一方面在数据库的生命周期中,需求总是在变化,业务也在变化,有些当初创建的有效索引可能已经变成了unused index了。变成了数据...阅读全文

SQL SERVER中LIKE使用变量类型不同输出结果不一致解惑

2018-05-21 23:09 by 潇湘隐者, 194 阅读, 收藏, 编辑
摘要: 一同事在写脚本时,遇到一个关于LIKE里面使用不同的变量类型导致查询结果不一致的问题,因为这个问题被不同的人问过好几次,索性总结一下,免得每次都要解释一遍,直接丢一篇博客岂不是更方便!其实看似有点让人不解的现象背后实质跟数据类型的实现有关。 下面我们构造这样一个类似的简单案例。如下所, CREATE TABLE TEST(ID INT IDENTITY(1,1), NAME...阅读全文

SQL Server Replication的分发服务器的快照文件夹位置查找

2018-05-17 22:57 by 潇湘隐者, 67 阅读, 收藏, 编辑
摘要: SQL Server分发服务器配置中,需要配置快照文件夹(Snapshot Folder),用于存储发布的数据和架构文件的工作目录,那么如何查找当前SQL Server数据库服务器的分发服务器的快照文件夹位置呢? 如果配置了具体发的发布和订阅,那么可以在对应的发布的属性-》快照文件里面查看,如果还没有配置具体的发布和订阅,这个需要怎么查看呢? ...阅读全文

服务器 'xxxx' 已被定义为分发服务器。若要将该服务器重新配置为分发服务器,必须首先卸载现有的分发服务

2018-05-17 22:11 by 潇湘隐者, 82 阅读, 收藏, 编辑
摘要: 使用AWS DMS(Database Migration Service)将SQL Server数据库同步到AWS的Data Lake上,需要在本地源数据库上配置复制,在配置分发向导最后一步时,遇到下面错误: TITLE: Microsoft.SqlServer.ConnectionInfo------------------------------ SQL Server cou...阅读全文