存档
-
简单了解下MySQL的各种存储引擎
MySQL有多种存储引擎,每种存储引擎有各自的优缺点,同学们可以择优选择使用: MyISAM、InnoDB、MERGE、MEMORY(HEAP)、BDB(BerkeleyDB)、EXAMPLE、FEDERATED、ARCHIVE、CSV、BLACKHOLE。 MySQL支持数个存储引擎作为对不同表的类型的处理器。MySQL存储引擎包括处理事务安全表的引擎和处理非事务安全表的引擎: · MyISAM管理非事务表。它提供高速存储和检索,以及全文搜索能力。MyISAM在所有MySQL配置里被支持,它是默认的存储引擎,除非你配置MySQL默认使用另外一个引擎。 · MEMORY存储引擎提供“内存中”表。MERGE存储引擎允许集合将被处理同样的MyISAM表作为一个单独的表。就像MyISAM一样,MEMORY和MERGE存储引擎处理非事务表,这两个引擎也都被默认包含在MySQL中。 注释:MEMORY存储引擎正式地被确定为HEAP引擎。 · InnoDB和BDB存储引擎提供事务安全表。BDB被包含在为支持它的操作系统发布的MySQL-Max二进制分发版里。InnoDB也默认被包括在所 有MySQL 5.1二进制分发版里,你可以按照喜好通过配置MySQL来允许或禁止任一引擎。
2009年3月5日 | 归档于 web构架 -
vsftp 服务器虚拟用户配置(without mysql)
直接进入正题, 我比较习惯用vsftp, 设置相对简单些吧. 原文地址:http://www.hao32.com/webserver/279.html 系统环境是: CentOS 5.2 x86_64 FTP服务端:vsftpd 本文简单说明服务器虚拟用户配置情况 不编译安装了, 用最简洁的方式, 直接: # 通过yum直接在线装vsftpd(rpm版本) yum -y install vsftpd
2008年11月21日 | 归档于 web构架标签: vsftp -
解决checking for gnutls support in libcurl… no的问题
64位的系统给php添加curl的时候,cd /usr/local/src/php-5.2.6/ext/curl//usr/local/php-fcgi/bin/phpize./configure –with-php-config=/usr/local/php-fcgi/bin/php-config居然出现一下错误!checking for gnutls support in libcurl… nochecking for curl_easy_perform in -lcurl… noconfigure: error: There is something wrong. Please check config.log for more information. 我赶紧检查有没有装curl的develrpm -qa |grep curl全都有!查了半天资料, 还是找到结果了, 只要以下包都安装了, 就可以完美通过!curl-devel-7.15.5-2.el5e2fsprogs-devel-1.39-15.el5krb5-devel-1.6.1-25.el5libidn-devel-0.6.5-1.1openssl-devel-0.9.8b-10.el5至于每个包的作用, 自己去查吧! 呵呵
2008年11月15日 | 归档于 web构架 -
解决/usr/bin/ld: cannot find -lmysqlclient错误
类似/usr/bin/ld: cannot find -xxxx的错误有很多, 首先我们可以最简单的判断一下: 这类情况一般是由于缺乏某某库文件, 又或者可能是由于已存在的库问题版本不对造成的 一般都是解决的办法就是安装缺乏的devel包就可以解决, 当然还有其他的未知因素, 我们看一个实例: 我在一台装centos5.2 x86_64的系统上配置php环境, 提示这个错误 “/usr/bin/ld: cannot find -lmysqlclient” 于是我安装了 # yum -y install mysql-devel 结果提示依旧, 我根据提示查看config.log /usr/bin/ld: skipping incompatible /usr/local/mysql/lib/libmysqlclient.so when searching for -lmysqlclient /usr/bin/ld: skipping incompatible /usr/local/mysql/lib/libmysqlclient.a when searching for -lmysqlclient /usr/bin/ld: cannot find -lmysqlclient 她还是去找/usr/local/mysql/lib/libmysqlclient.so, 我来把这个错的换成对了, 刚才装了mysql-devel, 那么在/usr/lib64下就多了一个mysql的目录 # cd /usr/local/mysql# mv lib [...]
2008年10月28日 | 归档于 web构架标签: lmysqlclient -
mysqladmin: 用于管理MySQL服务器的客户端
目前mysql可以说是大行其道, 而mysqladmin作为管理MySQL服务器的客户端, 使用他来管理mysql, 以及观测mysql的状态, 显得尤为有用, 本文就详述mysqladmin的使用方法 mysqladmin:用于管理MySQL服务器的客户端 mysqladmin是一个执行管理操作的客户程序。可以用它来检查服务器的配置和当前的状态,创建并删除数据库等等。 这样调用mysqladmin:shell> mysqladmin [options] command [command-options] [command [command-options]] … mysqladmin支持下面的命令: · create db_name 创建一个名为db_name的新数据库。 · debug 告诉服务器向错误日志写入调试信息。 · drop db_name 删除名为db_nam的数据库和所有表。 · extended-status 显示服务器状态变量及其值。 · flush-hosts 刷新主机缓存中的所有信息。 · flush-logs 刷新所有日志。 · flush-privileges 重载授权表(类似reload)。 · flush-status 清除状态变量。 · flush-tables 刷新所有表。 · flush-threads 刷新线程缓存。 · kill id,id,… 杀掉服务器线程。 · old-password [...]
-
my.cnf优化
转载一篇比较通用的mysql配置优化的文章原文地址:http://blog.chinaunix.net/u1/51067/showart_1149584.html 做freeradius认证,折腾mysql,简单记录下————————————–对于单台运行的WEB服务器,建议加上:skip-lockingskip-name-resolveskip-networking在PHP链接数据库时使用”LOCALHOST”.这样MySQL 客户端库将覆盖之并尝试连接到本地套接字.(我们可以从PHP.INI中代码:; Default socket name for local MySQL connects.If empty, uses the built-in; MySQL defaults.mysql.default_socket = /tmp/mysql.sock 看出 默认情况下 UNIX 将访问/tmp/mysql.sock) * 以下是部分选项解释: my.cnf默认是不存在的.你可以在/usr/local/share/mysql/下看到: # my-huge.cnf# my-innodb-heavy-4G.cnf# my-large.cnf# my-medium.cnf# my-small.cnf等文件.将其中合适你机器配置的文件拷贝到/etc/my.cnf或mysql data目录/my.cnf(/var/db/mysql)下或~/.my.cnf.文件内都有详细的说明比如我是在freebsd下用ports装的,copy其中一个文件到 /usr/local/etc 这个目录下即可————————————–[mysqld]port = 3306serverid = 1socket = /tmp/mysql.sockskip-locking# 避免MySQL的外部锁定,减少出错几率增强稳定性。skip-name-resolve禁止MySQL对外部连接进行DNS解析,使用这一选项可以消除MySQL进行DNS解析的时间。但需要注意,如果开启该选项,则所有远程主机连接授权都要使用IP地址方式,否则MySQL将无法正常处理连接请求!back_log = 384指定MySQL可能的连接数量。当MySQL主线程在很短的时间内接收到非常多的连接请求,该参数生效,主线程花费很短的时间检查连接并且启动一个新线程。back_log参数的值指出在MySQL暂时停止响应新请求之前的短时间内多少个请求可以被存在堆栈中。 如果系统在一个短时间内有很多连接,则需要增大该参数的值,该参数值指定到来的TCP/IP连接的侦听队列的大小。不同的操作系统在这个队列大小上有它自 己的限制。试图设定back_log高于你的操作系统的限制将是无效的。默认值为50。对于Linux系统推荐设置为小于512的整数。key_buffer_size = 256M# key_buffer_size指定用于索引的缓冲区大小,增加它可得到更好的索引处理性能。对于内存在4GB左右的服务器该参数可设置为256M或384M。注意:该参数值设置的过大反而会是服务器整体效率降低!max_allowed_packet = 4Mthread_stack = 256Ktable_cache = 128Ksort_buffer_size [...]
2008年10月6日 | 归档于 web构架 -
http状态码一览表
http状态码一览表参考,中英对照 1**:请求收到,继续处理 2**:操作成功收到,分析、接受 3**:完成此请求必须进一步处理 4**:请求包含一个错误语法或不能完成 5**:服务器执行一个完全有效请求失败 100——客户必须继续发出请求 101——客户要求服务器根据请求转换HTTP协议版本 200——交易成功 201——提示知道新文件的URL 202——接受和处理、但处理未完成 203——返回信息不确定或不完整 204——请求收到,但返回信息为空 205——服务器完成了请求,用户代理必须复位当前已经浏览过的文件 206——服务器已经完成了部分用户的GET请求 300——请求的资源可在多处得到 301——删除请求数据 302——在其他地址发现了请求数据 303——建议客户访问其他URL或访问方式 304——客户端已经执行了GET,但文件未变化 305——请求的资源必须从服务器指定的地址得到 306——前一版本HTTP中使用的代码,现行版本中不再使用 307——申明请求的资源临时性删除 400——错误请求,如语法错误 401——请求授权失败 402——保留有效ChargeTo头响应 403——请求不允许 404——没有发现文件、查询或URl [...]
2008年9月25日 | 归档于 web构架 -
sysbench 的安装和做性能测试
本文系转载 原文作者:叶金荣 原文地址:http://imysql.cn/node/312 sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。关于这个项目的详细介绍请看:http://sysbench.sourceforge.net。 它主要包括以下几种方式的测试: 1、cpu性能 2、磁盘io性能 3、调度程序性能 4、内存分配及传输速度 5、POSIX线程性能 6、数据库性能(OLTP基准测试) 目前sysbench主要支持 MySQL,pgsql,oracle 这3种数据库。 一、安装 首先,在 http://sourceforge.net/projects/sysbench 下载源码包。 接下来,按照以下步骤安装: tar zxf sysbench-0.4.8.tar.gz cd sysbench-0.4.8 ./configure && make && make install strip /usr/local/bin/sysbench 以上方法适用于 MySQL 安装在标准默认目录下的情况,如果 MySQL 并不是安装在标准目录下的话,那么就需要自己指定 MySQL 的路径了。比如我的 MySQL 喜欢自己安装在 /usr/local/mysql 下,则按照以下方法编译: /configure –with-mysql-includes=/usr/local/mysql/include –with-mysql-libs=/usr/local/mysql/lib && make && make install 当然了,用上面的参数编译的话,就要确保你的 MySQL lib目录下有对应的 so [...]
2008年9月12日 | 归档于 web构架标签: sysbench -
解决 vsftpd 日志时间问题
最近发现 vsftpd 的日志记录 vsftpd.log 里显示的文件修改时间与实际的系统时间不一致,一般都差了8个小时。搜索了一下,因为默认情况下, vsftpd 使用的是 GMT 标准时间,而不是 Local Time 。修改也很简单: # 修改vsftpd 的配置文件 vsftpd.conf # 不一定是这个路径 vi /etc/vsftpd/vsftpd.conf 在配置文件里加入一行: use_localtime=YES 保存之后重启 vsftpd 即可。 如果是用 xinetd 的方式来启动,要注意把配置文件中的listen参数值改为NO,否则 vsftpd 重启之后问题依旧。
2008年8月29日 | 归档于 web构架标签: vsftp -
High Performance PHP – Installing eAccelerator on FreeBSD
eAccelerator is a PHP caching system, which caches frequently used portions of PHP files to RAM to increase performance. This is especially great on high traffic websites such as forums. Performance gains of up to 1000% have been seen with eAccelerator. The following tutorial is how to install eAccelerator on FreeBSD using ports. Using ports, [...]
2008年8月17日 | 归档于 web构架