- 博客(351)
- 资源 (3)
- 收藏
- 关注
原创 SQLServer Delayed durability 延迟持久化
DELAYED DURABILITY 简介SQLServer自2014版本推出了一项新功能:“Delayed transaction durability”。这项功能旨在通过推迟已提交的事务持久化到事务日志文件,减少事物日志文件的IO,从而提升数据库性能。通俗地说,一个事务在commit后本应该立即写到事务日志文件中去,现在推迟写操作,等到一定时机再写到事务日志文件中去。在描述DELAYED DURABILITY的具体细节前,先来看下他的性.
2022-02-24 21:09:38
1285
1
原创 Rsync Adler-32 算法
Rsync为了只同步文件变化的部分,使用了两种 hash 算法:弱校验算法和强校验算法。弱校验用于快速分辨出不同的块,使用的是 Adler-32 算法。强校验用于确保数据块是真的相同,因为弱校验很有可能hash冲突,加一层强校验,双保险!强校验使用的是 MD5 算法。这篇文章记录自己学习弱检验 Adler-32 算法的体会。Adler-32算法简介Adler-32 算法是由 Mark Adler 在1995年发明的一种滚动校验算法,算法因此也以作者名字命名。除了Rsync,还有大名鼎鼎的
2021-09-10 15:50:23
692
原创 SQLServer MVCC 行版本控制
简介SQLServer其实从2005版本就已经支持MVCC机制了,用来优化读写并发问题。但是似乎大家使用的还比较少。一次项目经历笔者之前也没太关注这块,直到遇到了实际项目问题,才想到有MVCC这个宝贝。项目情况大概是这样的:我们负责从客户生产库实时同步数据到灾备库,另一家公司(下文简称"A公司")负责从灾备库做实时分析查询统计。挺好的模式,既对生产库做了容灾,又做了读写分离,减轻了生产库压力。但是业务上线后,噩梦也就降临。客户反馈我们的数据同步经常有延迟,有时一延迟就是一天!好家伙,赶紧远
2021-09-07 20:02:44
1814
原创 从勒索病毒加密的SQLServer数据库中恢复数据
1. 问题描述用户的SQLServer数据库遭到"LockBit"勒索病毒攻击,数据库宕机无法访问。SQLServer数据库数据文件被加密且扩展了文件后缀名:".lockbit"。如:数据文件原有文件名为:“testdb1.mdf”加密后的文件名则被修改为:“testdb1.mdf.lockbit”同时在被加密的文件目录下留了一封勒索信:“Restore-My-Files.txt”
2021-03-31 12:17:47
4818
1
转载 用FastDFS一步步搭建文件管理系统
用FastDFS一步步搭建文件管理系统目录一、FastDFS介绍 1、简介 2、FastDFS的存储策略 3、FastDFS的上传过程 4、FastDFS的文件同步 5、FastDFS的文件下载 二、安装FastDFS环境 0、前言 1、下载安装 libfastcommon 2、下载安装FastDFS 3、配置FastDFS跟踪器(Tracker) 4、配置 FastDFS 存储 (Storage) 5、文件上传测试 三、安装Nginx .
2020-11-11 11:51:38
214
原创 GoldenGate SQLServer 到 SQLServer 同步
测试环境:源、目标端都是win2003+ SQLServer20081.数据库准备:源端目标端分别创建数据库”oggdb”,恢复模式为”完整“,并创建测试表t1------------------------------------------------------------------------------------------------------...
2019-12-24 13:18:58
989
2
转载 解决SQL Service创建链接服务器出现(null) 是无效的产品名称的问题
在使用SQL Service 2005/2008 创建链接服务器时,有出现过:"消息 15429,级别 16,状态 1,过程 sp_addlinkedserver,第 42 行'(null)' 是无效的产品名称。"的问题,从该错误提示上来看,主要是创建链接服务器的时候没有输入产品名称的原因。根据不同的创建方式以下分为两种解法方法,解决方法如下:情况一:使用SQL语句创建链接服务器出现此问...
2019-06-04 16:23:30
3846
原创 MongoDB分片集群(sharded cluster)搭建过程
1.分片集群概述MongoDB分片集群,英文名称为: Sharded Cluster旨在通过横向扩展,来提高数据吞吐性能、增大数据存储量。分片集群由三个组件:“mongos”, “config server”, “shard” 组成。框架如下(图片来自mongodb官网说明):mongos:数据库请求路由。负责接收所有客户端应用程序的连接查询请求,并将请求路由到集群内部对应的分片上。...
2019-04-16 18:34:04
12297
1
原创 MongoDB副本集配置过程
1 环境准备基础环境: 三台:“centos 6.6 + MongoDB 3.6.1”三台服务器IP配置:节点IPSERVER-1192.168.6.31SERVER-2192.168.6.32SERVER-3192.168.6.33初始环境暂时不要开启MongoDB用户认证,等初始化副本集后再开启认证。初始情况下Mongod启动配置(三个节点配...
2019-03-18 16:58:45
459
原创 MongoDB 学习笔记 - 索引
1. 创建索引语法: db.collection.createIndex(keys, options)1.1 创建最简单的索引例:在集合"users"的"username"字段上创建索引,索引正向排序db.users.createIndex({"username" : 1})1.2 创建复合索引
2019-03-07 16:57:25
219
原创 MongoDB用户管理
1.MongoDB初始环境下是无用户无认证的直接使用"mongo"客户端,不带任何参数就能登录并随意访问控制任何数据库。2. 怎么开启用户认证?开启认证前,首先得添加管理员用户。为啥?一旦开启了认证,连一个用户都没有,没法登录3. 怎样添加管理员用户我们需要添加两种角色的管理员用户管理员:负责增删改用户。注意:只管用户,不管数据数据库管理员:拥有任何数据库的读写权限(1) 添...
2019-02-27 16:15:35
217
原创 MongoDB与关系型数据库对比
初学MongoDB,感觉有些概念和操作与MySQL接近,做个简单对比。不一定正确,只是辅助记忆,方便我这种从关系型数据库转过来的人员学习。1. 概念对比2. 操作对比...
2019-02-18 14:15:41
812
原创 SQLServer查看及设置最大连接数
1. 查询最大连接数SELECT value_in_useFROM sys.configurations cWHERE c.name = 'user connections'; 默认值为:0,即无限制。2. 查询当前连接数select count(distinct(login_time)) from sys.sysprocesses 3. 设置最大连接数exec sp_conf...
2019-01-21 14:33:07
26564
1
转载 What’s the Point of Using VARCHAR(n) Anymore?
The arrival of the (MAX) data types in SQL Server 2005 were one of the most popular feature for the database developer. At the time, there was a lot of discussion as to whether this freedom from havin...
2019-01-02 16:35:22
425
转载 10分钟看懂Docker和K8S
2010年,几个搞IT的年轻人,在美国旧金山成立了一家名叫“dotCloud”的公司。 这家公司主要提供基于PaaS的云计算技术服务。具体来说,是和LXC有关的容器技术。 LXC,就是Linux容器虚拟技术(Linux container) 后来,dotCloud公司将自己的容器技术进行了简化和标准化,并命名为——Docker。 Docker...
2019-01-02 14:31:54
20284
3
原创 修改Oracle字符集
数据库原有字符集为:“UTF-8”,修改为:“GBK”修改前:select * from nls_database_parameters;select userenv('language') from dual;修改步骤1.关闭数据库shutdown immediate;2.mount数据库STARTUP MOUNT;ALTER SYSTEM ENABLE RESTR...
2018-12-20 15:39:05
222
原创 Oracle字符集
工作中有时会遇到Oracle乱码问题,根本原因是由于数据库端字符集和客户端字符集不匹配导致的。排查的基本方法如下。1.查询数据库字符集select * from nls_database_parameters查询出的”NLS_CHARACTERSET“字段就是数据库字符集 2.修改数据库字符集 如果当前数据库的字符编码不是自己想要的,需要修改数据库字符集。 ...
2018-07-03 18:41:41
282
原创 SQLServer Transact-SQL 相关
1. 类似C语言中的"sleep"语法:WAITFOR DELAY --wait for 1sWAITFOR DELAY '00:00:01:000'--wait for 1minWAITFOR DELAY '00:01:00:000'--wait for 1 millisecondWAITFOR DELAY '00:00:00:001'2. 定时闹钟功能: WAI
2018-03-22 15:52:54
258
原创 SQLServer命令行设置数据库模式
数据库名称:testdb11. 设置成: "完整模式"EXEC sp_dboption 'testdb1', 'trunc. log on chkpt.', 'FALSE'2. 设置成:"简单模式"EXEC sp_dboption 'testdb1', 'trunc. log on chkpt.', 'TRUE'
2018-03-20 18:20:50
2558
转载 条件编译小结
源文:http://blog.csdn.net/immcss/article/details/3881827编码的时候经常要用到条件编译,每次都到网上去查比较浪费时间,今天总结一下以备后用 编译器GCC#ifdef __GNUC__#if __GNUC__ >= 3 // GCC3.0以上Visual C++#ifdef _MSC_VER(非VC
2018-02-06 10:50:07
240
转载 Replication--复制与CDC和镜像
复制和CDC 都是使用logreader来从日志中读取数据的变更,然后写入到分发库(复制)或变更表中。1> 单独创建复制发布在该情况下,会在分发服务器上创建日志读取代理作业(ServerName_DBName_logreaderID)2> 单独使用CDC在该情况下,会在当前实例的代理上创建两个作业‘cdc.DBName_capture’(调用sys.sp_MScdc
2018-01-09 18:09:28
1479
原创 iconv()函数转码
1. iconv() 函数用于转换不同的字符编码。使用流程: iconv_open() -> iconv() -> iconv_close()2. 在将"WINDOWS-1252"转"UTF-8"时,有些字符转码报错:"Illegal byte sequence", 原因是"WINDOWS-1252"中有些字符在“UTF-8”中找不到对应字符,如: 0x81, 0x8D, 0
2017-12-25 09:52:29
922
原创 MySQL 字符集
1. 查看字符集SHOW VARIABLES LIKE 'character%';2. 修改字符集 (1) 修改全局字符集:编辑mysql配置文件,linux下为"my.cnf",在"mysqld"区域下添加字符设置项:"character_set_server",如character_set_server= utf8 修改过后须要重启MySQL服务生
2017-12-15 11:12:02
200
原创 oracle dump 数据
函数: dump(列名,进制)功能:按字节显示出数据在oracle内部的存储格式示例:dump出numerice类型数据的存储内容:"-999999999999999999999999999999.99999999"SQL> create table t9(id numeric(38,8));Table created.SQL> insert into t9 value
2017-11-29 10:53:10
806
原创 BAT脚本
1. 路径相关echo 当前盘符:%~d0echo 当前盘符和路径:%~dp0echo 当前批处理全路径:%~f0echo 当前盘符和路径的短文件名格式:%~sdp0echo 当前CMD默认目录:%cd%
2017-09-06 11:26:56
383
转载 蓝屏dump分析教程,附分析工具WinDbg(x86 x64)6.12.0002.633下载
一、WinDbg是什么?它能做什么? WinDbg是在windows平台下,强大的用户态和内核态调试工具。它能够通过dmp文件轻松的定位到问题根源,可用于分析蓝屏、程序崩溃(IE崩溃)原因,是我们日常工作中必不可少的一个有力工具,学会使用它,将有效提升我们的问题解决效率和准确率。二、WinDbg6.12.0002.633下载:x86位版本下载:【微软官方安装版】蓝
2017-07-17 16:33:22
11459
原创 SQLServer性能调试开关
1. "SET STATISTICS TIME ON"/"SET STATISTICS TIME OFF " 用于统计SQL命令执行的时间,如: 2. "SET STATISTICS IO ON" / "SET STATISTICS IO OFF" 用于统计IO情况,如: 3. "SET STATISTICS PROF
2017-06-26 11:42:13
729
原创 SQLServer 代理作业
1. 查询所有代理作业select * from msdb.dbo.sysjobs2. 停止某个作业USE msdb GO exec dbo.sp_stop_job N'cdc.testdb3_capture' GO3. 启动某个作业USE msdbGO exec dbo.sp_start_job N'cdc.testdb3_capture'
2017-06-05 15:02:59
1012
转载 DBCC 命令
DBCC activecursors [(spid)]DBCC addextendedproc (function_name, dll_name)DBCC addinstance (objectname, instancename)DBCC adduserobject (name)DBCC auditevent (eventclass, eventsubclass, success
2017-05-19 08:25:27
1520
原创 informix linux安装步骤
前提环境linux 版本: RedHat5.8linux主机名:RDRedHatinformix安装包:iif.11.50.UC4E.Linux-RHEL4.tarinformix服务名: tramsserver (这个可以随意指定)安装步骤整个安装过程都以root用户运行1. 创建informix用户# groupadd informix#
2017-04-27 16:09:41
9402
1
原创 excel突出显示两列的不同数据
1. 假设表格内容如下2. 选中第一列3. 打开 “条件格式” -> “突出显示单元格规则” -> "其他规则"4. 在弹出的窗口中设置选项 1) 选择 “不等于” 2) 选择突出显示的颜色,我这里选的红色 3) “不等于” 后面的对象,直接填入要比较的第二列第一个单元编号,这里填入的是:"=$B1"
2017-04-12 20:43:48
25373
转载 DB2 rollfoward 详细示例
前滚会话 - CLP 示例 版本 9.7.0 版本 11.1.0 版本 10.5.0 版本 10.1.0 版本 9.8.0 版本 9.5.0 版本 9.7.0示例 1ROLLFORWARD DATABASE 命令允许每次指定多个操作,各个操作由关键字 AND 隔开。例如,要前滚至日志末尾,然
2017-04-07 22:20:11
1201
转载 浅析SQL Server数据库专用管理员连接DAC的使用
当SQL Server因系统资源不足,或其它异常导致无法建立数据库连接时, 可以使用系统预留的DAC连接到数据库,进行一些问题诊断和故障排除。DAC只能使用有限的资源。请勿使用DAC运行需要消耗大量资源的查询,否则可能发生严重的阻塞。可在联机帮助中搜索DAC。建议使用命令行下的sqlcmd连接进去,因为占用的资源更少,连接方法:开始 --> 运行 --> cmd 输入SQLCMD -E -
2017-03-15 15:15:08
2403
原创 SQLServer "uniqueidentifier" 类型
“uniqueidentifier” 为16字节固定长度,存放二进制,用作唯一标识的列类型。用户通过"NEWID()"函数来生成uniqueidentifier数值,例如create table dbo.t_uniqueidentifier ( id uniqueidentifier, name varchar(20))insert into dbo.t_unique
2016-12-08 16:13:10
3679
转载 SQL Server 2005 导出包含(insert into)数据的SQL脚本 (使用存储过程)
--SQL Server里面导出SQL脚本(表数据的insert语句)CREATE PROCEDURE dbo.UspOutputData @tablename sysname AS declare @column varchar(1000) declare @columndata varchar(1000) declare @sql varchar(4000) dec
2016-11-24 15:55:05
4043
转载 64位linux安装32位库
Mount the install DVD:mkdir -p /mnt/RHELmount /dev/cdrom /mnt/RHELOr if you just have the ISO, you can use that instead:mkdir -p /mnt/RHELmount -o loop /path/to/RHEL.iso /mnt/RHELNow m
2016-10-18 18:54:49
4070
转载 让没有注册的RHEL用上yum
YUM是Redhat Linux在线安装更新及软件的工具,但是这是RHEL5的收费功能,如果没有购买Redhat的服务时不能使用RHEL5的更新源的,会提示注册。由于CentOS是从Redhat演化而来的免费Linux版本,因此可以利用CentOS的yum更新源来实现RHEL5的YUM功能。配置方法如下:检查yum是否安装,默认情况下都是安装好的,总共4各包。[root
2016-10-18 18:10:16
2964
原创 SQLServer触发器
准备环境:两个表t1, t2,结构完全相同create table dbo.t1 ( id int, name varchar(20))create table dbo.t2 ( id int, name varchar(20))1. 创建触发器实现往't1'中插入一条数据,该数
2016-09-04 07:26:58
422
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人