April 1, 2010
使用Nginx的proxy_cache缓存功能取代Squid[转载]
"\u003cp\u003e[文章作者:张宴 本文版本:v1.2 最后修改:2009.01.12 转载请注明原文链接: \u003ca href=\"http://blog.s135.com/nginx_cache/\"\u003ehttp://blog.s135.com/nginx_cache/\u003c/a\u003e]\u003c/p\u003e\n\u003cp\u003eNginx从0.7.48版本开始,支持了类似Squid的缓存功能。这个缓存是把URL及相关组合当作Key,用md5编码哈希后保存在硬盘上,所以 它可以支持任意URL链接,同时也支持404/301/302这样的非200状态码。虽然目前官方的Nginx Web缓存服务只能为指定URL或状态码设置过期时间,不支持类似Squid的PURGE指令,手动清除指定缓存页面,但是,通过一个第三方的Nginx 模块,可以清除指定URL的缓存。\u003c/p\u003e\n\u003cp\u003eNginx的Web缓存服务主要由proxy_cache相关指令集和fastcgi_cache 相关指令集构成,前者用于反向代理时,对后端内容源服务器进行缓存,后者主要用于对FastCGI的动态程序进行缓存。两者的功能基本上一样。\u003c/p\u003e\n\u003cp\u003e最新的Nginx 0.8.32版本,proxy_cache和fastcgi_cache已经比较完善,加上第三方的ngx_cache_purge模块(用于清除指定 URL的缓存), …\u003c/p\u003e"
April 1, 2010
《Squid中文权威手册》
"\u003cp\u003eSquid是一个缓存Internet数据的高性能代理服务器软件。当一个用户想要访问一个网页或下载一个文件时,会首先向Squid发出访问请求, 由Squid代替其进行网页或文件下载,Squid在把该网页或文件传给用户的同时会在本机保留一个缓存备份。当别的用户访问同样的网页时,Squid会 把保存的网页备份立即传给用户,使用户觉得速度相当快,同时也降低了后端数据来源Web服务器的压力。Squid可以代理HTTP、FTP、 GOPHER、SSL和WAIS协议,暂不能代理POP3、NNTP等协议。Squid可以工作在很多操作系统中,如AIX、Digital、Unix、 FreeBSD、HP-UX、Irix、Linux、NetBSD、Nextstep、SCO、Solaris、OS/2等。\u003c/p\u003e\n\u003cp\u003e目前 Squid已经在新浪、搜狐、网易、腾讯等各大门户网站广泛使用,成为必不可少的服务器软件之一。\u003c/p\u003e\n\u003cp\u003e《Squid中文权威手册》由 Squid创始人 Duane Wessels 所著的英文版《Squid: The Definitive Guide》翻译而来,其译者曾在新浪、网易工作过。\u003c/p\u003e\n\u003cp\u003e在线版: …\u003c/p\u003e"
March 31, 2010
apache下启用二级域名泛解析,实现博客功能
"\u003cp\u003ehttpd_vhosts.conf文件内容\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eDocumentRoot “d:/site/papake.cn”\nDirectoryIndex index.htm index.php\u003c/p\u003e\n\u003cp\u003eOptions Indexes MultiViews\nAllowOverride None\norder allow,deny\nAllow from all\nOptions FollowSymLinks Includes\u003c/p\u003e\n\u003cp\u003eRewriteEngine on\nRewriteLog logs/re.log\nRewriteLogLevel 1\nRewriteCond %{HTTP_HOST} ^[a-zA-Z0-9-]+.papake.cn$\nRewriteCond %{HTTP_HOST} !^(www).papake.cn$\nRewriteRule ^/?$ /%{HTTP_HOST} [NC]\nRewriteRule ^/([a-zA-Z0-9-]+).papake.cn/?$ \u003ca href=\"http://www.papake.cn/$1\"\u003ehttp://www.papake.cn/$1\u003c/a\u003e [P,L]\u003c/p\u003e\n\u003cp\u003eRewriteLog …\u003c/p\u003e\u003c/blockquote\u003e"
March 27, 2010
PHP安全配置详解
"\u003cp\u003ePHP勿庸置疑是非常强大的服务器端脚本语言,但是强大的功能总是伴随着重大的危险, 在这章里,你将学习到使用PHP的安全模式来阻止一些PHP潜在的危险因素。\n【 安全模式 】\u003c/p\u003e\n\u003cp\u003ePHP的安全模式提供一个基本安全的共享环境,在一个有多个用户帐户存在的PHP开放的Web服务器上。当一个Web服务器上运行的PHP打开了安全模 式,那么一些函数将被完全的禁止,并且会限制一些可用的功能。\u003c/p\u003e\n\u003cp\u003e[ 使用安全模式来强制限制 ]\n在安全模式下,一些尝试访问文 件系统的函数功能将被限制。运行Web服务器用户ID,如果想要操作某个文件,则必须拥有该文件读取或者写入的访问权限,实现这个限制功能对于PHP来说 是没有问题的。\u003c/p\u003e\n\u003cp\u003e在 安全模式开启的时候,尝试读取或者写入一个本地文件的时候,PHP将检查当前访问用户是否是该目标文件的所有者。如 果不是所有者,则该操作会被禁止。(写 入权限:在较低级别的文件访问权限下,可能会允许读取或者写入系统操作系统的文件,通过PHP的安全模式实现了防止你操作 另外一个用户文件的操作。当然, 一个Web服务器可能能够访问一个具有全局写入权限的任意文件。)\u003c/p\u003e\n\u003cp\u003e当安全模式打开的时候,以下函数列 …\u003c/p\u003e"
March 26, 2010
PHP中echo和print的区别
"\u003cp\u003ePHP 和 HTML 最简单的交互是通过 print 和 echo 语句来实现的,在实际使用中, print 和 echo 两者的功能几 乎是完全一样。可以这么说,凡是有一个可以使用的地方,另一个也可以使用。但是,两者之间也还是一个非常重要的区别:在 echo 函数中,可以同时输出 多个字符串,而在 print 函数中则只可以同时输出一个字符串。同时,echo函数并不需要圆括号,所以echo函数更像是语句而不像是函数。\u003c/p\u003e\n\u003cp\u003eecho 和 print 都不是函数,而是语言结构,\u003cstrong\u003e所以圆括号都不是必需的\u003c/strong\u003e。\u003c/p\u003e\n\u003cp\u003eecho命令和print命令相同,没有区别 ;\necho函数和print函数有区别;\nprint()有返 回值,当其执行失败(比如断线)时返回flase;\nprintf()和sprintf()类似,均为格式化输出,不同的是前者输出到 标准输出,后者输出到变量。\u003c/p\u003e\n\u003cp\u003e他们的区别在于:\n(1) echo可以输出多个字符串,像下面这样:\necho ‘a’,’b’,’c’;\n如果你非要加上圆括号,注意写成echo (‘a’,’b’,’c’);是错误的,应该写成:\necho …\u003c/p\u003e"
March 26, 2010
windows下安装 Xdebug+WinCacheGrind
"\u003cp\u003e以PHP5.1.4,Windows平台为例(其它PHP版本,其它平台请参看官网文档):\n1. 在 \u003ca href=\"http://www.xdebug.org/download.php\"\u003ehttp://www.xdebug.org/download.php\u003c/a\u003e 下载适合自己php版本的php_xdebug- 2.0.1-5.1.2.dll【有附件提供下载,如果按照以下步骤完成后 phpinfo任无法显示xdebug,那么建议重新下载其他xdebug.dll文件试试 】;\n2. 将下载的xdebug.dll放到php\\ext目录里,可以重命名也可以不重命名,这里我没有重命名。\n3. 编辑php.ini,加入下面几行:\u003c/p\u003e\n\u003cp\u003eextension=php_xdebug-2.0.1-5.1.2.dll\u003c/p\u003e\n\u003cp\u003e;xdebug配置\n[Xdebug]\n;开启自动跟踪\nxdebug.auto_trace = On\n;开启异常跟踪\nxdebug.show_exception_trace = On\n;开启远程调试自动启动\nxdebug.remote_autostart = On\n;开启远程调试\nxdebug.remote_enable = On\n;收集变量\nxdebug.collect_vars = On\n; …\u003c/p\u003e"
March 26, 2010
启用Xdebug使用WinCacheGrind分析脚本执行时间
"\u003cp\u003e使用Xdebug调试和优化PHP程序系列教程之WinCacheGrind,教你如何利用Xdebug 配合WinCacheGrind工具来检测PHP代码的效率以及分析PHP代码。\u003c/p\u003e\n\u003cp\u003e另外还有一个结果分析展示工具webgrind。可参考: \u003ca href=\"http://blog.sina.com.cn/s/blog_635833b3010127q5.html\"\u003ehttp://blog.sina.com.cn/s/blog_635833b3010127q5.html\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e有时候代码没有明显的编写错误,没有显示任何错误信息(如 error、warning、notice等),但是这不表明代码就是正确无误的。有时候可能某段代码执行时间过长,占用内存过多以致于影响整个系统的效 率,我们没有办法直接看出来是哪部份代码出了问题。这时候我们希望把代码的每个阶段的运行情况都监控起来,写到日志文件中去,运行一段时间后再进行分析, 找到问题所在。\u003c/p\u003e\n\u003cp\u003e回忆一下,之前我们编辑php.ini文件\n加入\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003e[Xdebug]\u0026lt;br /\u0026gt; xdebug.profiler_enable=on\u0026lt;br /\u0026gt; xdebug.trace_output_dir=\u0026quot;I:\\Projects\\xdebug\u0026quot;\u0026lt;br …\u003c/code\u003e\u003c/p\u003e"
March 26, 2010
mysql显示SQL语句执行时间
"\u003cp\u003e查看 MySQL 語法 詳細執行時間 與 CPU/記憶體使用量: MySQL Query Profiler\u003c/p\u003e\n\u003cp\u003eMySQL 的 SQL 語法調整主要都是使用 \u003ca href=\"http://dev.mysql.com/doc/refman/5.0/en/explain.html\" title=\"MySQL :: MySQL 5.0 Reference Manual :: 12.3.2 EXPLAIN Syntax\"\u003eEXPLAIN\u003c/a\u003e , 但是這個並沒辦法知道詳細的 Ram(Memory)/CPU 等使用量.\u003c/p\u003e\n\u003cp\u003e於 MySQL 5.0.37 以上開始支援 MySQL Query Profiler, 可以查詢到此 SQL 會執行多少時間, 並看出 CPU/Memory 使用量, 執行過程中 System lock, Table lock 花多少時間等等.\u003c/p\u003e\n\u003cp\u003eMySQL Query Profile 詳細介紹可見: \u003ca href=\"http://dev.mysql.com/tech-resources/articles/using-new-query-profiler.html\" title=\"Using the New MySQL Query Profiler\"\u003eUsing the New MySQL Query Profiler\u003c/a\u003e (2007.04.05 發表)\u003c/p\u003e\n\u003cp\u003e效能分析主要分下述三種(轉載自上篇):\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eBottleneck analysis – focuses on answering the questions: What is my database server waiting on; what is a user connection waiting on; what is a piece of …\u003c/li\u003e\u003c/ul\u003e"
March 26, 2010
PHP中如何使用header发送头部信息
"\u003cp\u003e在照彭武兴先生的《PHP BIBLE》中所述,header可以送出Status标头,如\u003c/p\u003e\n\u003cp\u003e就可以让用户浏览器出现文件找不到的404错误,但是我试了这样是不行的。\u003c/p\u003e\n\u003cp\u003e后 来我到w3.org上查了http的相关资料,终于试出来了如何Header出状态代码(Status),与大家分享。\u003c/p\u003e\n\u003cp\u003e其实应该是这样 的:\u003c/p\u003e\n\u003cp\u003e第一部分为 HTTP协议的版本(HTTP-Version)\u003c/p\u003e\n\u003cp\u003e第二部分为状态代码(Status)\u003c/p\u003e\n\u003cp\u003e第三部分为原因短语 (Reason-Phrase)\u003c/p\u003e\n\u003cp\u003e三部分中间用一个空格分开,且中间不能有回车,第一部分和第二部分是必需的,第三部分则是给人看的,可 写可不写甚至乱写。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e还有,这一句的输出必须在Html文件的第一行。\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e下面我给出各代码所代表的意思(是从 w3.org上查到的,够权威了):\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e1xx: Informational – Request received, continuing process\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2xx: Success – The action was successfully received, understood,and accepted\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e3xx: Redirection …\u003c/p\u003e\u003c/li\u003e\u003c/ul\u003e"
March 23, 2010
把不带前缀的域名转向到www.域名的Apache 301转向配置样例
"\u003cp\u003e各种不同的域名地址对于搜索引擎的除重(deduplication)来说是一个负担,有没有”/”和首页的文件连接,一个域名首页就可以有6个地址:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://www.haohtml.com/\"\u003ewww.haohtml.com/\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003ehaohtml.com/\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://www.haohtml.com\"\u003ewww.haohtml.com\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003ehaohtml.com\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://www.haohtml.com/index.php\"\u003ewww.haohtml.com/index.php\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003ehaohtml.com/index.php\u003c/p\u003e\n\u003cp\u003e如果加上一些参数,比如用于来源跟踪等还会有更多无穷无尽的地址。\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://www.haohtml.com/?source=foobar\"\u003ewww.haohtml.com/?source=foobar\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e所以搜索引擎鼓励发布者 \u003ca href=\"http://www.googlechinawebmaster.com/2007/11/seourl.html\"\u003e把URL标准化\u003c/a\u003e(归一化)。首先就是域名的归一化,原先我的设置为: \u003ca href=\"https://www.haohtml.com\"\u003ewww.haohtml.com\u003c/a\u003e / haohtml.com为别名。现在改为haohtml.com 301转向到www.haohtml.com\u003c/p\u003e\n\u003cp\u003eServerName haohtml.com\u003c/p\u003e\n\u003cp\u003eRewriteEngine on\u003c/p\u003e\n\u003cp\u003eRewriteRule ^(.*)$ \u003ca href=\"http://www.haohtml.com\"\u003ehttp://www.haohtml.com\u003c/a\u003e$1 [R=301,L]\u003c/p\u003e\n\u003cp\u003e如果没有mod_rewrite也可以设置mod_alias:\u003c/p\u003e\n\u003cp\u003eRedirectMatch 301 …\u003c/p\u003e"
March 17, 2010
windows 2003自带的FTP的设置?
"\u003cp\u003ewindows 2003自带的FTP(iis里)如何设置?打开 \u003cstrong\u003eInternet信息服务(IIS)管理器\u003c/strong\u003e (如下图)\u003c/p\u003e\n\u003cp\u003e[\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/ms_ftp_1.gif\" alt=\"ms_ftp_1\"\u003e][1]\u003c/p\u003e\n\u003cp\u003e可以看到 \u003cstrong\u003eInternet信息服务(IIS)管理器\u003c/strong\u003e 中已经出现了 \u003cstrong\u003eFTP站点\u003c/strong\u003e 菜单(如下图)\u003c/p\u003e\n\u003cp\u003e[\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/ms_ftp_2.gif\" alt=\"ms_ftp_2\"\u003e][2]\u003c/p\u003e\n\u003cp\u003e单击 \u003cstrong\u003eFTP站点\u003c/strong\u003e ,右边呈现的是 相关数据和参数(如下图)\u003c/p\u003e\n\u003cp\u003e[\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/ms_ftp_31.gif\" alt=\"ms_ftp_3\"\u003e][3]\u003c/p\u003e\n\u003cp\u003e接着,我们来打开它的属性栏 ,右键单击它,单击\u003cstrong\u003e属性\u003c/strong\u003e(如下图)\u003c/p\u003e\n\u003cp\u003e[\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/ms_ftp_41.gif\" alt=\"ms_ftp_4\"\u003e][4]\u003c/p\u003e\n\u003cp\u003e选项卡 \u003cstrong\u003eFTP站点\u003c/strong\u003e 下,列出来相关参数,默认的FTP的TCP连接端口是21,这个一般不改它(如下图)\u003c/p\u003e\n\u003cp\u003e[\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/ms_ftp_5.gif\" alt=\"ms_ftp_5\"\u003e][5]\u003c/p\u003e\n\u003cp\u003e单击 \u003cstrong\u003e安全账户\u003c/strong\u003e 选项卡,下面可以勾选匿名,也可以添加用户账号,我们这里只是演示,所以不改它(如下图)\u003c/p\u003e\n\u003cp\u003e[\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/ms_ftp_6.gif\" alt=\"ms_ftp_6\"\u003e][6]\u003c/p\u003e\n\u003cp\u003e接下来,单击 \u003cstrong\u003e主目录\u003c/strong\u003e 设置修改我们这个ftp的指向访问目录,我们这里指向 F盘(如下图)\u003c/p\u003e\n\u003cp\u003e[\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/ms_ftp_7.gif\" alt=\"ms_ftp_7\"\u003e][7]\u003c/p\u003e\n\u003cp\u003e选择后,再单击\u003cstrong\u003e下一步(N)\u0026gt;\u003c/strong\u003e (如下图)\u003c/p\u003e\n\u003cp\u003e[\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/ms_ftp_8.gif\" alt=\"ms_ftp_8\"\u003e][8]\u003c/p\u003e\n\u003cp\u003e设置访问权限,读取 就是只能看里面内容,能下载,但不能上传;写入,就是可以看,下载,还有上传(如下图)\u003c/p\u003e\n\u003cp\u003e[\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/ms_ftp_9.gif\" alt=\"ms_ftp_9\"\u003e][9]\u003c/p\u003e\n\u003cp\u003e在你的电脑上打开FTP客户端软件,输入IP,您windows远程桌面的用户名和密码,就可以登录FTP了。 \u003c/p\u003e"
March 16, 2010
用show table satus查看数据库表的相关信息
"\u003cp\u003e显然,我之前那个数据库备份程序太菜鸟了。还用select count(*) 来判断数据库的记录集数,其实完全不用那么麻烦。有一个简单的MML语句今天被我无意间发 现,”SHOW TABLE STATUS FROM `dbname`”,执行后会生成一个记录集。\u003c/p\u003e\n\u003cp\u003e记录集包含下列字段:\u003c/p\u003e\n\u003cp\u003eName: \u003cstrong\u003enewdb\u003c/strong\u003e (表名)\nEngine: \u003cstrong\u003eMyISAM\u003c/strong\u003e (表引擎)\nVersion: \u003cstrong\u003e10\u003c/strong\u003e (版本)\nRow_format: \u003cstrong\u003eDynamic\u003c/strong\u003e (行格式)\u003c/p\u003e\n\u003cp\u003eRows: \u003cstrong\u003e56496\u003c/strong\u003e (表内总行数)\n对于其它存储引擎,比如InnoDB,本值是一个大约的数,与实际值相差可达40到50%。 在这些情况下,使用SELECT COUNT(*)来获得准确的数目。对于在INFORMATION_SCHEMA数 据库中的表,Rows值为NULL\u003c/p\u003e\n\u003cp\u003eAvg_row_length: \u003cstrong\u003e4749\u003c/strong\u003e (平均每行大小,这里是4.7K)\nData_length: \u003cstrong\u003e268352680\u003c/strong\u003e (该表总大小,单位字节)\nMax_data_length: \u003cstrong\u003e281474976710655\u003c/strong\u003e (该表可存储上限,这个值所有表都一样,换算出来是256TB,应该用不 …\u003c/p\u003e"
January 31, 2010
One Number:同时监测 Gmail, Reader, Wave 和 Voice 的 Chrome 扩展
"\u003cp\u003e我相信作为Google的忠实用户,各位的 \u003ca href=\"http://www.google.org.cn/tag/chrome\"\u003eChrome\u003c/a\u003e 上一定安装了若干的Google服务提醒扩展吧:比如 \u003ca href=\"http://www.google.org.cn/posts/sample-chrome-extensions.html\"\u003eGmail的\u003c/a\u003e, \u003ca href=\"http://www.google.com/url?sa=t\u0026amp;source=web\u0026amp;ct=res\u0026amp;cd=1\u0026amp;ved=0CAcQFjAA\u0026amp;url=https%3A%2F%2Fchrome.google.com%2Fextensions%2Fdetail%2Fapflmjolhbonpkbkooiamcnenbmbjcbf\u0026amp;ei=5u84S7S8Ic6HkQWW0N3eDw\u0026amp;usg=AFQjCNGvxsz0kHFIQ1oIrVyAT9MQvmQ5uQ\u0026amp;sig2=f41wiZ4yOqDG8k5fKfbcSw\"\u003eGoogle Reader的\u003c/a\u003e, \u003ca href=\"http://www.google.org.cn/posts/chrome-extension-google-wave-checker.html\"\u003eGoogle Wave的\u003c/a\u003e, \u003ca href=\"http://www.google.org.cn/posts/official-google-voice-chrome-extension.html\"\u003eGoogle Voice的\u003c/a\u003e。。。那么多图标堆在工具栏,看着就头大。。。\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"/wp-content/uploads/2010/01/one_number.jpg\"\u003e\u003cimg src=\"https://blogstatic.haohtml.com//uploads/2023/09/one_number.jpg\" alt=\"one_number\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://chrome.google.com/extensions/detail/cfkohgkpafhkpdcnfadadcibfboapggi\"\u003eOne Number\u003c/a\u003e 这个扩展正是为了解决这个问题而来,从此我们只需要一个图标就可以查看四个Google服务的未读信息数目了。安装这个扩展后,点击扩展图标跳转到Google输入Google账户用户名和密码即可启用。监视的服务列表,检查频度,未读数显示颜色等等也都可以在扩展的设置中自己设定,相当的方便。另外,One Number的 \u003ca href=\"http://www.google.org.cn/tag/gmail\"\u003eGmail\u003c/a\u003e 提醒也支持使用Google Apps的邮件监视。\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://chrome.google.com/extensions/detail/cfkohgkpafhkpdcnfadadcibfboapggi\"\u003e点击这里\u003c/a\u003e 进入One Number在官方Chrome扩展中心的页面,点击INSTALL安装。\u003c/p\u003e"
January 24, 2010
mysql中使用 MYSQLBINLOG 来恢复数据
"\u003cp\u003e今天在家里做了一下试验,终于搞明白了以前做复制的时候没有搞明白的问题。原来BINLOG就是一个记录SQL语句的过程,和普通的LOG一样。不过只是她是二进制存储,普通的是十进制存储罢了。\n1、配置文件里要写的东西:\n[mysqld]\nlog-bin=yueliangdao_binglog(名字可以改成自己的,如果不改名字的话,默认是以主机名字命名)重新启动MSYQL服务。\u003c/p\u003e\n\u003cp\u003e二进制文件里面的东西显示的就是执行所有语句的详细记录,当然一些语句不被记录在内,要了解详细的,见手册页。2、查看自己的BINLOG的名字是什么。\nshow binlog events;\u003c/p\u003e\n\u003ch3 id=\"query-result1-records\"\u003equery result(1 records)\u003c/h3\u003e\n\u003cp\u003eLog_name\u003c/p\u003e\n\u003cp\u003ePos\u003c/p\u003e\n\u003cp\u003eEvent_type\u003c/p\u003e\n\u003cp\u003eServer_id\u003c/p\u003e\n\u003cp\u003eEnd_log_pos\u003c/p\u003e\n\u003cp\u003eInfo\u003c/p\u003e\n\u003cp\u003eyueliangdao_binglog.000001\u003c/p\u003e\n\u003cp\u003e4\u003c/p\u003e\n\u003cp\u003eFormat_desc\u003c/p\u003e\n\u003cp\u003e1\u003c/p\u003e\n\u003cp\u003e106\u003c/p\u003e\n\u003cp\u003eServer ver: 5.1.22-rc-community-log, Binlog ver: 4\u003c/p\u003e\n\u003cp\u003e3、我做了几次操作后,她就记录了下来。\u003c/p\u003e\n\u003cp\u003e又一次 show binlog events 的结果。 …\u003c/p\u003e"
January 24, 2010
mysql优化数据库对象
"\u003cp\u003e\u003cstrong\u003e12.1优化表的数据类型\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e表需要使用何种数据类型,是需要根据应用来判断的。虽然应用设计的时候需要考虑字段的长度留有一定的冗余,但是不推荐让很多字段都留有大量的冗余,这样即浪费存储也浪费内存。\u003c/p\u003e\n\u003cp\u003e我们可以使用PROCEDUREANALYSE()对当前已有应用的表类型的判断,该函数可以对数据表中的列的数据类型提出优化建议,可以根据应用的实际情况酌情考虑是否实施优化。\u003c/p\u003e\n\u003cp\u003e语法:\u003c/p\u003e\n\u003cp\u003eSELECT * FROM tbl_name PROCEDURE ANALYSE();SELECT * FROM tbl_name PROCEDURE ANALYSE(16,256);\u003c/p\u003e\n\u003cp\u003e输出的每一列信息都会对数据表中的列的数据类型提出优化建议。第二个例子告诉PROCEDUREANALYSE()不要为那些包含的值多于16个或者256字节的ENUM类型提出建议。如果没有这样的限制,输出信息可能很长;ENUM定义通常很难阅读。\u003c/p\u003e\n\u003cp\u003e在对字段类型进行优化时,可以根据统计信息并结合应用的实际情况对其进行优化。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e12.2通过拆分,提高表的访问效率这里我们所说的拆分,主要是针对Myisam类型的表,拆分的方法可以分成两种情况:\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1. 纵 …\u003c/strong\u003e\u003c/p\u003e"