作者归档:贝贝爸

推荐一个支持git的网站

推荐一下提供git服务的网站 https://bitbucket.org/phpbird ,和https://github.com/差不多,但是可以有无限的private repositories。
git出来好多年了,没怎么用过,有用过的同学可以来交流一下。

mysql linux 备份脚本

#!/bin/sh
# mysql data backup script
#
# use mysqldump --help,get more detail.
#
BakDir=/root/back/mysql
LogFile=/root/back/mysql/mysqlbak.log
DATE=`date +%Y%m%d%H%M%S`
echo " " >> $LogFile
echo " " >> $LogFile
echo "-------------------------------------------" >> $LogFile 
echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile 
echo "--------------------------" >> $LogFile 
cd $BakDir
DumpFile=$DATE.sql
GZDumpFile=$DATE.sql.tar.gz
/usr/local/bin/mysqldump -u user -pname  --database -h 127.0.0.1 db> $DumpFile
echo "Dump Done" >> $LogFile
tar czvf $GZDumpFile $DumpFile >> $LogFile 2>&1 
echo "[$GZDumpFile]Backup Success!" >> $LogFile 
rm -f $DumpFile 
#cd $BakDir/daily
cd $BakDir   
echo "Backup Done!"
echo "please Check $BakDir Directory!"
echo "copy it to your local disk or ftp to somewhere !!!"
find $BakDir -ctime +30 -exec rm {} \;
echo "delete file over 30 days"

其中user,name和db请根据自己的情况修改

resin-pro-4.0.34 crack 破解文件下载

resin-pro-4.0.34 破解文件下载pro.jar

resin pro 4.0.34 Full Cracked download.

下载压缩包,解压出来pro.jar文件,停掉resin,覆盖原来lib目录的pro.jar文件重启resin即可成为professional版本。

仅供学习使用,请在下载后24时间内删除。

破解方法来自
http://www.strongd.net/?p=1163

mysql自带的一些工具

mysqlbinlog 这个大家都应该知道的,用来看mysql的binlog的。mysql自带。

mysqldumpslow 用于分析mysql的slow log。自带的。结果如下。

Count: 1 Time=4.00s (4s) Lock=0.00s (0s) Rows=0.0 (0), root[root]@[127.0.0.1] select * from user ignore key (PRIMARY) where address = ‘S’ order by id asc limit NCount: 3 Time=4.00s (12s) Lock=0.00s (0s) Rows=0.0 (0), root[root]@[127.0.0.1] select * from user where address = ‘S’ order by id asc limit NCount: 2 Time=4.00s (8s) Lock=0.00s (0s) Rows=32.0 (64), root[root]@[127.0.0.1] select count(*), age from user group by age with rollup

mysql_explain_log 分析mysql的通用查询日志(用log选项打开的),自带的。需要注意的是用客户端连接mysql的时候需要指定数据库,使用use XXX选择数据库的时候此工具无法分辨出sql使用的是什么数据库。

explain_log provided by http://www.mobile.de=========== ================================Index usage ————————————Table test.user: — count key: 1 PRIMARY count possible_keys: 1 PRIMARY count type: 1 ALL 1 rangeQueries causing table scans ——————-EXPLAIN select * from test.userSum: 1 table scansSummary —————————————Select: 4 queriesUpdate: 0 queriesInit: 0 timesField: 6 timesRefresh: 0 timesQuery: 35 timesStatistics: 0 timesLogfile: 59 linesStarted: Tue Mar 27 10:45:12 2007Finished: Tue Mar 27 10:45:12 2007

perror 显示错误码对应的错误信息。mysql自带。

shell>perror 13OS error code 13: Permission denied

mysqlslap 一个性能测试的工具。mysql的test suite中带的。

mtop 一个进程监视的工具,可以直接在里面显示出explain的结果。也可以使用watch -n 1 mysqladmin status processlist来监视。

127.0.0.1 mysqld 5.0.27-standard-log up 0 day(s), 0:10 hrs1 threads: 1 running, 1 cached. Queries/slow: 26/0 Cache Hit: 100.00%Opened tables: 0 RRN: 467 TLW: 0 SFJ: 0 SMP: 0 QPS: 0ID USER HOST DB TIME COMMAND STATE INFO26 root 1270.0.1:52841 Query show full processlist

mysql_explain_slow_log 和mysql_explain_log差不多,不过这个是分析slow log的。

mysql_explain_slow_log======================Index usage ————————————Table test: — count type: 10 ALLTable test.click: — count type: 1 ALLTable test.user: — count key: 1 username,useraa 9 usertime 16 PRIMARY 29 useraa count possible_keys: 1 PRIMARY 7 useraa,username 9 usertime 23 useraa count type: 1 index_merge 2 range 23 ref 29 index 31 ALLQueries causing table scans ——————-EXPLAIN select * from test.userEXPLAIN select * from test.user order by rand() limit 5省略若干行…Sum: 56 table scansSummary —————————————Select: 97 queriesUpdate: 0 queriesLoad: 33 queriesLogfile: 1657 linesStarted: Tue Mar 27 11:01:14 2007Finished: Tue Mar 27 11:01:14 2007

mysqlreport 监视分析mysql状态的工具。

MySQL 5.0.27-standard-l uptime 0 0:17:57 Tue Mar 27 11:04:15 2007__ Key _________________________________________________________________Buffer used 0 of 32.00M %Used: 0.00 Current 3.68M %Usage: 11.51Write ratio 0.000Read ratio 0.000__ Questions ___________________________________________________________Total 170 0.2/sSlow 0 0/s %Total: 0.00 %DMS: 0.00DMS 105 0.1/s 61.76__ Table Locks _________________________________________________________Waited 0 0/s %Total: 0.00Immediate 109 0.1/s__ Tables ______________________________________________________________Open 8 of 2048 %Cache: 0.39Opened 14 0.0/s__ Connections _________________________________________________________Max used 2 of 500 %Max: 0.40Total 38 0.0/s__ Created Temp ________________________________________________________Disk table 0 0/sTable 16 0.0/sFile 5 0.0/s

mysqlsla 分析mysql的各种日志。分析slow log的结果如下。

Reading slow log ‘db-slow.log’170 total queries, 72 uniqueSorting by ‘t’__ 001 _______________________________________________________________________Count : 15 (8%)Time : 1297.000 total, 86.467 avg, 3.000 min to 833.000 max 9:20% 10:13% 833:6% 67:6% 57:6% 3:6% 61:6% 58:6% 20:6% 103:6% (87%)Lock : 0.000 total, 0.000 avg, 0.000 min to 0.000 maxRows sent : 0 avg, 0 min to 0 maxRows examined : 0 avg, 0 min to 0 maxUser : root[root]@/127.0.0.1 (100%)SET insert_id=N;LOAD data infile ‘S’ INTO table user;省略若干行…

mysqlsniffer 监听mysql通讯的工具。

mysqlsniffer listening for MySQL on interface eth0 port 3306server > 192.168.1.170.32958: ID 0 len 65 Handshake 192.168.1.170.32958 > server: ID 1 len 38 Handshake (new auth) server > 192.168.1.170.32958: ID 2 len 7 OK 192.168.1.170.32958 > server: ID 0 len 18 COM_QUERY: SELECT DATABASE()server > 192.168.1.170.32958: ID 1 len 1 1 Fields ID 2 len 32 Field: ..DATABASE() ID 3 len 5 End ID 4 len 1 || NULL || ID 5 len 5 End 192.168.1.170.32958 > server: ID 0 len 5 COM_INIT_DB: testserver > 192.168.1.170.32958: ID 1 len 7 OK 192.168.1.170.32958 > server: ID 0 len 15 COM_QUERY: show databasesserver > 192.168.1.170.32958: ID 1 len 1 1 Fields ID 2 len 49 Field: .SCHEMATA.Database ID 3 len 5 End ID 4 len 19 || information_schema || ID 5 len 3 || aa || ID 6 len 6 || mysql || ID 7 len 7 || sakila || ID 8 len 5 || test || ID 9 len 6 || world || ID 10 len 5 End 192.168.1.170.32958 > server: ID 0 len 12 COM_QUERY: show tablesserver > 192.168.1.170.32958: ID 1 len 1 1 Fields ID 2 len 57 Field: .TABLE_NAMES.Tables_in_test ID 3 len 5 End ID 4 len 6 || click || ID 5 len 8 || s_click || ID 6 len 5 || user || ID 7 len 5 End 192.168.1.170.32958 > server: ID 0 len 7 COM_FIELD_LIST: clickserver > 192.168.1.170.32958: ID 1 len 42 Field: test.click.id ID 2 len 51 Field: test.click.user_id ID 3 len 62 Field: test.click.promotion_id ID 4 len 49 Field: test.click.status ID 5 len 78 Field: test.click.record_time ID 6 len 5 End 192.168.1.170.32958 > server: ID 0 len 9 COM_FIELD_LIST: s_clickserver > 192.168.1.170.32958: ID 1 len 46 Field: test.s_click.id ID 2 len 66 Field: test.s_click.promotion_id ID 3 len 53 Field: test.s_click.status ID 4 len 59 Field: test.s_click.click_num ID 5 len 73 Field: test.s_click.record_date ID 6 len 5 End 192.168.1.170.32958 > server: ID 0 len 6 COM_FIELD_LIST: userserver > 192.168.1.170.32958: ID 1 len 40 Field: test.user.id ID 2 len 43 Field: test.user.name ID 3 len 45 Field: test.user.email ID 4 len 49 Field: test.user.address ID 5 len 41 Field: test.user.age ID 6 len 76 Field: test.user.regist_time ID 7 len 5 End 192.168.1.170.32958 > server: ID 0 len 27 COM_QUERY: select * from user limit 1server > 192.168.1.170.32958: ID 1 len 1 6 Fields ID 2 len 38 Field: test.user.id ID 3 len 42 Field: test.user.name ID 4 len 44 Field: test.user.email ID 5 len 48 Field: test.user.address ID 6 len 40 Field: test.user.age ID 7 len 56 Field: test.user.regist_time ID 8 len 5 End ID 9 len 34 || 1 | ll | ff | ll | 10 | 2007-03-21 09:58:07 || ID 10 len 5 End 192.168.1.170.32958 > server: ID 0 len 1 COM_QUIT192.168.1.57.60248 > server: ID 0 len 48 COM_QUERY: SELECT COUNT(*) FROM product WHERE index_flag=0server > 192.168.1.57.60248: ID 1 len 1 1 Fields ID 2 len 30 Field: ..COUNT(*) ID 3 len 1 End ID 4 len 2 || 0 || ID 5 len 5 End 70 MySQL packets captured (2022 bytes)

糖蒜

前两天晚饭前打开冰箱,无意发现了了2头糖蒜。剥开吃了一瓣后,“就是那个味儿!”。吃了这个糖蒜,想起来高中的时候,和同学,朋友中午一起去吃午饭的光景了。
初中和高中2个学校都在农业路和文化路口附近,中午回家远,午饭就在外边解决。经常吃的就是一些面食,大米炒菜成本太高,面食里面有汤,有面,还有一些配菜,价格实惠量又足,有些地方味道还真的不错。
掐指一算一年,快2年没回家了。

vim tips

怎么重做和撤销,redo and undo
u:undo last change,撤销最后一次的修改
U:把当前行到初始状态
CTRL+r:redo the undone changes,重做redo的内容。
更多的可以查看
:help undo
“(TAB上边的点):回到光标跳转前的位置。
dd:删除一行。
5dd:删除光标处以下的五行。
按V键进入可视模式,选择要拷贝的内容,按yy拷贝选中的内容,在需要的地方按p拷贝内容到新光标处或新文件中。
i:进入插入模式。
v:进入可视模式。
Esc:回到基本模式
h,j,k,l:上下左右移动光标
vsp:左右分割窗口。
sp:上下分割窗口。
ctrl+w:在窗口中选择。
:q!:不保存退出。
x:保存退出。
w:只保存不退出。
x:删除一个字符。
u:撤消
CTRL+O:回跳。
CTRL+R:撤消刚才的撤消。
:help:帮助。
zz:退出帮助窗口。
3w :向前移动三个单词。
3b:向后移动三个单词。
CTRL+[:跳到光标单词处。
CTRL+T:跳回。
9k:上移九行。
:e 打开新文件(在多窗口操作中很有用)。
yaw:拷贝一个单词。
CTRL+B:把光标移到当前行的左边首部。
CTRL+E:把光标移到当前行的右边首部。
vim -r doc.txt:恢复文件到修改前。
:/查找单词
H:跳到第一行。
M:跳到中间。
L:跳到最后一行。
CTRL+d,u,f,b:下移半屏,上移半屏,下移一屏,上移一屏。
gg:到文件开始处
G:到文件尾部。
–:找到文件上次修改点。
CTRL+p,n:向上查询一个单词,向下查询一个单词。
zo:打开折叠。l键也可以。
zc:关闭折叠。
zr:全部打开折叠。
zm:全部关闭折叠。
zf:创建折叠。
zR:打开所有折叠(包括嵌套)
zM:关闭所有折叠(包括嵌套)
:!ls,查看目录表。
:`o,找到最后修改的文件。
wq,保存退出。
vim txt1 txt2 txt3 txt4,同时打开多个文件,
以下是同时打开多个文件时(建议用多窗口)
n,下一个文件,
n3,往下第三个文件。
first,第一个文件。
last,最后一个文件 。
:/s#kkk#ccc#g,把文件中的kkk替换为ccc

移动光标
上:k nk:向上移动n行 9999k或gg可以移到第一行 G移到最后一行
下:j nj:向下移动n行
左:h nh:向左移动n列
右:l nl:向右移动n列

w:光标以单词向前移动 nw:光标向前移动n个单词 光标到单词的第一个字母上
b:与w相反
e: 光标以单词向前移动 ne:光标向前移动n个单词 光标到单词的最后一个字母上
ge:与e相反

$:移动光标到行尾 n$:移动到第n行的行尾
0(Num):移动光标到行首
^:移动光标到行首第一个非空字符上去

f:移动光标到当前行的字符a上,nf移动光标到当前行的第n个a字符上
F:相反

%:移动到与制匹配的括号上去(),{},[],<>等。

nG:移动到第n行上 G:到最后一行

CTRL+G 得到当前光标在文件中的位置

向前翻页:CTRL+F
向下移动半屏:CTRL+G
向后翻页:CTRL+B

存盘:
:q! :不存盘退出
:e! :放弃修改文件内容,重新载入该文件编辑
:wq :存盘退出

dw:删除一个单词,需将光标移到单词的第一个字母上,按dw,如果光标在单词任意位置,用daw
dnw:删除n个单词
dne:也可,只是删除到单词尾
dnl:向右删除n个字母
dnh:向左删除n个字母
dnj:向下删除n行
dnk:向上删除n行
d$:删除当前光标到改行的行尾的字母
dd:删除一行
cnw[word]:将n个word改变为word
cc:改变整行
C$:改变到行尾

J: 删除换行符,将光标移到改行,按shift+j删除行尾的换行符,下一行接上来了.
u: 撤销前一次的操作
shif+u(U):撤销对该行的所有操作。

:set showmode :设置显示工作模式

o:在当前行的下面另起一行
O(shift+o):在当前行的上面另起一行

nk或nj:光标向上或向下移n行,n为数字
an!【ESC】:在行后面加n个感叹号(!)
nx:执行n次x(删除)操作

ZZ:保存当前文档并退出VIM

:help :查看帮助文档,在这之中,按CTRL+] 进入超连接,按CTRL+O 返回。
:help subject :看某一主题的帮助,ZZ 退出帮助

:set number / set nonumber :显示/不显示行号
:set ruler /set noruler:显示/不显示标尺

/pattern 正方向搜索一个字符模式
?pattern 反方向搜索一个字符模式
然后按n 继续向下找

把光标放到某个单词上面,然后按×号键,表示查找这个单词
查找整个单词:/\

:set hlsearch 高亮显示查找到的单词
:set nohlsearch 关闭改功能

m[a-z]:在文中做标记,标记号可为a-z的26个字母,用`a可以移动到标记a处

r:替换当前字符
nr字符:替换当前n个字符

查找替换:
way1:
/【word】 :查找某个word
cw【newword】:替换为新word
n: 继续查找
.: 执行替换

way2:
:s/string1/string2/g:在一行中将string1替换为string2,g表示执行 用c表示需要确认
:num1,num2 s/string1/string2/g:在行num1至num2中间将string1替换为string2
:1,$ s/string1/string2/g:在全文中将string1替换为string2

v:进入visual 模式
【ESC】退出
V:shift+v 进入行的visual 模式
CTRL+V:进如块操作模式用o和O改变选择的边的大小。

粘贴:p,这是粘贴用x或d删除的文本
复制:
ynw:复制n个单词
yy:复制一行
ynl:复制n个字符
y$:复制当前光标至行尾处
nyy:拷贝n行
完了用p粘贴

:split:分割一个窗口
:split file.c :为另一个文件file.c分隔窗口
:nsplit file.c: 为另一个文件file.c分隔窗口,并指定其行数
CTRL+W在窗口中切换
:close:关闭当前窗口

在所有行插入相同的内容如include<,操作方法如下: 将光标移到开始插入的位置,按CTRL+V进入VISUAL模式,选择好模块后 按I(shift+i),后插入要插入的文本,按[ESC]完成。 :read file.c 将文件file.c的内容插入到当前光标所在的下面 :0read file.c 将文件file.c的内容插入到当前文件的开始处(第0行) :nread file.c 将文件file.c的内容插入到当前文件的第n行后面 :read !cmd :将外部命令cmd的输出插如到当前光标所在的下面 :n1,n2 write temp.c 将本文件中的n1,到n2行写入temp.c这个文件中去 CTRL+L刷新屏幕 shift + < 左移一行 shift + > 右移一行

u: undo
CTRL+R: re-do
J: 合并一行
CTRL+p 自动完成功能
CTRL+g 查看当前文件全路径

q[a-z] 开始记录但前开始的操作为宏,名称可为【a-z】,然后用q终止录制宏。
用reg显示当前定义的所有的宏,用@[a-z]来在当前光标处执行宏[a-z].

http://blog.csdn.net/AbnerChai/archive/2005/09/03/470824.aspx
vi-vim-cheat-sheet.png

一个目录安装多个wordpress

$SHH=$_SERVER[“HTTP_HOST”];
//echo $SHH;
if(eregi(‘myzhuang.cn’, $SHH)){
$table_prefix = ‘mzhuang_’;
define (‘WP_CONTENT_DIR’, ‘./mz’);
}else if(eregi(‘virgin-vie’, $SHH)){
$table_prefix = ‘vv_’;
define (‘WP_CONTENT_DIR’, ‘./vv’);
}

/domains/virgin-vie.com.cn/public_html/wp-includes/languages/
/domains/virgin-vie.com.cn/public_html/wp-content/languages/