cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影响,因此在同一个源码树上可以进行多次不同的编译,如针对于不同平台编译。

一、安装cmake(mysql-5.5)
1、确保安装开发环境
Development Libraries
Development Tools
2、所需软件包
cmake-2.8.8.tar.gz
mysql-5.5.28.tar.gz
3、编译之前需要先同步一下时间
[root@station45 ~]# tar xf cmake-2.8.8.tar.gz
[root@station45 ~]# cd cmake-2.8.8
[root@station45 cmake-2.8.8]# ./configure
[root@station45 cmake-2.8.8]# make && make install
如果想清理此前的编译所生成的文件,则需要使用如下命令:
make clean
rm CMakeCache.txt
二、编译安装mysql-5.5.28
1、编译安装前的准备工作
创建一个新分区
新建逻辑卷,用于存储mysql数据
格式化逻辑卷:
[root@station45 ~]# mke2fs -j /dev/myvg/mydata
创建目录:
# mkdir /mydata
让其开机自动挂载:
[root@station45 ~]# vim /etc/fstab
/dev/myvg/mydata    /mydata   ext3    defaults    0 0
[root@station45 ~]# mount –a
[root@station45 ~]# mkdir /mydata/data
添加mysql用户及组:
[root@station45 ~]# groupadd -r mysql
[root@station45 ~]# useradd -r -g mysql -s /sbin/nologin mysql
[root@station45 ~]# chown -R mysql:mysql /mydata/data/
2、编译安装mysql
[root@station45 ~]# tar xf mysql-5.5.28.tar.gz
[root@station45 ~]# cd mysql-5.5.28
[root@station45 mysql-5.5.28]# cmake . –LH  列出我们所要编译的选项,并试着进行编译,读取默认选项,找到我们编译时所需要的头文件(注意这可能需要一些时间,请耐心等待)
[root@station45 mysql-5.5.28]# 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@station45 mysql-5.5.28]# make
[root@station45 mysql-5.5.28]# make install
安装完成
三、安装后的美化工作
修改属组为mysql
[root@station45 ~]# chown -R :mysql /usr/local/mysql/
初始化mysql
[root@station45~]# /usr/local/mysql/
[root@station45 mysql]# scripts/mysql_install_db --user=mysql --datadir=/mydata/data/
复制样例配置文件:
[root@station45 ~]# cp /usr/local/mysql/support-files/my-large.cnf /etc/my.cnf
复制服务器端脚本:
[root@station45 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
添加至服务列表中:
[root@station45 ~]# chkconfig --add mysqld
启动服务器:
[root@station45 ~]# service mysqld start
如果想可以直接使用mysql客户端命令,需要把它写在环境变量中:
[root@station45 ~]# vim /etc/profile.d/mysql.sh
export PATH=$PATH:/usr/local/mysql/bin
让此脚本生效:
[root@station45 ~]# . /etc/profile.d/mysql.sh
登录mysql:
好了基于cmake的mysql源码安装就做好了!
 

本文出自 “丽的博客” 博客,请务必保留此出处http://jilili.blog.51cto.com/6617089/1189498

基于cmake编译安装MySQL-5.5的更多相关文章

  1. cmake编译安装mysql 5.6.12

    cmake安装mysql 5.6.12 从mysql 5.5 开始就要用cmake编译安装 下载mysql 下载地址:http://pan.baidu.com/s/1o68xxqE 一.安装mysql ...

  2. CentOS下使用cmake编译安装mysql

    一.下载安装所必需的依赖包 1.因为高版本mysql都用cmake安装,所以下载cmake wget http://www.cmake.org/files/v3.0/cmake-3.0.1.tar.g ...

  3. cmake编译安装mysql

    运维开发技术交流群欢迎大家加入一起学习(QQ:722381733) 前言:这里我使用的安装方式是(cmake编译),我选择的版本是:cmake-2.8.8.tar.gz.mysql-5.5.32.ta ...

  4. 源码编译安装 MySQL 5.5.x 实践

    1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...

  5. CentOS 编译安装 mysql

    1.前期准备 1.1 环境说明: 操作系统: CentOS release 6.4 (Final) [查看命令 cat /etc/redhat-release ] mysql : mysql-5.6. ...

  6. Linux CentOS6.5下编译安装MySQL 5.6.16【给力详细教程】

    一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake,从http://www.cmake ...

  7. Linux编译安装Mysql步骤

    一. Centos 用 wget 下载需要的软件,保存到目录/home/zwl/MySql/下 wget http://dev.mysql.com/get/Downloads/MySQL-5.5/my ...

  8. CentOS下编译安装MySQL 5.6.21

    一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake:http://www.cnblog ...

  9. 源码编译安装 MySQL 5.5.x 实践(转)

    1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...

随机推荐

  1. Android jni系统变量、函数、接口定义汇总

    在做Android jni开发时,jni为我们提供了哪些函数.接口.变量,有时候一头雾水,今天就把jni.h中定义的所有内容列出来,供自己查阅: /* * Copyright (C) 2006 The ...

  2. Java - Collection 高效的找出两个List中的不同元素

    如题:有List<String> list1和List<String> list2,两个集合各有上万个元素,怎样取出两个集合中不同的元素? 方法1:遍历两个集合 public ...

  3. nodejs 80端口监听失败及NODE_PATH不起作用的问题

    nodejs做web服务器,打开80时报错:Error: listen EACCES 0.0.0.0:80 80端口监听失败,是因为1024以下的端口需要root权限,需要sudo或su之后执行.但这 ...

  4. String类中一些的方法的应用

    一.整理string类 1.Length():获取字串长度: 2.charAt():获取指定位置的字符: 3.getChars():获取从指定位置起的子串复制到字符数组中:(它有四个参数) 4.rep ...

  5. 使用 U盘 重装 Mac OSX

    一.制作 U 盘系统启动盘 1.从 App Store 上下载 OS Application.(这里需要注意,取消下载完的自动更新,并存储下这个 OS.Application 文件,因为系统更新完后, ...

  6. Elasticsearch学习笔记(一)

    批量建索引: curl -s -XPOST 'localhost:9200/_bulk' --data-binary @documents.json 查看索引mappingmyindex/_mappi ...

  7. iis 部署 webapi2.0 访问报错解决

    本机安装的VS2013 开发环境,在IIS部署WebApi2.0时,应用程序池并没有.NET4.5的选项. 网上搜索一番得知: 1..NET 4.5本质上还是4.0,属于递增式的更新,所以对IIS 来 ...

  8. 深度学习笔记(四)VGG14

    Very Deep Convolutional Networks for Large-Scale Image Recognition 1. 主要贡献 本文探究了参数总数基本不变的情况下,CNN随着层数 ...

  9. 白话学习MVC(六)模型绑定

    一.什么是模型绑定? 模型绑定存在的意义就是为Action的参数提供值,例如:如下表单中提交了数据,那么Action(即:Index)的参数Id,Name的值就是表单中对应的name属性相同的值,而表 ...

  10. javascript源代码学习之五——jQuery.deferred

    jQuery.Defered——异步队列用于管理一组回调函数(成功resolve,失败reject,消息progress),基于上一节实现的jQuery.callbacks完成. done,fail, ...