Entries Tagged as ''

数据从mysql4.1.x倒到mysql5.0.x后中文乱码的问题

今天
把个系统从一台机器上挪到另外一台机器
由于牵涉到数据库升级
(原来的是4.1.x,中文数据编码是gbk;新的是5.0.x,中文数据编码想用utf-8)
所以就比较留心
首先把数据dump出来
mysqldump db1>db1.sql
然后传到新的服务器上
scp db1.sql xxx.xxx.xxx.xxx:/tmp/
再在新的机器上做编码转换
iconv -f gbk -t utf-8 db1.sql>db1utf8.sql
再倒入新的库
mysql db1 然后发现web页面显示需要选gbk才不乱码(跟在老机器上一样)
最后在老机器上dump时加参数指定缺省character-set
mysqldump --default-charcter-set=latin1 db1>db11.sql
这样做的数据拷到新机器上后

iconv -f gbk -t utf-8 db11.sql>db11utf8.sql
再倒入
就没有问题了(库里存的是utf8的数据了)

oom-killer on Fedora Core 3

发现有台机器
FC3(Fedora Core 3)的系统
kernel2.6.12.3smp
[root@xxxx cron.daily]# egrep “Low|High” /proc/meminfo
HighTotal: 3080168 kB
HighFree: 26288 kB
LowTotal: 882600 kB
LowFree: 134452 kB
周末发生大面积服务当掉
今天查log
发现是:“

Out of Memory: Killed process xxxxx (service’s name).


这个机器好歹都是4G内存呀
不知怎么搞得
貌似连4G的swap都用完了
导致系统oom(out of memory)-killer到处乱杀进程

怎样让httpd2.2支持ssi(server side include)

权威文档可以看这里
只想简单应用又懒得看e文的就听我道来
首先
你需要让apache知道怎么去解析.shtml文件(这里假设有ssi的文件的扩展名为shtml)

AddType text/html .shtml
AddOutputFilter INCLUDES .shtml

从httpd2.0开始就用这两句
在以前apache1.3.x的时候貌似是另外的一句
然后要在你要实现ssi功能的目录下标明:

Options +Includes

比如

<Directory /var/www/html>
Options +Includes
</Directory>

最后
重起apache
即可

vim里对程序的自动排版功能

本意是找个能够把程序排版成标准式样的程序的
偶然发现vim居然就自带这个功能
于是就省心了
具体方法是这样的
在浏览模式下输入命令“1G=G
于是一下子就排好了

在文件中添加2行

今天又有个需求
需要在某个文本文件中的第一行后面添加两行内容
本想用前面的文章提到的方法
但是用vim
不知道怎样输入控制字符ESC(vim中敲入”ESC”键能从输入状态返回到正常状态)
于是作罢

再试了下古董编辑器ed
感觉不错,呵呵
又复习了下ed的用法
最后的代码是这样的

ed xxx < 1
a
aaaaaa
bbbbbb
.
w
q
END

这样就搞定了
这里”xxx”是我要编辑的文件名
而” aaaaaa
bbbbbb”则是我要在第一行后面添加的2行文本内容

在shell程序中用vim删除掉文件的最后一行

怎样用shell脚本删除掉文件的最后一行
网上大家多有讨论
方法也多多
比如用sed
用tail
用head
等等等等
但貌似都需要先把输出定向到一个临时文件
然后再删除原有文件
最后再把临时文件mv成原文件
后来找到一种方法
利用vim和重定向
直接在shell里实现
代码是这样的:

vim xxxx.txt 2>/dev/null < G
dd
:x!
END

如此而已
呵呵