MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
官方网址:http://dev.mysql.comhttp://www.mysql.com
1. 安装Mysql相关依赖。
| yum -y install gcc make libtool-devel ncurses-devel |
2.编译安装mysql5.1
| tar -zvxf mysql-5.1.70.tar.gz cd mysql-5.1.70 ./configure --prefix=/usr/local/mysql --without-debug --enable-thread-safe-client \ --enable-assembler --enable-profiling \ --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static \ --with-charset=utf8 --with-extra-charsets=all --with-plugins=innobase,myisam, \ --with-mysqld-user=mysql --without-embedded-server \ --with-server-suffix=-community --with-ssl --with-big-tables \ --with-unix-socket-path=/var/lib/mysql/mysql.sock make &&make install #在centos5.6版本中可通过该命令来解决编译过程中出现的 /bin/rm: cannot remove `libtoolt': No such file or directory问题,而centos6.x以后的版本需注释或删除掉编译文件中的该条rm语句(对mysql无影响,仅仅是编译后删除某个目录而已)。 静态编译可提升mysql13%左右的性能,5.5.以后mysql的编译安装已经没有静态编译的选项了,但实际上5.5以后的性能较之5.1提升了不少,尤其是在innodb的查询方面。 |
3.创建mysql组和mysql用户
| groupadd mysql;useradd -r -g mysql mysql chmod +w /usr/local/mysql chown -R mysql:mysql /usr/local/mysql |
4.创建mysql相关目录
| mkdir -p /var/lib/mysql /var/log/mysql |
5. 初始化数据库,并给数据库赋权
| Mysql5.1版本和5.5版本的初始化数据库略微不同,5.1的mysql_install_db在bin目录下,5.5在scripts目录下。 /usr/local/mysql/bin/mysql_install_db --user=mysql --pid-file=/var/lib/mysql/mysql.pid --datadir=/var/lib/mysql/ --basedir=/usr/local/mysql chown -R mysql:mysql /usr/local/mysql /var/lib/mysql /var/log/mysql |
6.复制编译包目录下的配置文件至相应目录,并根据个人需求修改配置文件。
| cp support-files/my-medium.cnf /etc/my.cnf 在[client]下修改socket值为/var/lib/mysql/mysql.sock socket = /var/lib/mysql/mysql.sock 修改mysqld下的socket值为/var/lib/mysql/mysql.sock,并指定mysql目录、mysql数据目录、mysql错误日志目录,配置如下,修改后保存退出 # The MySQL server [mysqld] port = 3306 socket = /var/lib/mysql/mysql.sock basedir = /usr/local/mysql datadir = /var/lib/mysql/ pid-file = /var/lib/mysql/mysql.pid character-set-server = utf8 |
7.启动mysql,并使其后台运行,检查mysql是否正常启动
| /usr/local/mysql/bin/mysqld_safe & ps -A|grep mysql |
8.设置其开机启动
| cp support-files/mysql.server /etc/init.d/mysql chmod +x /etc/init.d/mysql chkconfig --add mysql chkconfig mysql on 测试mysql是否能启动、暂停、重启 #service mysql {start|stop|restart} #/etc/init.d/mysql {start|stop|restart} |
9.常见编译错误
| Mysql编译提示错误/bin/rm: cannot remove `libtoolt': No such file or directory解决方法 确认libtool是否已经安装,如果没有安装的话,则先安装libtool # yum -y install libtool 分别执行以下三条命令:(编译完报错才执行下面三条语句) autoreconf --force --install libtoolize --automake --force automake --force --add-missing |


















