vim练级攻略-笔记

VIM

查看完整攻略:http://coolshell.cn/articles/5426.html

x → 删当前光标所在的一个字符

 

dd → 删除当前行,并把删除的行存到剪贴板里

yy→ 复制当前行

p → 粘贴剪贴板

 

a → 在光标后插入

o → 在当前行后插入一个新行

O → 在当前行前插入一个新行

 

0 → 数字零,到行头

^→ 上,到行头

$ → 到本行行尾

 

 

. → (小数点) 可以重复上一次的命令

gg → 到第一行.(相当于1G,或 :1)

G → 到最后一行

 

u → undo撤销

附:vim游戏

你可以点击图片,或是图片下的网址打开这个游戏

http://vim-adventures.com/

vimadventuresgamefun

MySQL的性能调优工具:tuning-primer.sh

安装和使用非常简单:
wget http://www.day32.com/MySQL/tuning-primer.sh
chmod +x tuning-primer.sh
./tuning-primer.sh

更有用是作者总结的处理MySQL性能问题处理的优先级:尤其是头3条,基本上可以解决大部分瓶颈问题的原因。

工具页面

http://www.day32.com/MySQL/

mysql的运算情况,我们可以一步一步的去查看,分析。这样需要一定的时间,今天推荐给大家一个不错的脚本tuning-primer.sh,可以帮助我们去查看一下msyql的运行情况,产生报告和给出一些建议,我们可以根据这些建议,结合mysql服务器的实际情况,对mysql进行优化。
一,下载以及使用
1,wget http://www.day32.com/MySQL/tuning-primer.sh
2,将tuning-primer.sh拷贝到my.cnf的同级目录
3,sh tuning-primer.sh 或者 chmod +x tuning-primer.sh 然后在 ./tuning-primer.sh 二者没什么区别
[root@BlackGhost mysql]# sh tuning-primer.sh
Using login values from ~/.my.cnf
– INITIAL LOGIN ATTEMPT FAILED –
Testing for stored webmin passwords:
None Found
Could not auto detect login info!
Found Sockets: /tmp/mysql.sock //找到一个mysql.sock
Using: /tmp/mysql.sock //使用这个.sock文件
Would you like to provide a different socket?: [y/N] n //是否使用其他的socket
Do you have your login handy ? [y/N] : y //是否手动输入用户名和密码,当然你可以在my.cnf里面设置
User: root
Password:
Would you like me to create a ~/.my.cnf file for you? [y/N] : n //是不是要帮你在创建一个my.cnf
你也可以把用户名和密码放到my.cnf里面,如下
[client]
user = 用户名
password = 密码
socket = /tmp/mysql.sock
二,运行结果,以及部分分析和建议
我是以本机的mysql为例来进行测试的。
— MYSQL PERFORMANCE TUNING PRIMER —
– By: Matthew Montgomery –
MySQL Version 5.1.26-rc-log i686
Uptime = 0 days 0 hrs 0 min 28 sec
Avg. qps = 0
Total Questions = 15
Threads Connected = 1

Warning: Server has not been running for at least 48hrs.
It may not be safe to use these recommendations
告诉我服务运行还不超过48个小时,这样不安全
To find out more information on how each of these
runtime variables effects performance visit:
http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html
Visit http://www.mysql.com/products/enterprise/advisors.html
for info about MySQL’s Enterprise Monitoring and Advisory Service
SLOW QUERIES (慢查询)
The slow query log is enabled.
Current long_query_time = 2.000000 sec.
You have 0 out of 36 that take longer than 2.000000 sec. to complete
Your long_query_time seems to be fine
BINARY UPDATE LOG (增加备份时的log文件)
The binary update log is enabled
The expire_logs_days is not set.
The mysqld will retain the entire binary log until RESET MASTER or PURGE MASTER LOGS commands are run manually
Setting expire_logs_days will allow you to remove old binary logs automatically
See http://dev.mysql.com/doc/refman/5.1/en/purge-master-logs.html
Binlog sync is not enabled, you could loose binlog records during a server crash
告诉我binary log没有设置生存时间,会一直保存下来,只到主服务器重起,并且binlog的同步并没有激活,如果服务器崩溃binlog数据将丢失
WORKER THREADS (工作线程)
Current thread_cache_size = 0
Current threads_cached = 0
Current threads_per_sec = 1
Historic threads_per_sec = 0
Your thread_cache_size is fine
MAX CONNECTIONS (最大连接数)
Current max_connections = 500
Current threads_connected = 1
Historic max_used_connections = 1
The number of used connections is 0% of the configured maximum.
You are using less than 10% of your configured max_connections.
Lowering max_connections could help to avoid an over-allocation of memory
See “MEMORY USAGE” section to make sure you are not over-allocating
告诉我,目前已连接的最大连接和设置的最大连接的比率差不多是0%,建议我把最大连接设置小一点,可以节省一点内存
No InnoDB Support Enabled!
MEMORY USAGE (内存使用)
Max Memory Ever Allocated : 17 M
Configured Max Per-thread Buffers : 796 M
Configured Max Global Buffers : 16 M
Configured Max Memory Limit : 812 M
Physical Memory : 1003 M
Max memory limit seem to be within acceptable norms
KEY BUFFER (KEY缓存)
No key reads?!
Seriously look into using some indexes
Current MyISAM index space = 16 M
Current key_buffer_size = 16 M
Key cache miss rate is 1 : 0
Key buffer free ratio = 88 %
Your key_buffer_size seems to be fine
QUERY CACHE (查询缓存)
Query cache is supported but not enabled 查询缓存是支持的,但是没有激活
Perhaps you should set the query_cache_size 建议我设置一下query_cache_size的大小
SORT OPERATIONS (排序操作)
Current sort_buffer_size = 512 K
Current read_rnd_buffer_size = 512 K
No sort operations have been performed
Sort buffer seems to be fine
JOINS (连接)
Current join_buffer_size = 132.00 K
You have had 0 queries where a join could not use an index properly
Your joins seem to be using indexes properly
OPEN FILES LIMIT (最大打开文件数)
Current open_files_limit = 2500 files
The open_files_limit should typically be set to at least 2x-3x
that of table_cache if you have heavy MyISAM usage.
告诉我,如果大量使用myisam的话,把open_files_limit的大小设置成table_cache大小的2倍-3倍
Your open_files_limit value seems to be fine
TABLE CACHE (表缓存)
Current table_open_cache = 64 tables
Current table_definition_cache = 256 tables
You have a total of 506 tables
You have 64 open tables.
Current table_cache hit rate is 12%
, while 100% of your table cache is in use
You should probably increase your table_cache
You should probably increase your table_definition_cache value.
告诉我打开了多少文件,table_cache缓存的比率是多少,并建议我增加table_cache和table_definition_cache的值
TEMP TABLES (临时表)
Current max_heap_table_size = 16 M
Current tmp_table_size = 16 M
Of 141 temp tables, 10% were created on disk
Created disk tmp tables ratio seems fine
TABLE SCANS (表扫描)
Current read_buffer_size = 256 K
Current table scan ratio = 12 : 1
read_buffer_size seems to be fine
TABLE LOCKING (表锁定)
Current Lock Wait ratio = 0 : 225
Your table locking seems to be fine
从上面的分析报告,以及建议可以看出,本机的mysql真的要好好调优一下了。哈哈。

地址
http://zhumeng8337797.blog.163.com/blog/static/1007689142011101710351950/

DSET3.2使用指南 — Windows版

下载地址:

 

DSET3.3.下载地址:  ftp://ftp.dell.com/FOLDER00925256M/1/Dell_DSET_3.3.0.302.exe

ftp://ftp.dell.com/FOLDER00481709M/1/Dell_DSET_3.2.0.704_A01.exe

(此版本支持的是DELL9,10,11,12代的产品,如下:
PowerEdge R720, R720xd, R620, R200,R210, R210II, R300, R310, R410, R415, R510, R515, R610, R710, R715, R805, R810, R900, R905, R910,1950, 1955, 2950, 6950, and 2970. T620, T100, T105, T110,T110II, T300, T310, T410, T605, T610, T710, 1900, 2900, C410X, C1100, C2100,C6100, C6105, and C6145.
刀片服务器: PowerEdge M620, M600, M605, M610,M610X, M710, M710HD, M805, M905, M910, and M915.
如果您的机器不在此列表中,请选择其它的版本

http://support1.ap.dell.com/cn/zh/forum/thread.asp?fid=20&tid=99848&type=email_tool

安装指南:

at.aspfn201259164723204731

at.aspfn201259164750495932

at.aspfn2012591648436085

at.aspfn201259164818622324

at.aspfn20125916483343775

at.aspfn20125916485029423

at.aspfn20125916485751850

at.aspfn20125916491196209

linux之cp/scp命令+scp命令详解

名称:cp

使用权限:所有使用者

使用方式:

cp [options] source dest

cp [options] source… directory

说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。

把计

-a 尽可能将档案状态、权限等资料都照原状予以复制。

-r 若 source 中含有目录名,则将目录下之档案亦皆依序拷贝至目的地。

-f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。

范例:

将档案 aaa 复制(已存在),并命名为 bbb :

cp aaa bbb

将所有的C语言程式拷贝至 Finished 子目录中 :

cp *.c Finished

命令:scp

不同的Linux之间copy文件常用有3种方法:

第一种就是ftp,也就是其中一台Linux安装ftp Server,这样可以另外一台使用ftp的client程序来进行文件的copy。

第二种方法就是采用samba服务,类似Windows文件copy 的方式来操作,比较简洁方便。

第三种就是利用scp命令来进行文件复制。

scp是有Security的文件copy,基于ssh登录。操作起来比较方便,比如要把当前一个文件copy到远程另外一台主机上,可以如下命令。

scp /home/daisy/full.tar.gz root@172.19.2.75:/home/root

然后会提示你输入另外那台172.19.2.75主机的root用户的登录密码,接着就开始copy了。

如果想反过来操作,把文件从远程主机copy到当前系统,也很简单。

linux之cp/scp命令+scp命令详解(转) - linmaogan - 独木★不成林scp root@/full.tar.gz 172.19.2.75:/home/root/full.tar.gz home/daisy/full.tar.gz

linux 的 scp 命令 可以 在 linux 之间复制 文件 和 目录;

==================
scp 命令
==================
scp 可以在 2个 linux 主机间复制文件;

命令基本格式:
scp [可选参数] file_source file_target

======
从 本地 复制到 远程
======
* 复制文件:
* 命令格式:
scp local_file remote_username@remote_ip:remote_folder
或者
scp local_file remote_username@remote_ip:remote_file
或者
scp local_file remote_ip:remote_folder
或者
scp local_file remote_ip:remote_file

第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;
* 例子:
scp /home/space/music/1.mp3 root@www.cumt.edu.cn:/home/root/others/music
scp /home/space/music/1.mp3 root@www.cumt.edu.cn:/home/root/others/music/001.mp3
scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music
scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music/001.mp3

* 复制目录:
* 命令格式:
scp -r local_folder remote_username@remote_ip:remote_folder
或者
scp -r local_folder remote_ip:remote_folder

第1个指定了用户名,命令执行后需要再输入密码;
第2个没有指定用户名,命令执行后需要输入用户名和密码;
* 例子:
scp -r /home/space/music/ root@www.cumt.edu.cn:/home/root/others/
scp -r /home/space/music/ www.cumt.edu.cn:/home/root/others/

上面 命令 将 本地 music 目录 复制 到 远程 others 目录下,即复制后有 远程 有 ../others/music/ 目录

======
从 远程 复制到 本地
======
从 远程 复制到 本地,只要将 从 本地 复制到 远程 的命令 的 后2个参数 调换顺序 即可;

例如:
scp root@www.cumt.edu.cn:/home/root/others/music /home/space/music/1.mp3
scp -r www.cumt.edu.cn:/home/root/others/ /home/space/music/

最简单的应用如下 :

scp 本地用户名 @IP 地址 : 文件名 1 远程用户名 @IP 地址 : 文件名 2

[ 本地用户名 @IP 地址 :] 可以不输入 , 可能需要输入远程用户名所对应的密码 .

可能有用的几个参数 :

-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 .

-C 使能压缩选项 .

-P 选择端口 . 注意 -p 已经被 rcp 使用 .

-4 强行使用 IPV4 地址 .

-6 强行使用 IPV6 地址 .

 

注意两点:
1.如果远程服务器防火墙有特殊限制,scp便要走特殊端口,具体用什么端口视情况而定,命令格式如下:
#scp -p 4588 remote@www.abc.com:/usr/local/sin.sh /home/administrator
2.使用scp要注意所使用的用户是否具有可读取远程服务器相应文件的权限。

mssql数据库和mysql数据库端口修改方法

#############################################
SQL Server默认1433端口修改方法 1433端口存在的不安全因素

1433端口不是很安全,往往很容易被黑客攻陷,因此,更改SQL Server 默认的1433端口是很有必要的。现在网上存在很多抓1433端口肉鸡的动画。而他们利用的往往是sa弱口令,因此要注意把sa密码设置得复杂一些,而且在conn等数据库链接文件中不要使用sa用户进行数据库连接。

另外1433端口,如果仅仅是本机web链接本机数据库,那么没必要开1433,它是远程链接使用的。

#############################################

sql2000下更改端口 

SQL Server 2000更改端口之前,必须安装sql server 2000 sp4补丁。

打开Microsoft SQL Server–网络实用工具–启用的协议–TCP/IP–属性–默认端口

920e5d0fd9f9d72a929cef50d42a2834359bbb42

更改后sql2000客户端连接的方法:
打开Microsoft SQL Server–客户端网络实用工具–别名,添加

40d7dd43ad4bd113e320487f5aafa40f4afb0554

#############################################

sql2005下更改端口

更改 SQL Server 2005 端口号 

SQL Server 2005更改端口之前,必须安装sql server 2005 sp2补丁。

1、默认端口

SQL Server的默认TCP端口是1433,UDP端口是1434。2005连接字符串为
Provider=SQLNCLI.1;Persist Security Info=True;User ID=****;Password=**;Initial Catalog=tablename;Data Source=202.000.000.000.
2、更改端口为:3533

如果服务器的TCP端口更改为其他的端口,那么在客户端的配置工具中需要做如下的设置:

程序->Microsoft sql server 2005 ->配置工具->sql server configration manage ,如下图:

eb656ed0f703918f711bc287513d269758eec47c

在网络配置中选择SQLEXPRESS协议如下图所示:

d9988dcb39dbb6fd2f641b6b0924ab18972b3706

在右侧的TCP/IP中的属性中,协议对话框的内容,按照如下设置:

ea92fb03918fa0ecda0d9b40269759ee3c6ddb7c

IP地址对话框中按照如下所示设置

b199bafd5266d01676266065972bd40735fa3506

IP2中的地址设置为客户端的IP地址,端口更改为服务器端SQL SERVER开发的端口。

19cdacec08fa513df26093933d6d55fbb3fbd97c

在来设置客户端的协议的端口,界面如下所示

3ebf5e66d01609242b1a5c56d40735fae6cd3406

弹出的协议窗口中,更改默认的端口,设置如下图所示。

da24dc160924ab1816291f7a35fae6cd7b890b06

所有的设置完成之后,重新启动SQLEXPRESS服务。

28ae04fa513d26978c19f71055fbb2fb4216d87c

按照以上设置完成客户端端口更改,在程序中的数据库连接字符串也应该做相应的更改,否则还是无法连接打数据库。

 

更改端口后sql2005客户端连接的方法

开始–设置–控制面板–管理工具–数据源(odbc)–添加–选择SQL Server,

填写好名称与服务器IP,下一步后选择使用用户输入登录ID和密码的SQL Server验证

点击–客户端配置–去掉动态端口,填写真正的端口

#############################################

更改MySQL端口号 

打开C:\Program Files\MySQL\MySQL Server 5.1文件夹中的my.ini文件。如下图:

755d4d34970a304e7d1a5eb7d1c8a786c9175c01

点击菜单栏的“编辑”,再选择“查找”,在“查找内容”处输入3306后点击“查找下一个”,它会自动转到“[client]”字段的port=3306这行,将它改为您需要的端口,比如5176。再继续查找3306,它会转到“[mysqld]# The TCP/IP Port the MySQL Server will listen on”字段的port=3306这行,再将3306改为5176。如下图:

21353512b31bb05155e34c65367adab44bede07f

更改完成后点击菜单栏的“文件”,再点击“保存”。点击左下角“开始”,“管理工具”,“服务”。鼠标右键点击服务列表中的“MySQL”服务,选择“重新启动”,如下图:

 

c9769b0a304e251fcccf1ab5a786c9177f3e5301

服务器重启完成后,更改已经完成。这是你只需要在网站源码数据库链接地址处或MySQL管理软件地址处改为新的公网IP地址和端口号,输入账号和密码后即可完成连接设置。如下图:

1f483c4e251f95ca8bcd6cfbc9177f3e67095201

点击“确定”后,再双击左侧刚才新建的连接,发现已经可以成功远程连接了,如下图:

b150bf1bb051f81928e2fc07dab44aed2f73e77f

 

Windows Server 2008防火墙配置攻略

最近微软的最新服务器操作系统Windows Server 2008已经正式发布,在这款微软所宣称的“史上安全性最强”的服务器操作系统中,新增了很多安全方面的设计和功能,其中它的防火墙也有了重大的改进,不过对于服务器操作系统来说,系统自带的普通防火墙显然功能过于简陋,我们今天介绍的是它的高级安全Windows防火墙,这是一款让Windows Server 2008的安全性大幅提高的一个利器。

了解高级安全Windows防火墙

在“深层防御”体系中,网络防火墙处于周边层,而Windows防火墙处于主机层面。和Windows XP和Windows 2003的防火墙一样,Windows Server 2008的防火墙也是一款基于主机的状态防火墙,它结合了主机防火墙和IPSec,可以对穿过网络边界防火墙和发自企业内部的网络攻击进行防护,可以说基于主机的防火墙是网络边界防火墙的一个有益的补充。

与以前Windows版本中的防火墙相比,Windows Server 2008中的高级安全防火墙(WFAS)有了较大的改进,首先它支持双向保护,可以对出站、入站通信进行过滤。

其次它将Windows防火墙功能和Internet 协议安全(IPSec)集成到一个控制台中。使用这些高级选项可以按照环境所需的方式配置密钥交换、数据保护(完整性和加密)以及身份验证设置。

而且WFAS还可以实现更高级的规则配置,你可以针对Windows Server上的各种对象创建防火墙规则,配置防火墙规则以确定阻止还是允许流量通过具有高级安全性的Windows防火墙。

传入数据包到达计算机时,具有高级安全性的Windows防火墙检查该数据包,并确定它是否符合防火墙规则中指定的标准。如果数据包与规则中的标准匹配,则具有高级安全性的Windows防火墙执行规则中指定的操作,即阻止连接或允许连接。如果数据包与规则中的标准不匹配,则具有高级安全性的Windows防火墙丢弃该数据包,并在防火墙日志文件中创建条目(如果启用了日志记录)。

对规则进行配置时,可以从各种标准中进行选择:例如应用程序名称、系统服务名称、TCP端口、UDP端口、本地IP地址、远程IP地址、配置文件、接口类型(如网络适配器)、用户、用户组、计算机、计算机组、协议、ICMP类型等。规则中的标准添加在一起;添加的标准越多,具有高级安全性的Windows防火墙匹配传入流量就越精细。

我们可以通过多种方式来配置Windows Server 2008防火墙和IPSec的设置和选项,下面让我们具体看一下如何来配置Window Server 2008的这款高级防火墙。

 

使用高级安全Windows防火墙管理单元管理防火墙

这种方式可以让你在一个界面中同时配置防火墙设置和IPSec设置,还可以在监视节点中查看当前应用的策略、规则和其它信息。

从启动菜单的管理工具中找到高级安全Windows防火墙,点击打开MMC管理单元,如下图。

  1205YF1OZ1KO

  图1、具有高级安全性的Windows防火墙MMC管理单元

从以上界面中我们可以看到,Windows 2008的高级安全Windows防火墙使用出站和入站两组规则来配置其如何响应传入和传出的流量;通过连接安全规则来确定如何保护计算机和其它计算机之间的流量。而且可以监视防火墙活动和规则。

下面我们来通过实际例子查看一下如何配置这几个规则。

首先从入站规则开始,假如我们在Windows Server 2008上安装了一个Apache Web服务器,默认情况下,从远端是无法访问这个服务器的,因为在入站规则中没有配置来确认对这些流量“放行”,下面我们就为它增加一条规则。

打开高级安全Windows防火墙,点击入站规则后从右边的入站规则列表中我们可以看到Windows Server 2008自带的一些安全规则,因为Apache是一款第三方应用软件,所以我们需要通过右边操作区的【新规则】来新建一条,如下图。

  1205YF1XZ24039

  图2、选择要创建的规则类型

在这儿可以看到,我们可以基于具体的程序、端口、预定义或自定义来创建入站规则,其中每个类型的步骤会有细微的差别。在我们这个例子中,我们选择【程序】类型,点击下一步接下来选择具体的程序路径,如下图。

    1205YF1a1032564

  图3、选择程序路径

第三步指定对符合条件的流量进行什么操作,我们这儿当然是允许连接了,如下图

   1205YF2033041a0

  图4、指定操作内容

接下来选择应用规则的配置文件和为规则指定名称后,这条规则就创建完了,从入站规则列表中可以看到你创建的规则了,如下图。

   1205YF210F5WH

  图5、新创建的规则

现在就可以正常从远程访问你的Apache服务器了。

如果要对这个已经创建的规则进行修改等操作,可以在选中规则后,从右边的操作区域进行操作,如下图。

  1205YF21U0Bb5

在Windows服务器上开启SNMP代理程序

前边我们介绍了如何在Linux服务器上开启SNMP代理程序,很多用户已经开始使用这项功能。与此同时,另一部分Windows服务器用户则面临着同样的问题,下边我们来介绍如何在Windows上开启SNMP代理程序以及如何进行安全配置。

这里以Windows Server 2003为例,对于其它Windows服务器产品,方法类似。

首先你必须确认当前的Windows组件中是否已经安装了SNMP协议,很简单,在控制面板的“添加或删除程序”中,查看已安装的Windows组件,在“管理和监控工具”中你会发现“简单网络管理协议(SNMP)”,如果没有安装,则打勾进行安装,期间你可能需要定位Windows安装盘,这些对你来说并不困难。

snmp安装所需的文件下载地址:http://down.51cto.com/data/249677

791

SNMP组件安装成功后,接下来打开“管理”菜单中的“服务”。

80

找到SNMP Service,双击它进行配置。这里需要注意的是,在前边安装SNMP协议后,SNMP Service会默认启动,而它下边的SNMP Trap Service是不需要开启的,如果它已被开启,请关闭它。

811

在SNMP Service的配置窗口中,你只需要切换到“安全”选项卡,按照以下的图示进行填写,这里的团体名称就是前边介绍过的SNMP v2c版本中的密码字符串,这里的“public”只是一个例子,你可以填写其它的字符串,随后在监控宝中添加服务器时,选择2c协议,同时在Community输入框中填写这个团体名称即可。

另一个需要特别设置的地方是下边的授权主机,选择“接受来自这些主机的SNMP数据包”,然后在下边的指定主机中添加“60.195.249.83、60.195.252.107、 60.195.252.110”这3个IP,这是监控宝的专用监控点,这使得除此之外的其它服务器无法获取你的服务器监控信息。

3921

一切配置好后,保证SNMP Service已经开启,并且如果以后重启了服务器,也请来检查是否开启了SNMP Service,当然,如果该服务被关闭,监控宝会在服务器监控视图中提醒你。

另外,还要保证你的服务器已经打开了SNMP Service的端口,默认为UDP 161。如果你启用了系统防火墙,那么请添加这个例外端口,打开本地连接->属性->高级->防火墙->例外,添加端口如下:

%E9%98%B2%E7%81%AB%E5%A2%99%E6%88%AA%E5%9B%BE3地连接->属性->高级->防火墙->例外->
添加端口.

防火墙截图

然后就可以在监控宝中添加服务器了。