ms sql server 查看服务器当前的连接会话及会话信息(客户端ip地址,协议,时间,读写情况等)

ms sql server 查看服务器当前的连接会话及会话信息(客户端ip地址,协议,时间,读写情况等)

select * from sys.dm_exec_connections

这实际上是master数据库里的一个系统视图,读出来后有不少字段,如client_net_address, protoco_type, connect_time, num_read, num_write等,很明白,就不多说了。

btw,master数据库里有很多系统视图,如:dm_exec_sessions, dm_fts_memory_pools, dm_os_hosts, dm_os_memory_a[……]

继续阅读

一个使用tar实现对目录作增量备份的bash脚本

一个使用tar实现对目录作增量备份的bash脚本

#!/bin/bash
#program:
#  auto backup the folder $to_backup
#        to $save_to
#  History:
# 2012/11/28  yqf First release

# do NOT change the variable $filename
#  except you REALY know what you are doing exactly
filename=`date +%Y%m%d_%H%M%S`

# sample
# ##w[......]

继续阅读

grub-install安装grub时出错:/boot/grub/stage1 not read correctly.

在U盘上安装grub,之前是fat32的,格式化成exfat再安装grub,U盘设置文件为/dev/sdc4, 挂载于/media/c0f80392-62db-4156-a4f5-c64fc7515795/,但在运行grub-install时却出错了,如下:

[root@fsc feng]# grub-install –root-directory=/media/c0f80392-62db-4156-a4f5-c64fc7515795/ /dev/sdc4
The file /media/c0f80392-62db-4156-a4f5-c64fc7515795//boot/grub/[……]

继续阅读

ms sql在对大表做很慢的更新语句时,应单条处理,而不要一个语句更新多条,以避免锁表而阻塞其它应用的读操作

接到一客户的要求,需要修改其发布过所有文章里的联系方式,于是写sql语句,拿到mssql客户端里直接执行。

起初写的是这种形式的语句
update article set [content]=replace(content,’aaaa’,’bbbb’) where companyid=123
写起来很简单,但是执行时花了3分钟都没有执行完,在执行过程中,网站上对article表访问的页面全部长时间没有响应。于是赶快停掉这个update语句。前面页面马上恢复正常。

分析原因应该是在update时,表被锁定,而阻塞了所有操作。
于是改成
update article set [[……]

继续阅读

tar 打包备份目录时分卷打包压缩(增量备份,并自动分割成多个文件)

tar 增量备份打包目录,并分卷打包压缩(自动分割成多个文件)

tar -g /home/my_name/backup/incremenntal_list/my_website.incremenntal_list \
  -C /var/www/html/ \
  --exclude data/cache \
  --exclude data/tmp \
  -cpjvf - /var/www/html/ |split -b 2g

-g xxx  是增量日志文件,再次执行上面命令备份目录时,没有改变的文件将不备份,这样节省备份占用硬盘;需要还原时,同样要带上该参数,后边跟上该文件路[……]

继续阅读

使用cygwin在windows下自动备份目录数据/注册cygwin为windows服务

windows下备份目录是个蛋疼的事情,而linux的备份功能实在彪悍的让人感激涕零,然而对于出卖灵魂维护windows服务器的人士,在鄙视windows之余,还是得解决这个问题。突然想到cygwin这个强大的工具,是否可以在windows下使用它crond/crontab呢?查了一下,还真的有。

,先记来来,有时间研究一下

http://blog.csdn.net/cg_cheng/article/details/4377307  在cygwin下配置crontab

http://www.cnblogs.com/alaska1131/articles/1655643.htm[……]

继续阅读

linux下使用tar差异化备份目录

tar命令的参数 -g, 后面跟一个文件路径,就可在该文件里记录下差异化日志记录,每次备份时带上该参数及文件路径,即是差异备份。还原时,也应该带上这个参数,否则,每次差异备份时删除的文件将不会自动删除。

tar命令的参数 –exclude=,后面跟一个文件路径(支持通配符),指备份时忽略指定的文件(包括目录),如有多个忽略文件,那就加多次该参数,每次指定一个忽略目录。

tar命令的-p参数,指打包时保留文件权限

需要还原文件时,就按备份的次序依次执行-x解包时,记得要带上-g参数,别忘了后面的差异化日志记录文件,这样每次备份时删除的文件也会自动在还原的目标目录里删除;当然你[……]

继续阅读

Microsoft SQL server数据库转换为MySQL方法

有时需要把MS SQL数据库转换成MySQL,但苦于没有好用的工具,个人使用一个手工转换的方法,相对来说还是比较方便的,对于只导一两个表的时候。

思想:
通过mssql构造出MySQL的insert into 语句,保存到一个文本文件里,然后导入MySQL数据库。

方法扼要如下:

  1. 根据ms sql表结构同步创建出mysql表,可以使用mssql客户端工具生成mssql的建表语句,里面一般来说会带上COLLATE Chinese_PRC_CI_AS 及 CONSTRAINT [DF_xxx_xxx] 这样的部分,对mysql是没有用的,使用ue的查找替换功能将其删掉,替换“[……]

    继续阅读

linux/centos上安装配置gitosis(git服务器端)

gitosis长期没有更新了,换gitolite吧,或gitlab也行

[个人按本文方法是可以安装gitosis的,但在客户端git clone总是失败,也无法成功创建repo,所以个人改用gitolite,感觉比gitosis简单一些,而且一安装就可以正常工作]

安装gitosis,因为centos/redhat官方源不带gitosis,所以需要先添加EPEL软件仓库,或者手工下载gitosis的 rpm包及依赖包并手工安装。

gitosis rpm包安装后,会自动创建一个gitosis用户,为了简化其见,手工对其改名,改成git,涉及以下四个文件/etc/passwd,[……]

继续阅读