构建MySQL服务器
MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司, 目前属于Oracle公司,MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
对应目前主流的LAMP架构来说,Mysql更是得到各位IT运维、DBA的青睐,目前mysql已被orcacle收购,不过好消息是原来mysql创始人已独立出来自己重新开发了一个MariaDB,而且使用的人数越来越多。而且MariaDB兼容mysql所有的功能和相关参数。
Mysql常用的两大引擎有MyISAM和innoDB,那他们有什么明显的区别呢,什么场合使用什么引擎呢?
MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但不提供事务支持,如果执行大量的SELECT操作,MyISAM是更好的选择,支持表锁。
InnoDB提供事务支持事务,外部键等高级数据库功能,执行大量的INSERT或UPDATE,出于性能方面的考虑,应该使用InnoDB表,支持行锁。
MySQL安装方式有两种,一种是yum/rpm安装,另外一种是tar源码安装。
Yum 安装方法很简单,执行命令如下即可: yum install –y mysql-server mysql-devel mysql
源码安装MySQL方式:
[root@localhost src]# cd /usr/local/src/
[root@localhost src]# wget http://cdn.mysql.com/archives/mysql-5.1/mysql-5.1.63.tar.gz
[root@localhost mysql-5.1.63]# ./configure --prefix=/usr/local/mysql --enable-assembler
[root@localhost mysql-5.1.63]# make
[root@localhost mysql-5.1.63]# make install
在./configure时出现错误:error: No curses/termcap library found的解决办法
yum -y install ncurses-devel
问题现象:
../depcomp: line 512: exec: g++: not found
make[2]: *** [my_new.o] Error 127
make[2]: Leaving directory `/usr/local/src/mysql-5.0.41/mysys‘
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/mysql-5.0.41‘
make: *** [all] Error 2
解决办法:
安装gcc-c++
安装完成之后再次编译make
可能会出现如下错误:
../include/my_global.h:909: error: redeclaration of C++ built-in type `bool‘
make[2]: *** [my_new.o] Error 1
make[2]: Leaving directory `/home/tools/mysql-5.0.22/mysys‘
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/tools/mysql-5.0.22‘
make: *** [all] Error 2
是因为gcc-c++是在configure之后安装的,此时只需重新configure后再编译make即可。
本文出自 “david0512” 博客,请务必保留此出处http://gjr0512.blog.51cto.com/6518687/1431119
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。