MySQL与C/C++接口应用学习
---- 在数据库的应用开发中,常常会遇到性能和代价的之间矛盾。以作者在开发股市行
情查询和交易系统中遇到的问题为例,要在实时记录1000多只股票每分钟更新一次的行
情数据的同时,响应大量并发用户的数据查询请求。考虑到性价比和易维护性,系统又
要求在基于PC服务器,Windows NT平台的软硬件环境下实现。开始,我们采用了MS SQL
Server 6.5 作为数据库系统,用Visual C++ 6.0开发了访问数据库的前端,应用ODBC
数据接口,在进行了大量的数据库配置和程序优化后,发现仍不能满足性能要求。后采
用SQL Server的DB-Library接口,绕过了ODBC解释层,可以每秒更新行情数据30次,同
时支持20-30个左右的并发用户进行行情查询,基本满足要求(单台PC服务器,单PII3
50 CPU,内存128M,SCSI硬盘)。有没有可能进一步提高系统的性能和负载能力呢?经
过分析,数据库服务器是系统的瓶颈。当然,可以采用UNIX服务器+大型数据库的系统
平台,但其开发、运行、维护的费用比微机+Windows NT平台的费用高出数倍。我们在
其它一些系统的开发中,也经常遇到这样的矛盾。如何在微机平台上建立大容量、高效
率、易维护、高性价比的数据库系统呢?
---- 考察国内基于微机平台的数据库应用系统,典型的如网易的分布式邮件系统,采用
了FreeBSD+MySQL的平台,其容量、负载能力和响应速度都很优秀。作者查阅了MySQL的
相关文档,发现MySQL是GNU软件(即OpenSource自由软件)中非常优秀的数据库系统,
它完全符合SQL92 (Entry level)和 ODBC( level 0-2)规范,在符合POSIX规范的操
作系统上实现了非常高效的关系型数据库管理系统。根据MySQL提供的文档,它的数据操
作堪称所有数据库中最高效的,Benchmark如下表:
Reading 2000000 rows by index
Database Seconds
mysql 367
mysql_odbc 464
db2_odbc 1206
informix_odbc 121126
ms-sql_odbc 1634
oracle_odbc 20800
solid_odbc 877
sybase_odbc 17614
Inserting (350768) rows
Database Seconds
mysql 381
mysql_odbc 619
db2_odbc 3460
informix_odbc 2692
ms-sql_odbc 4012
oracle_odbc 11291
solid_odbc 1801
sybase_odbc 4802
(run on the same NT 4.0 machine)
---- 从MySQL的Benchmark中可以看到,MySQL的性能非常出众(当然,测试的MySQL系统
可能作了优化,被测数据可能是针对MySQL选择的),而且MySQL提供了对
相关文档:
Keil C里用到了unsigned long长整型变量,编译时都能通过,但运行时老是溢出,同伙百度到了此贴,解决了问题,于是转帖于此:
今天调试一个乘法,出了点问题,先看代码示意:
void test(void)
{
unsigned long mid1,mid2,mid3;
mid1 ......
兰大论坛上的一个帖子~~
学东西,往往实例才是最让人感兴趣的,老是学基础理论,不动手,感觉没有成就感,呵呵。
下面先来一个实例。我们通过创建两个线程来实现对一个数的递加。
或许这个实例没有实际运用的价值,但是稍微改动一下,我们就可以用到其他地方去拉。
下面是我们的代码:
/*thread_example.c : c ......
一、安装系统环境
1、系统:centos5
2、测试在vm5.5
准备软件
lighttpd-1.4.18
下载地址
mysql-5.0.41
part1下载地址
part2下载地址
part3下载地址
php-5.2.3
下载地址
SupeSite/X-Space
part1下载地址
part2下载地址
part3下载地址
discuz
下载地址
二、搭建web服务器安装过程
1、mysql5安装
$ tar zx ......
2009年10月30日 星期五 22:53
1, 查看MySQL
服务器配置信息
mysql> show variables;
mysql> show variables;
2, 查看MySQL服务器运行的各种状态值
mysql> show global status;
mysql> show global status;
3, 慢查询
mysql> show variables like '%slow%';
+--------------- ......
网上很多写在windows下无法载入mysql扩展解决办法,但是在liunx下的就没几个,以下是在liunx下的解决办法
重装后php不会自动把mysql.so扩展加上去,要
sudo vim /etc/php5/apache2/conf.d/pdo.ini
加入extension=mysql.so就可以了
其实也可以在 /etc/php5/apache2/php.ini中加入
也可以在/etc/php5/apache2/conf. ......