摘要: 迁移方法有两种:(1)重新初始化postgresql数据库,初始化时指定新的数据路径 PGDATA,然后在新的环境下将原有的数据库备份恢复一下。不过这个方法有点麻烦(2)直接将现有的数据库文件全部拷贝到新的数据库路径下,然后重起数据库服务第二种方法比较简单,因此,就详细描述一下第二种方法:1、pos 阅读全文
posted @ 2018-05-20 18:46 littlewrong 阅读(5782) 评论(1) 推荐(1) 编辑
摘要: SELECT * FROM sys.all_columns --显示属于用户定义对象和系统对象的所有列的联合--https://docs.microsoft.com/zh-cn/sql/relational-databases/system-catalog-views/sys-all-columns 阅读全文
posted @ 2018-05-19 22:11 littlewrong 阅读(1764) 评论(0) 推荐(0) 编辑
摘要: 本文只讲PostgreSQL在 almalinux8.6或centos8.0 下的安装,其他系统请查看:https://www.postgresql.org/download # Install the repository RPM: sudo dnf install -y https://down 阅读全文
posted @ 2018-05-16 21:23 littlewrong 阅读(2701) 评论(0) 推荐(0) 编辑
摘要: 从很多网页上都看到,SQL Server有三种Join的算法, nested loop join, merge join, hash join. 其中最常用的就是nested loop join.在介绍nested loop join的很多文章里,都提到如果两个表做nested loop join, 阅读全文
posted @ 2018-05-15 20:56 littlewrong 阅读(896) 评论(0) 推荐(0) 编辑
摘要: 1.测试数据准备 参考:Sql Server中的表访问方式Table Scan, Index Scan, Index Seek 这篇博客中的实验数据准备。这两篇博客使用了相同的实验数据。 2.SQL Server中的三种Join方式 在Sql Server中,每一个join命令,在内部执行时,都会采 阅读全文
posted @ 2018-05-14 15:24 littlewrong 阅读(757) 评论(0) 推荐(0) 编辑
摘要: 1.oracle中的表访问方式 在oracle中有表访问方式的说法,访问表中的数据主要通过三种方式进行访问: 2.sql server中clustered index scan,table scan,index scan 在sqlserver中也有类似的内容,这里就要将的是table scan,in 阅读全文
posted @ 2018-05-14 15:22 littlewrong 阅读(1548) 评论(0) 推荐(0) 编辑
摘要: 提示:这里所摘抄的关于锁的知识有的是不同sql server版本的,对应于特定版本时会有问题。 一 关于锁的基础知识 (一). 为什么要引入锁 当多个用户同时对数据库的并发操作时会带来以下数据不一致的问题: ◆丢失更新 A,B两个用户读同一数据并进行修改,其中一个用户的修改结果破坏了另一个修改的结果 阅读全文
posted @ 2018-05-11 17:26 littlewrong 阅读(1700) 评论(0) 推荐(1) 编辑
摘要: 六、各种事务隔离级别发生的影响 修改数据的用户会影响同时读取或修改相同数据的其他用户。即这些用户可以并发访问数据。如果数据存储系统没有并发控制,则用户可能会看到以下负面影响: · 未提交的依赖关系(脏读) · 不一致的分析(不可重复读) · 幻读 (一)脏读: 例:张某正在执行某项业务,如下: 则李 阅读全文
posted @ 2018-05-11 17:25 littlewrong 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 五、锁与事务隔离级别 事务隔离级别简单的说,就是当激活事务时,控制事务内因SQL语句产生的锁定需要保留多入,影响范围多大,以防止多人访问时,在事务内发生数据查询的错误。设置事务隔离级别将影响整条连接。 SQL Server 数据库引擎支持所有这些隔离级别: · 未提交读(隔离事务的最低级别,只能保证 阅读全文
posted @ 2018-05-11 17:24 littlewrong 阅读(411) 评论(0) 推荐(0) 编辑
摘要: 二、完整的锁兼容性矩阵(见下图) 对上图的是代码说明:见下图。 三、下表列出了数据库引擎可以锁定的资源。 名称 资源 缩写 编码 呈现锁定时,描述该资源的方式 说明 数据行 RID RID 9 文件编号:分页编号:Slot编号 用于锁定堆中的单个行的行标识符。 索引键 KEY KEY 7 6字节哈希 阅读全文
posted @ 2018-05-11 17:23 littlewrong 阅读(580) 评论(0) 推荐(0) 编辑
摘要: 锁定:通俗的讲就是加锁。锁定是 Microsoft SQL Server 数据库引擎用来同步多个用户同时对同一个数据块的访问的一种机制。 定义:当有事务操作时,数据库引擎会要求不同类型的锁定,如相关数据行、数据页或是整个数据表,当锁定运行时,会阻止其他事务对已经锁定的数据行、数据页或数据表进行操作。 阅读全文
posted @ 2018-05-11 17:21 littlewrong 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 这里通过连接在sysprocesses里字段值的组合来分析阻塞源头,可以把阻塞分为以下5种常见的类型(见表)。waittype,open_tran,status,都是sysprocesses里的值,“自我修复?”列的意思,就是指阻塞能不能自动消失。 5种常见的阻塞类型 下面详细介绍这些类型产生的原因 阅读全文
posted @ 2018-05-01 21:36 littlewrong 阅读(714) 评论(0) 推荐(0) 编辑
摘要: 众所周知,SQL Server事务隔离级别是为了保证在并发事务处理环境下的数据完整性,准确性,一致性的一种机制。在SQL Server中一共有五种事务隔离级别,分别为:READ UNCOMMITTED,READ COMMITTED,REPEATABLE READ,SNAPSHOT,SERIALIZA 阅读全文
posted @ 2018-04-26 16:47 littlewrong 阅读(403) 评论(0) 推荐(0) 编辑
摘要: 控制到 Transact-SQL 的连接发出的 SQL Server 语句的锁定行为和行版本控制行为。 TRANSACT-SQL 语法约定 语法 参数 READ UNCOMMITTED 指定语句可以读取已由其他事务修改但尚未提交的行。 在 READ UNCOMMITTED 级别运行的事务,不会发出共 阅读全文
posted @ 2018-04-26 15:41 littlewrong 阅读(7113) 评论(0) 推荐(0) 编辑
摘要: 由于本文是个长篇技术文章,涉及到很多算法和数据结构知识,你尽可以慢慢读。有些概念比较难懂,你可以跳过,不影响理解整体内容。 这篇文章大约分为3个部分: 底层和上层数据库组件概况 查询优化过程概况 事务和缓冲池管理概况 回到基础 很久很久以前(在一个遥远而又遥远的星系……),开发者必须确切地知道他们的 阅读全文
posted @ 2018-04-24 11:45 littlewrong 阅读(399) 评论(0) 推荐(0) 编辑
摘要: B树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树; 如: B树的搜索,从根结点开始,如果查询的关键字与结点的关键字相等,那么就命中;否则,如果查询关键字比结点关 阅读全文
posted @ 2018-04-24 10:26 littlewrong 阅读(552) 评论(0) 推荐(0) 编辑
摘要: 数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用B树及其变种B+树。 在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法。这种数据结构,就是索引。 为表设 阅读全文
posted @ 2018-04-24 10:14 littlewrong 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 2012以后提供了一种不同于传统B树结构的索引类型,就是内存列存储索引。这种索引应用了一种基于列的存储模式,也是一种新的查询执行的批处理模式,并且为特定的负载提供了巨大的性能提升。它是如何构建?如何工作?又是为什么能对性能有如此大的提升,接下来我们用简明的描述和详尽的示例来解释说明。 那么列存储索引 阅读全文
posted @ 2018-04-19 14:46 littlewrong 阅读(415) 评论(0) 推荐(0) 编辑
摘要: 用GDB调试程序 GDB是一个强大的命令行调试工具。大家知道命令行的强大就是在于,其可以形成执行序列,形成脚本。UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行软件的优势在于,它们可以非常容易的集成在一起,使用几个简单的已有工具的命令,就可以做出一个非常强大的功能。 于是UNIX 阅读全文
posted @ 2018-04-06 13:34 littlewrong 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 当大家发现数据库查询性能很慢的时候,大家都会想到加索引来优化数据库查询性能, 但是面对一个复杂的SQL语句,找到一个优化的索引组合对人脑来讲,真的不是一件很简单的事。 好在SQLSERVER提供了两种“自动”功能,给你建议,该怎么调整索引 第一种是使用DMV 第二种是使用DTA (database 阅读全文
posted @ 2018-03-30 15:58 littlewrong 阅读(6871) 评论(0) 推荐(1) 编辑
摘要: 1,在一个窗口中,VIM 的小tab标签页命令: :tabnew [++opt选项] [+cmd] 文件 建立对指定文件新的tab :tabc 关闭当前的tab :tabo 关闭所有其他的tab :tabs 查看所有打开的tab :tabp 前一个 :tabn 后一个 一般使用标准模式下的 Ngt 阅读全文
posted @ 2018-03-26 15:36 littlewrong 阅读(6672) 评论(0) 推荐(0) 编辑
摘要: USE MasterGO declare @spid int; select @spid = 419--null:all ; ;WITH DATA(spid,blockRelationship,blocked,spidLevel,hostname,program_name,loginame,logi 阅读全文
posted @ 2018-03-23 09:42 littlewrong 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 简单查询死锁,如下四步可以轻松解决: 第一步:查询死锁语句 1: 条件是 blocked <> 0 select dbid,* from sys.sysprocesseswhere 1=1and spid >50and blocked <> 0--and spid= 62 查询结果如下图所示: 以上 阅读全文
posted @ 2018-03-23 09:41 littlewrong 阅读(493) 评论(0) 推荐(0) 编辑
摘要: https://github.com/dotnet/corefx 这个是.net core的 开源项目地址 https://github.com/aspnet 这个下面是asp.net core 框架的地址,里面有很多仓库。 https://github.com/aspnet/EntityFrame 阅读全文
posted @ 2018-03-21 16:18 littlewrong 阅读(1214) 评论(0) 推荐(1) 编辑
摘要: CentOS 7 开放防火墙端口 命令 最近公司新的server要求用CentOS7, 发现以前CentOS 6 系列中的 iptables 相关命令不能用了,查了下,发现Centos 7使用firewalld代替了原来的iptables。 使用方法如下: >>> 关闭防火墙 systemctl s 阅读全文
posted @ 2018-02-22 09:20 littlewrong 阅读(1281) 评论(0) 推荐(0) 编辑
摘要: 操作系统环境:CentOS Linux release 7.0.1406(Core) 64位CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙步骤。 1、关闭firewall:systemctl stop firewalld.service #停止firewa 阅读全文
posted @ 2018-02-02 10:05 littlewrong 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 你是否想过,计算机为什么会加减乘除?或者更直接一点,计算机的原理到底是什么? Waitingforfriday有一篇详细的教程,讲解了如何自己动手,制作一台四位计算机。从中可以看到,二进制、数理逻辑、电子学怎样融合在一起,构成了现代计算机的基础。 什么是二进制 首先,从最简单的讲起。 计算机内部采用 阅读全文
posted @ 2018-01-27 10:15 littlewrong 阅读(2947) 评论(1) 推荐(1) 编辑
摘要: tags 在使用vim编程和浏览代码是非常有用。可以用CTRL+]和CTRL+t 来回跳转关键字。先生成自己工作目录的tags。最简单粗暴用法: 这样会生成一个tags文件。(注:对于gvim的话,需要进入命令提示符下,cd到工作目录,来产生tags文件,直接在gvim去生成的话,会出现tags生成 阅读全文
posted @ 2018-01-08 17:34 littlewrong 阅读(2562) 评论(0) 推荐(0) 编辑
摘要: 安装路径:/application/nginx-1.20.2 1.前期准备安装编译需要的gcc和gcc-c++ yum install -y gcc gcc-c++ nginx依赖pcre-devel、openssl-devel、zlib-devel yum install -y pcre pcre 阅读全文
posted @ 2018-01-04 11:28 littlewrong 阅读(1901) 评论(0) 推荐(0) 编辑
摘要: 负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群。常用的负载均衡开源软件有nginx、lvs、haproxy,商业的硬件负载均衡设备F5、Netscale。这里主要是学习 LVS 并对其进行了详细的总结记录。 一、负载均衡LVS基本介绍 LB集群的架构和原理很简单,就 阅读全文
posted @ 2017-12-26 16:22 littlewrong 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 当一个Web系统从日访问量10万逐步增长到1000万,甚至超过1亿的过程中,Web系统承受的压力会越来越大,在这个过程中,我们会遇到很多的问题。为了解决这些性能压力带来问题,我们需要通过搭建不同的服务和架构来解决。 当单机容量达到极限时,我们需要考虑业务拆分和分布式部署,来解决大型网站访问量大,并发 阅读全文
posted @ 2017-12-26 14:37 littlewrong 阅读(1702) 评论(0) 推荐(0) 编辑
摘要: 我们的系统一旦上线跑起来我们自然希望它一直相安无事,不要宕机,不要无响应,不要慢腾腾的。但是这不是打开机器电源然后放任不管就可以得到的。所以我们要监视系统的运行状况,发现问题及时处理。 对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作。监控和保持系统启动并运行是很不容易 阅读全文
posted @ 2017-12-20 11:52 littlewrong 阅读(364) 评论(0) 推荐(0) 编辑
摘要: 简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。 输出信息含义 执行netstat后,其输出结果为 从整体上看,netstat的 阅读全文
posted @ 2017-12-15 14:09 littlewrong 阅读(470) 评论(0) 推荐(0) 编辑
摘要: --SQLSERVER CXPACKET 等待 2013-6-11 2 --联机丛书: 3 --当尝试同步查询处理器交换迭代器时出现。如果针对该等待类型的争用成为问题时,可以考虑降低并行度 4 5 6 7 --CXPACKET 解释: 8 -- 9 --当为SQL查询创建一个并行操作时,会有多个线程 阅读全文
posted @ 2017-12-12 09:28 littlewrong 阅读(320) 评论(0) 推荐(0) 编辑
摘要: 在分析SQL server 性能的时候你可能经常看到 PAGELATCH和PAGEIOLATCH。比方说 的输出里面就有Latch的有关信息: 那么什么是PAGELATCH和PAGEIOLATCH呢? 先说什么Latch。 Latch是SQL server内部用来同步资源访问的一个数据结构,和操作系 阅读全文
posted @ 2017-12-12 09:07 littlewrong 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 配置环境变量 1). #:vi /etc/profile 在最后面添加 PATH=~/dotnet/bin:$PATHexport PATH 2). #:source /etc/profile 阅读全文
posted @ 2017-12-01 09:46 littlewrong 阅读(964) 评论(0) 推荐(0) 编辑
摘要: 再使用如下语句就可以在不同Area间跳转: 再传2个参数: 阅读全文
posted @ 2017-09-04 15:33 littlewrong 阅读(1565) 评论(0) 推荐(0) 编辑
摘要: 公司下派任务,之前的网站是一台服务器,由于用户过多,负载过大,现在老大要求多加一台服务器。加就加贝,应该跟我这DEV没有 关系吧,应该不会碰到Source的吧。但是,之前网站有一些数据是放在Session里面的。大家应该理解Sessino的机制(自己的理解):当用户访问服务器的时候,会在Cookie 阅读全文
posted @ 2017-08-31 21:57 littlewrong 阅读(457) 评论(0) 推荐(0) 编辑
摘要: Deleted表用于存储DELETE和UPDATE语句所影响的行的复本。在执行DELETE或UPDATE语句时,行从触发器表中删除,并传输到deleted表中。Deleted表和触发器表通常没有相同的行。 Inserted表用于存储INSERT和UPDATE语句所影响的行的副本。在一个插入或更新事务 阅读全文
posted @ 2017-07-12 14:59 littlewrong 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 1.错误日志:warn:an upstream response is buffered to a temporary file 解决办法:增加fastcgi_buffers 8 4K; fastcgi_buffer_size 4K; 2. a client request body is buff 阅读全文
posted @ 2017-06-25 12:01 littlewrong 阅读(22606) 评论(0) 推荐(0) 编辑