<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Magki&#039;s Blog &#187; L.A.M.P</title>
	<atom:link href="http://www.magki.com/blog/category/linux-apache-mysql-php/feed" rel="self" type="application/rss+xml" />
	<link>http://www.magki.com/blog</link>
	<description>努力赚钱ing &#124; 承接各种企业站, 门户站, 商城等开发(PHP)</description>
	<lastBuildDate>Fri, 16 Dec 2011 03:26:33 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>windows 下 gVim 的中文utf8支持</title>
		<link>http://www.magki.com/blog/2010/12/fix-gvim-for-chinese-utf8-support-in-windows.html</link>
		<comments>http://www.magki.com/blog/2010/12/fix-gvim-for-chinese-utf8-support-in-windows.html#comments</comments>
		<pubDate>Sun, 26 Dec 2010 07:42:48 +0000</pubDate>
		<dc:creator>Magki</dc:creator>
				<category><![CDATA[L.A.M.P]]></category>

		<guid isPermaLink="false">http://www.magki.com/blog/?p=50</guid>
		<description><![CDATA[做开发养成的习惯，编码一贯用 utf8 格式。以前一直没事，最近在 windows 下装了 gVim 准备好好练练快捷键发现 gVim 打开 UTF8 编码的文件中文都是乱码。网上搜了一下修改了 vim 的配置文件 _vimrc 解决了这个小问题，把下面这段配置代码插入到 _vimrc 最前端就可以了。
if has("gui_running")
&#160;&#160;&#160;&#160;set encoding=utf-8
&#160;&#160;&#160;&#160;set fileencodings=utf-8,chinese,latin-1
&#160;&#160;&#160;&#160;if has("win32")
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;set fileencoding=chinese
&#160;&#160;&#160;&#160;else
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;set fileencoding=utf-8
&#160;&#160;&#160;&#160;endif
&#160;&#160;&#160;&#160;let &#038;termencoding=&#038;encoding
&#160;&#160;&#160;&#160;source $VIMRUNTIME/delmenu.vim
&#160;&#160;&#160;&#160;source $VIMRUNTIME/menu.vim
&#160;&#160;&#160;&#160;language messages zh_CN.utf-8
endif
]]></description>
			<content:encoded><![CDATA[<p>做开发养成的习惯，编码一贯用 utf8 格式。以前一直没事，最近在 windows 下装了 gVim 准备好好练练快捷键发现 gVim 打开 UTF8 编码的文件中文都是乱码。网上搜了一下修改了 vim 的配置文件 _vimrc 解决了这个小问题，把下面这段配置代码插入到 _vimrc 最前端就可以了。</p>
<p>if has("gui_running")<br />
&nbsp;&nbsp;&nbsp;&nbsp;set encoding=utf-8<br />
&nbsp;&nbsp;&nbsp;&nbsp;set fileencodings=utf-8,chinese,latin-1</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;if has("win32")<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;set fileencoding=chinese<br />
&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;set fileencoding=utf-8<br />
&nbsp;&nbsp;&nbsp;&nbsp;endif</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;let &#038;termencoding=&#038;encoding</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;source $VIMRUNTIME/delmenu.vim<br />
&nbsp;&nbsp;&nbsp;&nbsp;source $VIMRUNTIME/menu.vim</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;language messages zh_CN.utf-8<br />
endif</p>
]]></content:encoded>
			<wfw:commentRss>http://www.magki.com/blog/2010/12/fix-gvim-for-chinese-utf8-support-in-windows.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>还原 Archlinux 官方库里的 Firefox 和 Thunderbird 的图标</title>
		<link>http://www.magki.com/blog/2010/11/restore-firefox-and-thunderbird-icon-in-the-official-repository-of-archlinux.html</link>
		<comments>http://www.magki.com/blog/2010/11/restore-firefox-and-thunderbird-icon-in-the-official-repository-of-archlinux.html#comments</comments>
		<pubDate>Sun, 14 Nov 2010 03:57:20 +0000</pubDate>
		<dc:creator>Magki</dc:creator>
				<category><![CDATA[L.A.M.P]]></category>

		<guid isPermaLink="false">http://www.magki.com/blog/?p=49</guid>
		<description><![CDATA[根据 Mozilla 的政策，在诸如 Archlinux 等发行版的软件库中所包含的 Mozilla 软件的图标都不能使用官方图标。所以在 Archlinux 下通过软件库安装了 Firefox 和 Thunderbird 后会发现图标很丑……至少我是这么觉得的 :p
曾在网上找过别人的脚本来还原，但那个脚本里所用的图标来源失效了，遂自己下载了官方版 Firefox 和 Thunderbird 写个小脚本替换了下。分享出来，也供自己以后方便。点击下载并解压后，用 root 权限执行 brand.sh 就可以了，脚本很简单就4行复制命令，大家可以放心使用。
]]></description>
			<content:encoded><![CDATA[<p>根据 Mozilla 的政策，在诸如 Archlinux 等发行版的软件库中所包含的 Mozilla 软件的图标都不能使用官方图标。所以在 Archlinux 下通过软件库安装了 Firefox 和 Thunderbird 后会发现图标很丑……至少我是这么觉得的 :p</p>
<p>曾在网上找过别人的脚本来还原，但那个脚本里所用的图标来源失效了，遂自己下载了官方版 Firefox 和 Thunderbird 写个小脚本替换了下。分享出来，也供自己以后方便。<a href="http://www.magki.com/down/other/brand.zip">点击下载</a>并解压后，用 root 权限执行 brand.sh 就可以了，脚本很简单就4行复制命令，大家可以放心使用。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.magki.com/blog/2010/11/restore-firefox-and-thunderbird-icon-in-the-official-repository-of-archlinux.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>最近做的一个 nginx 配置的备份</title>
		<link>http://www.magki.com/blog/2010/10/a-simple-conf-file-of-nginx.html</link>
		<comments>http://www.magki.com/blog/2010/10/a-simple-conf-file-of-nginx.html#comments</comments>
		<pubDate>Mon, 18 Oct 2010 09:53:48 +0000</pubDate>
		<dc:creator>Magki</dc:creator>
				<category><![CDATA[L.A.M.P]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[配置]]></category>

		<guid isPermaLink="false">http://www.magki.com/blog/?p=48</guid>
		<description><![CDATA[#设置&#160;nginx&#160;所属用户
user&#160;http;
#设置&#160;nginx&#160;运行的进程数
worker_processes&#160;&#160;8;
worker_rlimit_nofile&#160;10240;
events&#160;{
&#160;&#160;&#160;&#160;#启用&#160;epoll&#160;优化网络
&#160;&#160;&#160;&#160;use&#160;epoll;
&#160;&#160;&#160;&#160;#设置最大连接数
&#160;&#160;&#160;&#160;worker_connections&#160;&#160;1024;
}
http&#160;{
&#160;&#160;&#160;&#160;include&#160;&#160;&#160;&#160;&#160;&#160;&#160;mime.types;
&#160;&#160;&#160;&#160;default_type&#160;&#160;application/octet-stream;
&#160;&#160;&#160;&#160;#启用&#160;sendfile&#160;函数输出
&#160;&#160;&#160;&#160;sendfile&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;on;
&#160;&#160;&#160;&#160;#设置超时时间
&#160;&#160;&#160;&#160;keepalive_timeout&#160;&#160;65;
&#160;&#160;&#160;&#160;#隐藏&#160;nginx&#160;版本号
&#160;&#160;&#160;&#160;server_tokens&#160;off;
&#160;&#160;&#160;&#160;#配置&#160;GZIP
&#160;&#160;&#160;&#160;gzip&#160;&#160;on;
&#160;&#160;&#160;&#160;gzip_min_length&#160;1k;
&#160;&#160;&#160;&#160;gzip_buffers&#160;4&#160;16k;
&#160;&#160;&#160;&#160;gzip_http_version&#160;1.1;
&#160;&#160;&#160;&#160;gzip_comp_level&#160;2;
&#160;&#160;&#160;&#160;gzip_types&#160;text/plain&#160;application/x-javascript&#160;text/css&#160;application/xml;
&#160;&#160;&#160;&#160;gzip_vary&#160;on;
&#160;&#160;&#160;&#160;#配置数据缓冲以及文件缓存
&#160;&#160;&#160;&#160;client_header_buffer_size&#160;4k;
&#160;&#160;&#160;&#160;client_max_body_size&#160;8m;
&#160;&#160;&#160;&#160;open_file_cache&#160;max=1024&#160;inactive=20s;
&#160;&#160;&#160;&#160;open_file_cache_valid&#160;30s;
&#160;&#160;&#160;&#160;open_file_cache_min_uses&#160;1;

&#160;&#160;&#160;&#160;#将默认站点指向到&#160;/usr/html
&#160;&#160;&#160;&#160;server&#160;{
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;listen&#160;&#160;&#160;&#160;&#160;&#160;80;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;server_name&#160;_;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;location&#160;/&#160;{
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;root&#160;&#160;&#160;&#160;&#160;/usr/html;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;index&#160;&#160;&#160;&#160;index.html&#160;index.htm;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}
&#160;&#160;&#160;&#160;}
&#160;&#160;&#160;&#160;#将服务器&#160;8899&#160;端口的所有访问指向到&#160;phpMyAdmin
&#160;&#160;&#160;&#160;server&#160;{
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;listen&#160;&#160;&#160;&#160;&#160;&#160;8899;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;server_name&#160;_;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;location&#160;/&#160;{
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;root&#160;&#160;&#160;&#160;&#160;/usr/html/phpmyadmin;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;index&#160;&#160;&#160;&#160;index.html&#160;index.htm&#160;index.php;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;#配置&#160;PHP&#160;解析
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;location&#160;~&#160;\.php$&#160;{
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;root&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;/usr/html/phpmyadmin;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;fastcgi_pass&#160;&#160;&#160;127.0.0.1:9000;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;fastcgi_index&#160;&#160;index.php;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;fastcgi_param&#160;&#160;SCRIPT_FILENAME&#160;&#160;$document_root$fastcgi_script_name;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;include&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;fastcgi_params;
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}
&#160;&#160;&#160;&#160;}
&#160;&#160;&#160;&#160;#调用其他虚拟空间独立配置文件
&#160;&#160;&#160;&#160;include&#160;/etc/nginx/conf/vhost/*.conf;
}
]]></description>
			<content:encoded><![CDATA[<p><span style="color: #808080;">#设置&nbsp;nginx&nbsp;所属用户</span><br />
user&nbsp;http;<br />
<span style="color: #808080;">#设置&nbsp;nginx&nbsp;运行的进程数</span><br />
worker_processes&nbsp;&nbsp;8;<br />
worker_rlimit_nofile&nbsp;10240;</p>
<p>events&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #808080;">#启用&nbsp;epoll&nbsp;优化网络</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;use&nbsp;epoll;<br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #808080;">#设置最大连接数</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;worker_connections&nbsp;&nbsp;1024;<br />
}</p>
<p>http&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;include&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mime.types;<br />
&nbsp;&nbsp;&nbsp;&nbsp;default_type&nbsp;&nbsp;application/octet-stream;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #808080;">#启用&nbsp;sendfile&nbsp;函数输出</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;sendfile&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;on;<br />
&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #808080;">#设置超时时间</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;keepalive_timeout&nbsp;&nbsp;65;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #808080;">#隐藏&nbsp;nginx&nbsp;版本号</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;server_tokens&nbsp;off;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #808080;">#配置&nbsp;GZIP</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;gzip&nbsp;&nbsp;on;<br />
&nbsp;&nbsp;&nbsp;&nbsp;gzip_min_length&nbsp;1k;<br />
&nbsp;&nbsp;&nbsp;&nbsp;gzip_buffers&nbsp;4&nbsp;16k;<br />
&nbsp;&nbsp;&nbsp;&nbsp;gzip_http_version&nbsp;1.1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;gzip_comp_level&nbsp;2;<br />
&nbsp;&nbsp;&nbsp;&nbsp;gzip_types&nbsp;text/plain&nbsp;application/x-javascript&nbsp;text/css&nbsp;application/xml;<br />
&nbsp;&nbsp;&nbsp;&nbsp;gzip_vary&nbsp;on;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #808080;">#配置数据缓冲以及文件缓存</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;client_header_buffer_size&nbsp;4k;<br />
&nbsp;&nbsp;&nbsp;&nbsp;client_max_body_size&nbsp;8m;<br />
&nbsp;&nbsp;&nbsp;&nbsp;open_file_cache&nbsp;max=1024&nbsp;inactive=20s;<br />
&nbsp;&nbsp;&nbsp;&nbsp;open_file_cache_valid&nbsp;30s;<br />
&nbsp;&nbsp;&nbsp;&nbsp;open_file_cache_min_uses&nbsp;1;</p>
<p><span id="more-48"></span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #808080;">#将默认站点指向到&nbsp;/usr/html</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;server&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;listen&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;80;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;server_name&nbsp;_;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;location&nbsp;/&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;root&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/usr/html;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;index&nbsp;&nbsp;&nbsp;&nbsp;index.html&nbsp;index.htm;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #808080;">#将服务器&nbsp;8899&nbsp;端口的所有访问指向到&nbsp;phpMyAdmin</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;server&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;listen&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8899;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;server_name&nbsp;_;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;location&nbsp;/&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;root&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/usr/html/phpmyadmin;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;index&nbsp;&nbsp;&nbsp;&nbsp;index.html&nbsp;index.htm&nbsp;index.php;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #808080;">#配置&nbsp;PHP&nbsp;解析</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;location&nbsp;~&nbsp;\.php$&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;root&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/usr/html/phpmyadmin;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_pass&nbsp;&nbsp;&nbsp;127.0.0.1:9000;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_index&nbsp;&nbsp;index.php;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_param&nbsp;&nbsp;SCRIPT_FILENAME&nbsp;&nbsp;$document_root$fastcgi_script_name;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;include&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_params;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #808080;">#调用其他虚拟空间独立配置文件</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;include&nbsp;/etc/nginx/conf/vhost/*.conf;<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://www.magki.com/blog/2010/10/a-simple-conf-file-of-nginx.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>近期配置 linux 服务器的一点备注</title>
		<link>http://www.magki.com/blog/2010/09/some-note-about-linux-server.html</link>
		<comments>http://www.magki.com/blog/2010/09/some-note-about-linux-server.html#comments</comments>
		<pubDate>Fri, 10 Sep 2010 01:10:17 +0000</pubDate>
		<dc:creator>Magki</dc:creator>
				<category><![CDATA[L.A.M.P]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[sed]]></category>
		<category><![CDATA[shell]]></category>

		<guid isPermaLink="false">http://www.magki.com/blog/?p=45</guid>
		<description><![CDATA[一、PHP.ini
某个客户我配置好以后反映无法上传文件，具体表现为 $_FILES['abc']['tmp_name'] 为空。判断是没有临时文件夹的权限造成的。几番检查最后发现原来是 php.ini 中的 open_basedir 没有把 PHP 默认存放临时文件用的 /tmp/ 文件夹添加进去，补上后问题解决。
二、sed 命令
在编写一个用于开设新站点的 shell 脚本时，碰到使用 sed 命令修改配置文件的命令行始终无法调用脚本变量的问题。最终在网上偶然看到原因，原来要用双引号。
sed -i "s/newdomain/${2}/g" /etc/nginx/conf/vhost/$1.conf
三、用于开设新站点用的 shell 脚本。（初学练手，待完善）


#!/bin/sh
if [ -z $1 ]; then
&#160;&#160;&#160;&#160;echo "no folder name!"
&#160;&#160;&#160;&#160;exit 0
fi
if [ -z $2 ]; then
&#160;&#160;&#160;&#160;echo "no domain!"
&#160;&#160;&#160;&#160;exit 0
fi
if [ -z $3 ]; then
&#160;&#160;&#160;&#160;echo "no ftp password!"
&#160;&#160;&#160;&#160;exit 0
fi
if [ -f /srv/http/$1 ]; then
&#160;&#160;&#160;&#160;echo "The $1 has [...]]]></description>
			<content:encoded><![CDATA[<p>一、PHP.ini</p>
<p>某个客户我配置好以后反映无法上传文件，具体表现为 $_FILES['abc']['tmp_name'] 为空。判断是没有临时文件夹的权限造成的。几番检查最后发现原来是 php.ini 中的 open_basedir 没有把 PHP 默认存放临时文件用的 /tmp/ 文件夹添加进去，补上后问题解决。</p>
<p>二、sed 命令</p>
<p>在编写一个用于开设新站点的 shell 脚本时，碰到使用 sed 命令修改配置文件的命令行始终无法调用脚本变量的问题。最终在网上偶然看到原因，原来要用双引号。<br />
<span style="color: #ff0000;">sed -i "s/newdomain/${2}/g" /etc/nginx/conf/vhost/$1.conf</span></p>
<p>三、用于开设新站点用的 shell 脚本。（初学练手，待完善）<br />
<span id="more-45"></span></p>
<blockquote><p>
#!/bin/sh</p>
<p>if [ -z $1 ]; then<br />
&nbsp;&nbsp;&nbsp;&nbsp;echo "no folder name!"<br />
&nbsp;&nbsp;&nbsp;&nbsp;exit 0<br />
fi</p>
<p>if [ -z $2 ]; then<br />
&nbsp;&nbsp;&nbsp;&nbsp;echo "no domain!"<br />
&nbsp;&nbsp;&nbsp;&nbsp;exit 0<br />
fi</p>
<p>if [ -z $3 ]; then<br />
&nbsp;&nbsp;&nbsp;&nbsp;echo "no ftp password!"<br />
&nbsp;&nbsp;&nbsp;&nbsp;exit 0<br />
fi</p>
<p>if [ -f /srv/http/$1 ]; then<br />
&nbsp;&nbsp;&nbsp;&nbsp;echo "The $1 has exists!"<br />
&nbsp;&nbsp;&nbsp;&nbsp;exit 0<br />
fi</p>
<p># for web<br />
mkdir /srv/http/$1<br />
chown -R http:http /srv/http/$1<br />
chmod -R 777 /srv/http/$1<br />
cp /etc/nginx/conf/vhost.conf /etc/nginx/conf/vhost/$1.conf<br />
sed -i "s/vhost/${1}/g" /etc/nginx/conf/vhost/$1.conf<br />
sed -i "s/newdomain/${2}/g" /etc/nginx/conf/vhost/$1.conf<br />
echo "<?php echo 'hello world!'; ?>" > /srv/http/$1/index.php</p>
<p># for ftp<br />
echo $1 >> /etc/vsftpd.txt<br />
echo $3 >> /etc/vsftpd.txt<br />
db_load -T -t hash -f /etc/vsftpd.txt /etc/vsftpd_login.db<br />
echo "local_root=/srv/http/$1" > /etc/vsftpd_user_conf/$1</p>
<p># restart all<br />
/etc/rc.d/nginx restart<br />
/etc/rc.d/vsftpd restart
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.magki.com/blog/2010/09/some-note-about-linux-server.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>解决 linux 下 JDBC 连接 MySQL 的问题</title>
		<link>http://www.magki.com/blog/2009/07/fix-jdbc-connect-mysql-in-linux.html</link>
		<comments>http://www.magki.com/blog/2009/07/fix-jdbc-connect-mysql-in-linux.html#comments</comments>
		<pubDate>Tue, 14 Jul 2009 02:05:52 +0000</pubDate>
		<dc:creator>Magki</dc:creator>
				<category><![CDATA[L.A.M.P]]></category>

		<guid isPermaLink="false">http://www.magki.com/blog/?p=27</guid>
		<description><![CDATA[一直以来在 archlinux 下直接从软件库里安装 LAMP 一套的时候总是出现 netbeans 里的数据库管理工具无法连接到本地 MySQL 服务器的问题。按网友们说的去 /etc/my.cnf 里注释掉 skip-networking 这一行也不行，于是乎以前一直都是在 archlinux 下憋屈的用 xampp 来作 PHP 开发环境（编译？我懒）
昨天在公司用的电脑上装上了 archlinux，想要装 PHP 开发环境的时候又碰到上述问题了，奶奶的，今天一定要解决你不可。驱狗搜索终于找到 ubuntu 中文论坛一帖子 10 楼的兄弟点出了问题所在。乖乖，原来是没有给 mysqld 服务开端口侦听。
解决办法就是除了如上面说的屏蔽 /etc/my.cnf 里的 skip-networking 外还要在 /etc/hosts.allow 加入MySQL 服务侦听 mysqld: 127.0.0.1
]]></description>
			<content:encoded><![CDATA[<p>一直以来在 archlinux 下直接从软件库里安装 LAMP 一套的时候总是出现 netbeans 里的数据库管理工具无法连接到本地 MySQL 服务器的问题。按网友们说的去 /etc/my.cnf 里注释掉 skip-networking 这一行也不行，于是乎以前一直都是在 archlinux 下憋屈的用 xampp 来作 PHP 开发环境（编译？我懒）</p>
<p>昨天在公司用的电脑上装上了 archlinux，想要装 PHP 开发环境的时候又碰到上述问题了，奶奶的，今天一定要解决你不可。驱狗搜索终于找到 <a href="http://forum.ubuntu.org.cn/viewtopic.php?f=70&amp;t=93335&amp;p=1338544">ubuntu 中文论坛一帖子</a> 10 楼的兄弟点出了问题所在。乖乖，原来是没有给 mysqld 服务开端口侦听。</p>
<p>解决办法就是除了如上面说的屏蔽 /etc/my.cnf 里的 <span style="color: #ff0000;">skip-networking</span> 外还要在 /etc/hosts.allow 加入MySQL 服务侦听 <span style="color: #ff0000;">mysqld: 127.0.0.1</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.magki.com/blog/2009/07/fix-jdbc-connect-mysql-in-linux.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LAMP 以及 PHP 开发环境搭建全记录之 Apache 篇</title>
		<link>http://www.magki.com/blog/2009/02/lamp-and-the-php-development-environment-builds-the-entire-record-about-apache.html</link>
		<comments>http://www.magki.com/blog/2009/02/lamp-and-the-php-development-environment-builds-the-entire-record-about-apache.html#comments</comments>
		<pubDate>Sun, 08 Feb 2009 11:15:10 +0000</pubDate>
		<dc:creator>Magki</dc:creator>
				<category><![CDATA[L.A.M.P]]></category>

		<guid isPermaLink="false">http://www.magki.com/blog/?p=14</guid>
		<description><![CDATA[Linux 系统安装好了，那么开始装 Apache 服务器，当然是通过编译方式安装了。我选用的是最新的 2.2.11 版，去 http://httpd.apache.org/download.cgi 下载到 httpd-2.2.11.tar.gz。解压到任意文件夹中备用，我这里解压出来的文件夹名是 httpd-2.2.11。按照我的规划，我准备将所有程序都安装在 /opt 文件夹中，恩恩。
打开终端输入：
sudo apt-get install gcc g++ cpp libncurses5-dev make libssl-dev sysv-rc-conf bison libbz2-dev libcurl3-openssl-dev libjpeg62-dev libpng12-dev libxpm-dev libt1-dev libfreetype6-dev libgmp3-dev  	libmcrypt-dev libmhash-dev libpspell-dev libsnmp-dev libmm-dev libtidy-dev  libxml2-dev
这条命令我是抄袭 cicisoso 的，只是把 libsnmp9-dev 改成 libsnmp-dev 而已，不然 ubuntu 8.10 下会出错。恩，顺利的话呢，很快就把编译安装所需要的文件都安装好了。恩接下来在终端中进入到 httpd-2.2.11 目录再依次输入如下代码：（不好意思，又是抄袭 cicisoso 的安装方法，稍微作了点小更改）

cd srclib/apr
sudo ./configure --prefix=/opt/apache/apr [...]]]></description>
			<content:encoded><![CDATA[<p>Linux 系统安装好了，那么开始装 Apache 服务器，当然是通过编译方式安装了。我选用的是最新的 2.2.11 版，去 http://httpd.apache.org/download.cgi 下载到 httpd-2.2.11.tar.gz。解压到任意文件夹中备用，我这里解压出来的文件夹名是 httpd-2.2.11。按照我的规划，我准备将所有程序都安装在 /opt 文件夹中，恩恩。</p>
<p>打开终端输入：</p>
<p style="padding-left: 30px;">sudo apt-get install gcc g++ cpp libncurses5-dev make libssl-dev sysv-rc-conf bison libbz2-dev libcurl3-openssl-dev libjpeg62-dev libpng12-dev libxpm-dev libt1-dev libfreetype6-dev libgmp3-dev  	libmcrypt-dev libmhash-dev libpspell-dev libsnmp-dev libmm-dev libtidy-dev  libxml2-dev</p>
<p>这条命令我是抄袭 <a href="http://www.phpweblog.net/cicisoso/articles/5677.html">cicisoso</a> 的，只是把 libsnmp9-dev 改成 libsnmp-dev 而已，不然 ubuntu 8.10 下会出错。恩，顺利的话呢，很快就把编译安装所需要的文件都安装好了。恩接下来在终端中进入到 httpd-2.2.11 目录再依次输入如下代码：<span style="color: #808080;">（不好意思，又是抄袭 <a href="http://www.phpweblog.net/cicisoso/articles/5677.html">cicisoso</a> 的安装方法，稍微作了点小更改）</span></p>
<p><span id="more-14"></span></p>
<p style="padding-left: 30px;">cd srclib/apr<br />
sudo ./configure --prefix=/opt/apache/apr &amp;&amp; make &amp;&amp; make install<br />
cd ../apr-util<br />
sudo ./configure --prefix=/opt/apache/apr-util --with-apr=/opt/apache/apr &amp;&amp; make &amp;&amp; make install<br />
cd ../..<br />
./configure --prefix=/opt/apache --enable-cache --enable-disk-cache --enable-mem-cache --enable-ssl --enable-http --enable-rewrite --enable-so --with-apr=/opt/apache/apr --with-apr-util=/opt/apache/apr-util &amp;&amp; make &amp;&amp; make install</p>
<p>漫长的等待后安装完毕，接下来是设置。先输入 sudo gedit /opt/apache/conf/httpd.conf 在编辑器里搜索 servername 把其后面的字符串改为 localhost:80，保存好退出吧。接下来就是试运行 apache 了，终端中输入 sudo /opt/apache/bin/apachectl start，如果这时打开浏览器访问 http://localhost 出现了 It Works! 字样那么就安装成功了。</p>
<p>我想自定义服务器根目录的路径，那么再次编辑 httpd.conf 搜索 DocumentRoot 和 Directory 把这两个后面的引号中间的内容更换成 /home/magki/htdocs 呵呵，这里比较容易进入。</p>
<p>我还想让 apache 随系统自启动，那么依次在终端输入：</p>
<p style="padding-left: 30px;">sudo cp /opt/apache/bin/apachectl /etc/init.d/apachectl<br />
sudo chmod +x apachectl<br />
sudo sysv-rc-conf</p>
<p>在界面中找到 apachectl 将其右边的 2，3，4，5 项都选中并按 Q 键退出，OK 了，大功告成。在这里感谢 <a href="http://www.phpweblog.net/cicisoso/articles/5677.html">cicisoso</a> 的安装攻略。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.magki.com/blog/2009/02/lamp-and-the-php-development-environment-builds-the-entire-record-about-apache.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>LAMP 以及 PHP 开发环境搭建全记录之 Linux 篇</title>
		<link>http://www.magki.com/blog/2009/02/lamp-and-the-php-development-environment-builds-the-entire-record-about-linux.html</link>
		<comments>http://www.magki.com/blog/2009/02/lamp-and-the-php-development-environment-builds-the-entire-record-about-linux.html#comments</comments>
		<pubDate>Fri, 06 Feb 2009 10:36:18 +0000</pubDate>
		<dc:creator>Magki</dc:creator>
				<category><![CDATA[L.A.M.P]]></category>

		<guid isPermaLink="false">http://www.magki.com/blog/?p=13</guid>
		<description><![CDATA[我作事情大多都是心血来潮人来疯之类的，比如现在正在忙活的 LAMP 以及 PHP 开发环境的搭建记录，呵呵，都是自己骨子里那点点完美主义思想作祟。恩，希望能好好把之前这半个星期所忙活的东西都好好写一下，以后自己还能当复习用。
首先是安装 linux 系统，为了方便，我选用了最近风头最劲的 ubuntu 版本为 8.10，如果纯粹作为开发所用的话，倒是推荐用 CentOS，目前最新版本是 5.2。这里我记录的是 ubuntu 的安装记录，其他 linux 系统应该大体差不多。哦～对了，我是装的 vista &#38; ubuntu 双系统。哈哈，这大概是我这个 linux 篇唯一能说道说道的事了吧。
我以前升级硬盘换下了个 80G SATA 硬盘，这回派上用场了，双硬盘来装双系统有很多好处的，呵呵。以前已经安装好了 vista，现在安装 ubuntu 我先把安装了 vista 的硬盘拔下来，单独接上要装 ubuntu 的硬盘，一路默认方式安装好 ubuntu（其实不用拔安装 vista 的硬盘，直接在 BIOS 里指定用哪块硬盘作引导就行了，无视我的狭隘完美主义思想吧，哈哈）启动进入到 ubuntu 里后插上安装有 vista 的硬盘（大家的应该都是 SATA 硬盘了吧）在终端里输入 sudo gedit /boot/grub/menu.lst 删除多余内容只保留关于 ubuntu 的启动项的代码并添加关于 vista 的启动项代码，我这里修改完后整个文件的内容如下：

＃启动界面默认选择的启动项，后面的数字以 0 为第一项类推
default 1
＃启动界面的等待时间
timeout 10
#关于 [...]]]></description>
			<content:encoded><![CDATA[<p>我作事情大多都是心血来潮人来疯之类的，比如现在正在忙活的 LAMP 以及 PHP 开发环境的搭建记录，呵呵，都是自己骨子里那点点完美主义思想作祟。恩，希望能好好把之前这半个星期所忙活的东西都好好写一下，以后自己还能当复习用。</p>
<p>首先是安装 linux 系统，为了方便，我选用了最近风头最劲的 ubuntu 版本为 8.10，如果纯粹作为开发所用的话，倒是推荐用 CentOS，目前最新版本是 5.2。这里我记录的是 ubuntu 的安装记录，其他 linux 系统应该大体差不多。哦～对了，我是装的 vista &amp; ubuntu 双系统。哈哈，这大概是我这个 linux 篇唯一能说道说道的事了吧。</p>
<p>我以前升级硬盘换下了个 80G SATA 硬盘，这回派上用场了，双硬盘来装双系统有很多好处的，呵呵。以前已经安装好了 vista，现在安装 ubuntu 我先把安装了 vista 的硬盘拔下来，单独接上要装 ubuntu 的硬盘，一路默认方式安装好 ubuntu<span style="color: #808080;">（其实不用拔安装 vista 的硬盘，直接在 BIOS 里指定用哪块硬盘作引导就行了，无视我的狭隘完美主义思想吧，哈哈）</span>启动进入到 ubuntu 里后插上安装有 vista 的硬盘<span style="color: #808080;">（大家的应该都是 SATA 硬盘了吧）</span>在终端里输入 sudo gedit /boot/grub/menu.lst 删除多余内容只保留关于 ubuntu 的启动项的代码并添加关于 vista 的启动项代码，我这里修改完后整个文件的内容如下：</p>
<p><span id="more-13"></span></p>
<p style="padding-left: 30px;"><span style="color: #808080;">＃启动界面默认选择的启动项，后面的数字以 0 为第一项类推</span><br />
default 1<br />
<span style="color: #808080;">＃启动界面的等待时间</span><br />
timeout 10<br />
<span style="color: #808080;">#关于 Vista 的启动项代码 title 后的字符串可以换成你喜欢的，其他的不要动 </span><br />
title Microsoft Windows Vista<br />
acpi<br />
fallback 1<br />
find --set-root /bootmgr<br />
chainloader /bootmgr<br />
<span style="color: #808080;">#关于 Ubuntu 的启动项代码，这里的内容根据你所安装的 Ubuntu 版本不同而不同<br />
#不过反正是用 menu.lst 文件里之前的内容所保留下来的，不用太在意我这里所写的</span><br />
title Ubuntu 8.10, kernel 2.6.27-11-generic<br />
root (hd1,0)<br />
uuid 18dece04-f62a-4825-857a-3d639443cb6d<br />
kernel /vmlinuz-2.6.27-11-generic root=UUID=929ca1df-30d7-43a6-8b24-4a959644ee5f ro noapic locale=zh_CN quiet splash<br />
initrd /initrd.img-2.6.27-11-generic<br />
quiet</p>
<p>不要直接保存，用另存为的方式保存到 vista 所在硬盘的系统分区根目录下，这样启动电脑后就可以自由选择进入哪个系统了。恩，我这个方法适用于 vista 要是 vistaload 2.1.2 激活方式并且用其所在硬盘做主引导，如果要 ubuntu 所在硬盘做主引导就把上面的 root(hd1,0) 移动到 vista 启动项代码的 title 下面。</p>
<p>嘿嘿，这样双系统就安装好拉，双硬盘装双系统有什么好处呢？就是随便我拆掉哪个硬盘都不会影响另一个硬盘的系统，可以非常的自由恢复成任何一种单系统，咔咔。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.magki.com/blog/2009/02/lamp-and-the-php-development-environment-builds-the-entire-record-about-linux.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Ubuntu 下配置 LAMP 环境</title>
		<link>http://www.magki.com/blog/2009/01/setup-lamp-in-ubuntu-system.html</link>
		<comments>http://www.magki.com/blog/2009/01/setup-lamp-in-ubuntu-system.html#comments</comments>
		<pubDate>Sat, 24 Jan 2009 06:53:27 +0000</pubDate>
		<dc:creator>Magki</dc:creator>
				<category><![CDATA[L.A.M.P]]></category>
		<category><![CDATA[笔记]]></category>

		<guid isPermaLink="false">http://www.magki.com/blog/?p=7</guid>
		<description><![CDATA[曾经兴冲冲的在自己电脑上弄 XP + Ubuntu 双系统，经过多次反复查阅相关资料和重装 Ubuntu 终于稳定下来。当时找了很多关于 Ubuntu 下配置 LAMP 环境资料，几番总结才较为顺利的吧这东东搞定，不敢独享将经验稍稍整理一下贴出来，也备自己以后复习。值得一提的是，当初使用的 Ubuntu 版本是 7.0.4，如今 9.0.4 都在开发中了，呵呵，理论上应该各版本通用，如果不行就没辙咯。
一、安装 Apache2 + PHP5 + MySQL + phpmyadmin
这步其实很简单，在 Ubuntu 7.0.4 下只需要一条命令 sudo apt-get install apache2 libapache2-mod-php5 php5 php5-gd mysql-server php5-mysql phpmyadmin php5-cli php-pear
二、开启 mod_rewrite
首先使用命令 sudo a2enmod rewrite 启用 mod_rewrite。由于在 Ubuntu 下 Apache 默认配置不会读取 rewrite 规则也不访问 .htaccess，还需要使用命令 sudo gedit /etc/apache2/sites-available/default 打开配置文件将前两个 [...]]]></description>
			<content:encoded><![CDATA[<p>曾经兴冲冲的在自己电脑上弄 XP + Ubuntu 双系统，经过多次反复查阅相关资料和重装 Ubuntu 终于稳定下来。当时找了很多关于 Ubuntu 下配置 LAMP 环境资料，几番总结才较为顺利的吧这东东搞定，不敢独享将经验稍稍整理一下贴出来，也备自己以后复习。值得一提的是，当初使用的 Ubuntu 版本是 7.0.4，如今 9.0.4 都在开发中了，呵呵，理论上应该各版本通用，如果不行就没辙咯。</p>
<p><strong>一、安装 Apache2 + PHP5 + MySQL + phpmyadmin</strong></p>
<p>这步其实很简单，在 Ubuntu 7.0.4 下只需要一条命令 <font color="#ff0000">sudo apt-get install apache2 libapache2-mod-php5 php5 php5-gd mysql-server php5-mysql phpmyadmin php5-cli php-pear</font></p>
<p><strong>二、开启 mod_rewrite</strong></p>
<p>首先使用命令 <font color="#ff0000">sudo a2enmod rewrite</font> 启用 mod_rewrite。由于在 Ubuntu 下 Apache 默认配置不会读取 rewrite 规则也不访问 .htaccess，还需要使用命令 <font color="#ff0000">sudo gedit /etc/apache2/sites-available/default</font> 打开配置文件将前两个 <font color="#ff0000">AllowOverRide None</font> 改成 <font color="#ff0000">AllowOverRide All</font></p>
<p><span id="more-7"></span></p>
<p><strong>三、安装 Zend Optimizer 3.3.0</strong> (可选步骤)</p>
<p>到 <a href="http://downloads.phpchina.com/zend/optimizer/3.3.0/">phpchina.com</a> 下载 ZendOptimizer-3.3.0-linux-glibc21-i386.tar.gz 解压后，cd 到解压出来的文件夹里使用命令 <font color="#ff0000">sudo ./install.sh</font> 开始安装。一路按确定到第一个文本输入框这里是输入安装路径，一般不需要修改直接回车。第二个输入框是输入 php.ini 的路径，如果之前安装 PHP 没有修改过这里可以填 <font color="#ff0000">/etc/php5/apache2/</font>。接下来会询问是否使用 Apache 服务器点 Yes。第三个文本框出现，这里一般填入 <font color="#ff0000">/user/sbin/apache2ctl</font> 即可。接下来一路按回车到结束，最后一步会重启 Apache 服务，到此安装完毕。</p>
<p><strong>常用命令与位置</strong></p>
<p>sudo /etc/init.d/apache2 restart  (重启 apache)<br />
sudo a2enmod [mod 名]  (激活 apache 的 Mod)<br />
sudo apache2 -M  (查看已经加载的 Mod)<br />
sudo gedit /etc/php5/apache2/php.ini  (配置 php.ini)<br />
sudo gedit /etc/apache2/apache2.conf  (配置 apache2.conf)<br />
/var/www/  (主目录位置)<br />
/etc/apache2/sites-enabled  (虚拟主机配置文件目录)<br />
http://localhost/phpmyadmin/  (phpmyadmin)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.magki.com/blog/2009/01/setup-lamp-in-ubuntu-system.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL 的字段类型及长度</title>
		<link>http://www.magki.com/blog/2009/01/mysql-type-and-length-of-the-field.html</link>
		<comments>http://www.magki.com/blog/2009/01/mysql-type-and-length-of-the-field.html#comments</comments>
		<pubDate>Fri, 23 Jan 2009 08:28:19 +0000</pubDate>
		<dc:creator>Magki</dc:creator>
				<category><![CDATA[L.A.M.P]]></category>
		<category><![CDATA[笔记]]></category>

		<guid isPermaLink="false">http://www.magki.com/blog/?p=5</guid>
		<description><![CDATA[数值类型



列类型
需要的存储量


TINYINT
1 字节


SMALLINT
2 字节


MEDIUMINT
3 字节


INT
4 字节


INTEGER
4 字节


BIGINT
8 字节


FLOAT(X)
4 字节（如果 X &#60; = 24 或 8 如果 25 &#60; = X &#60; = 53）


FLOAT
4 字节


DOUBLE
8 字节


DOUBLE PRECISION
8 字节


REAL
8 字节


DECIMAL(M,D)
M 字节 （D+2 , 如果M &#60; D）


NUMERIC(M,D)
M 字节 （D+2 , 如果M &#60; D）




日期和时间类型



列类型
需要的存储量


DATE
3 字节


DATETIME
8 字节


TIMESTAMP
4 字节


TIME
3 字节


YEAR
1 字节




串类型



列类型
需要的存储量


CHAR(M)
M 字节，1 &#60;= M &#60;= 255


VARCHAR(M)
L+1 字节, 在此 L &#60;= M 和 [...]]]></description>
			<content:encoded><![CDATA[<h4>数值类型</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<th style="text-align: left">列类型</th>
<th style="text-align: left">需要的存储量</th>
</tr>
<tr>
<td>TINYINT</td>
<td>1 字节</td>
</tr>
<tr>
<td>SMALLINT</td>
<td>2 字节</td>
</tr>
<tr>
<td>MEDIUMINT</td>
<td>3 字节</td>
</tr>
<tr>
<td>INT</td>
<td>4 字节</td>
</tr>
<tr>
<td>INTEGER</td>
<td>4 字节</td>
</tr>
<tr>
<td>BIGINT</td>
<td>8 字节</td>
</tr>
<tr>
<td>FLOAT(X)</td>
<td>4 字节（如果 X &lt; = 24 或 8 如果 25 &lt; = X &lt; = 53）</td>
</tr>
<tr>
<td>FLOAT</td>
<td>4 字节</td>
</tr>
<tr>
<td>DOUBLE</td>
<td>8 字节</td>
</tr>
<tr>
<td>DOUBLE PRECISION</td>
<td>8 字节</td>
</tr>
<tr>
<td>REAL</td>
<td>8 字节</td>
</tr>
<tr>
<td>DECIMAL(M,D)</td>
<td>M 字节 （D+2 , 如果M &lt; D）</td>
</tr>
<tr>
<td>NUMERIC(M,D)</td>
<td>M 字节 （D+2 , 如果M &lt; D）</td>
</tr>
</tbody>
</table>
<p><span id="more-5"></span></p>
<h4>日期和时间类型</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<th style="text-align: left">列类型</th>
<th style="text-align: left">需要的存储量</th>
</tr>
<tr>
<td>DATE</td>
<td>3 字节</td>
</tr>
<tr>
<td>DATETIME</td>
<td>8 字节</td>
</tr>
<tr>
<td>TIMESTAMP</td>
<td>4 字节</td>
</tr>
<tr>
<td>TIME</td>
<td>3 字节</td>
</tr>
<tr>
<td>YEAR</td>
<td>1 字节</td>
</tr>
</tbody>
</table>
<h4></h4>
<h4>串类型</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<th style="text-align: left">列类型</th>
<th style="text-align: left">需要的存储量</th>
</tr>
<tr>
<td>CHAR(M)</td>
<td>M 字节，1 &lt;= M &lt;= 255</td>
</tr>
<tr>
<td>VARCHAR(M)</td>
<td>L+1 字节, 在此 L &lt;= M 和 1 &lt;= M &lt;= 255</td>
</tr>
<tr>
<td>TINYBLOB, TINYTEXT</td>
<td>L+1 字节, 在此 L &lt; 2 ^ 8</td>
</tr>
<tr>
<td>BLOB, TEXT</td>
<td>L+2 字节, 在此 L &lt; 2 ^ 16</td>
</tr>
<tr>
<td>MEDIUMBLOB, MEDIUMTEXT</td>
<td>L+3 字节, 在此 L &lt; 2 ^ 24</td>
</tr>
<tr>
<td>LONGBLOB, LONGTEXT</td>
<td>L+4 字节, 在此 L &lt; 2 ^ 32</td>
</tr>
<tr>
<td>ENUM('value1','value2',...)</td>
<td>1 或 2 个字节, 取决于枚举值的数目（最大值65535）</td>
</tr>
<tr>
<td>SET('value1','value2',...)</td>
<td>1，2，3，4或8个字节, 取决于集合成员的数量（最多64个成员）</td>
</tr>
</tbody>
</table>
<p><strong>附：MySQL 数据表类型说明 </strong></p>
<p><strong>1. MyISAM 表</strong> MyISAM 存储格式自版本3.23 以来是 MySQL 中的缺省类型，它有下列特点：<br />
■ 如果操作系统自身允许更大的文件，那么文件比 ISAM 存储方法的大。<br />
■ 数据以低字节优先的机器独立格式存储。这表示可将表从一种机器拷贝到另一种机器，即使它们的体系结构不同也可以拷贝。<br />
■ 数值索引值占的存储空间较少，因为它们是按高字节优先存储的。索引值在低位字节中变化很快，因此高位字节更容易比较。<br />
■ AUTO_INCREMENT 处理比 ISAM 的表更好。<br />
■ 减少了几个索引限制。例如，可对含 NULL 值的列进行索引，还可以对 BLOB 和 TEXT 类型的列进行索引。<br />
■ 为了改善表的完整性检查，每个表都具有一个标志，在 myisamchk 对表进行过检查后，设置该标志。可利用 myisamchk - fast 跳过对自前次检查以来尚未被修改过表的检查，这样使此管理任务更快。表中还有一个指示表是否正常关闭的标志。如果服务器关闭不正常，或机器崩溃，此标志可用来检测出服务器起动时需要检查的表。</p>
<p><strong>2.  ISAM 表</strong> ISAM 存储格式是 MySQL3.23 所用的最旧的格式，但当前仍然可用。通常，相对于 ISAM 表来说，宁可使用 MyISAM 表，因为它们的限制较少。对 ISAM 表的支持随着此存储格式被 MyISAM 表格式所支持很有可能会逐渐消失。</p>
<p><strong>3.  HEAP 表</strong> HEAP 存储格式建立利用定长行的内存中的表，这使表运行得非常快。在服务器停止时，它们将会消失。在这种意义上，这些表是临时的。但是，与用 CREATE TEMPORARY TABLE 所创建的临时表相比，HEAP 表是其他客户机可见的。HEAP 表有几个限制，这些限制对 MyISAM 或 ISAM 表没有，如下所示：<br />
■ 索引仅用于“=”和“&lt; = &gt;”比较。<br />
■ 索引列中不能有 NULL 值。<br />
■ 不能使用 BLOB 和 TEXT 列。<br />
■ 不能使用 AUTO_INCREMENT 列。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.magki.com/blog/2009/01/mysql-type-and-length-of-the-field.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

