不要使用一些mysql特有的tip来写查询
http://immike.net/blog/2007/04/09/how-not-to-optimize-a-mysql-query/
这篇文章建议:
(1)不要使用一些mysql的tip,如:SQL_SMALL_RESULT, HIGH/LOW_PRIORITY, and INSERT DELAYED,STRAIGHT_JOIN,除非没有其他方法,因为这样失去了SQL的可移植性
(2)适当对表进行索引
(3)避免对不必要数据的查询
(4)处理最慢的10个查询
(5)更加好的理解SQL
相关文档:
本次安装的系统平台为redhat 5
一、使用RPM包进行安装
首先可以从安装光盘中或者到mysql的网站上下载对应版本的rpm包如下:
MySQL-server-community-5.1.38-0.rhel5.i386.rpm
MySQL-client-community-5.1.38-0.rhel5.i386.rpm
接着我们可以使用rpm命令进行安装:
rpm -ivh MySQL ......
看到不少用户反映转换完以后是乱码的情况,出现这种现象的主要原因是这类用户使用的都是mysql4.1以上的版本.下面作一个说明,希望出现这个问题的朋友都能耐心的把这个文档看完!!!
MySQL 4.1开始,对多语言的支持有了很大变化 (这导致了问题的出现)。尽管大部分的地方 (包括个人使用和主机提供商),MySQL 3、4.0 仍然占主导地 ......
问题是这样的:
一张test的表,字符集采用的latin1。
select to_id from test where to_id='cn象_王';
+---------------+
| to_id |
+---------------+
| cn陶_陶 |
| cn象_王 |
+---------------+
2 rows in set (0.00 sec)
取cn象_王的数据,居然把cn陶_陶的数据也取回来了。
这显然是不允许的。
......
在FC8中默认安装的有mysql,没有的话可以很方便的安装下。
默认的mysql的include文件目录在/usr/include/mysql
默认的mysql的lib文件夹在/usr/lib/mysql
这两个目录在我们编译时候需要到。
我的测试用的C代码为:
#include <stdio.h>
#include <stdlib.h>
#include <mysql.h>
#define CONN_HOST ......