编译安装LAMP之mysql-5.5(源码安装)

MySQL struggling 2134次浏览 1个评论

一,准备工作

先下载所需的安装包mysql-5.5.36.tar.gz,下载地址 http://mirrors.sohu.com/mysql/MySQL-5.5/ ,注意,MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具。因此,我们首先要在系统中源码编译安装cmake工具,我使用的是cmake-3.1.0.tar.gz。

编译安装的目录:/usr/local/

实验环境:CentOS6.6。

二,编译安装cmake

<code>
[root@www cmake-3.1.0]# tar xf cmake-3.1.0.tar.gz
[root@www cmake-3.1.0]# cd cmake-3.1.0/
[root@www cmake-3.1.0]# ./bootstrap
[root@www cmake-3.1.0]# make 
[root@www cmake-3.1.0]# make install
</code>

三,编译安装mysql-5.5.36

1、使用cmake编译mysql-5.5

使用cmake编译mysql-5.5,cmake指定编译选项的方式不同于make,其实现方式对比如下:

<code>
./configure             ---->   cmake .
./configure --help  ---->   cmake . -LH 或者 ccmake .

</code>

指定安装文件的安装路径时常用的选项:

<code>
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql     #默认安装路径
-DMYSQL_DATADIR=/data/mysql                       #mysql数据存放的目录
-DSYSCONFDIR=/etc                                           #配置文件存放目录
</code>

默认编译的存储引擎包括:csv、myisam、myisammrg和heap。若要安装其它存储引擎,可以使用类似如下编译选项:

<code>
-DWITH_INNOBASE_STORAGE_ENGINE=1             # InnoDB存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1                #Archive存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1           #黑洞存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1            
</code>

若要明确指定不编译某存储引擎,可以使用类似如下的选项:

<code>
-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1
</code>

比如:

<code>
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
</code>

如若要编译进其它功能,如SSL等,则可使用类似如下选项来实现编译时使用某库或不使用某库:

<code>
-DWITH_READLINE=1
-DWITH_SSL=system
-DWITH_ZLIB=system
-DWITH_LIBWRAP=0
</code>

其它常用的选项:

<code>
-DMYSQL_TCP_PORT=3306     #默认端口
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock   #默认套接字
-DENABLED_LOCAL_INFILE=1
-DEXTRA_CHARSETS=all             #支持额外的字符集
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_DEBUG=0
-DENABLE_PROFILING=1    #启用性能分析功能
</code>

如果想清理此前的编译所生成的文件,则需要使用如下命令:

<code>
make clean
rm CMakeCache.txt
</code>

2、编译安装

<code>
[root@www ~]# mkdir /mydata/data -p
[root@www ~]# groupadd -r mysql
[root@www ~]# useradd -g mysql -r -d /mydata/data mysql
[root@www ~]# tar xf mysql-5.5.36.tar.gz
[root@www ~]# cd mysql-5.5.36/
[root@www mysql-5.5.36]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
          -DMYSQL_DATADIR=/mydata/data \
          -DSYSCONFDIR=/etc \
		  -DWITH_INNOBASE_STORAGE_ENGINE=1 \     
          -DWITH_ARCHIVE_STORAGE_ENGINE=1 \      
          -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \   
		  -DWITH_READLINE=1 \
		  -DWITH_SSL=system \
		  -DWITH_ZLIB=system \
		  -DWITH_LIBWRAP=0 \
		  -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
		  -DDEFAULT_CHARSET=utf8 \
          -DDEFAULT_COLLATION=utf8_general_ci
[root@www mysql-5.5.36]# make 
[root@www mysql-5.5.36]# make install
</code>

3、安装并初始化mysql-5.5.36

<code>
[root@www ~]# chown -R mysql:mysql  .   
[root@www ~]# scripts/mysql_install_db --user=mysql --datadir=/mydata/data   
[root@www ~]# chown -R root  .
[root@localhost mysql]# cp support-files/my-large.cnf  /etc/my.cnf
[root@www support-files]# vim  /etc/my.cnf

 39 thread_concurrency = 4
 40 datadir = /mydata/data              ------> 修改数据文件路径


[root@www ~]# vim  /etc/profile.d/mysql.sh 
 export PATH=$PATH:/usr/local/mysql/bin/   ------>创建此文件添加此行

[root@www ~]# cd /usr/local/mysql
[root@www mysql]# cp support-files/mysql.server  /etc/init.d/mysqld
[root@www mysql]# chmod +x /etc/init.d/mysqld

[root@www mysql]# chkconfig --add mysqld
[root@www mysql]# chkconfig mysqld on

</code>

四,测试

<code>
[root@www support-files]# service mysqld  start
Starting MySQL... SUCCESS! 
[root@www support-files]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.36-log Source distribution            -----> 源码版本

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

</code>

DevOps-田飞雨 》》转载请注明源地址
喜欢 (2)or分享 (0)
发表我的评论
取消评论
*

表情 贴图 加粗 链接 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(1)个小伙伴在吐槽
  1. 博主,你好,boke123网址大全(博客导航站)特来拜会,发现贵站不错,已将贵站收录到技术类,如有异议请留言哦!谢谢!PS:由于在贵站找不到留言板,所以在此留言告知,如造成困扰,请删除本评论,谢谢!
    匿名2015-05-25 17:42 回复