mysql5.6.16的安装和之前的5.5、5.1有些不同,编译的时候不再使用./configure来进行了,使用了cmake命令来进行编译项目。

1、准备编译环境

yum
-y 
installmakegcc-c++
cmake bison-devel  ncurses-devel gcc \
       autoconf
automake zlib* fiex* libxml* libmcrypt* libtool-ltdl-devel*

2、下载mysql

wget
http:
//dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.16.tar.gz
tar -zxvf
mysql-5.6.16.
tar.gz
cd mysql-5.6.16

3、检查环境

检查是否安装有mysql,CentOS6.4采用最小安装(minimal)的时候默认有带mysql,检查并协助mysql:

rpm -qa | grep mysql

卸载:yum -y remove mysql名称

3.1、groupadd mysql  #添加mysql组

3.2、useradd -g mysql mysql -s /bin/false  #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统

3.3、mkdir -p /data/mysql      #创建mysql数据库存放目录

3.4、chown -R mysql:mysql /data/mysql#设置mysql数据库目录权限

3.5、mkdir -p /usr/local/mysql    #创建mysql安装目录

4、编译源码

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/mysql \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DENABLE_DOWNLOADS=1


注意,这个cmake是替代以前的./configure 步骤。如果你需要更多的参数,请参考http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html
有时候会出现类似的问题。

Googlemock was not found. gtest-based unit tests will be disabled. You can run cmake . -DENABLE_DOWNLOADS=1 to automatically download and build required components from source.

– If you are inside a firewall, you may need to use an http proxy: export http_proxy=http://example.com:80

  • 使用参数-DENABLE_DOWNLOADS=1 自动下载。
  • 有网络限制,设置http代理export
    http_proxy=http://example.com:80
    。环境变量http_proxy 也为
    curl 等其他工具所用。尽管 yum 可以识别大写或小写的 http_proxy,但curl 要求环境变量的名称是小写。

如果这个cmake这个步骤有出现问题,解决后重新再cmake一次。如果输出类似这样,那么就好了。

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
--
Running cmake version 2.6.4
--
MySQL 5.6.16
--
Packaging as: mysql-5.6.16-Linux-x86_64
--
HAVE_VISIBILITY_HIDDEN
--
HAVE_VISIBILITY_HIDDEN
--
HAVE_VISIBILITY_HIDDEN
--
Using cmake version 2.6.4
--
Not building NDB
--
Library mysqlclient depends on OSLIBS -lpthread;m;rt;dl
--
GMOCK_SOURCE_DIR:/root/mysql-5.6.16/source_downloads/gmock-1.6.0
--
GTEST_LIBRARIES:gmock;gtest
--
Library mysqlserver depends on OSLIBS -lpthread;m;rt;crypt;dl
--
Configuring done
--
Generating done
--
Build files have been written to: /root/mysql-5.6.16

接着编译源码

1
make&& makeinstall

配置mysql数据库

1、cd /usr/local/src/mysql-5.0.41

cp ./support-files/my-huge.cnf   /etc/my.cnf    #拷贝配置文件

vi /etc/my.cnf#编辑配置文件,在[mysqld]部分添加

datadir = /data/mysql    #添加mysql数据库路径

./scripts/mysql_install_db   --user=mysql #生成mysql系统数据库

cp ./support-files/mysql.server   /etc/rc.d/init.d/mysqld   #把mysql加入系统启动

chmod 755 /etc/init.d/mysqld    #增加执行权限

2、chkconfig mysqld on  #加入开机启动

vi /etc/rc.d/init.d/mysqld #编辑添加mysql安装路径和数据库存放目录

basedir = /usr/local/mysql

datadir = /data/mysql

3、vi /etc/profile #把mysql服务加入系统环境变量:最后添加下面这行

export PATH = $PATH:/usr/local/mysql/bin

shutdown -r now   #需要重新启动,等系统重启后继续下面操作

4、mysql_secure_installation#设置mysql密码,根据提示输入y 回车输入2次密码

或者直接修改密码  /usr/local/mysql/bin/mysqladmin -u root -p password "123456"   #修改密码

service mysqld restart    #重启服务

到此,mysql安装完成!

5、如果想在任一目录下输入mysql -u root -p 进入mysql命令行,需要在每个用户变量里配置。

linux在每个用户下面都有个.bash_profile的用户变量文件,将mysql的bin目录路径添加到该用户变量的PATH后面。如:

vi /root/.bash_profile

添加如下:

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin/

此时在任一目录下输入mysql -u root -p密码  就能进入mysql命令了。

6、mysql的驱动存放位置:jdk主目录/jre/lib/ext/


CentOS 编译源码安装MySQL-5.6.16的更多相关文章

  1. Centos7服务器中通过编译源码安装MySQL

    基于在Centos7服务器上使用 yum 安装MySQL5.7到默认路径 在修改文件存储位置的时候,折腾了一番没有将成功将datadir修改为我想要的位置 我决定再尝试一下通过编译源码来自定义安装: ...

  2. CentOS下源码安装MySQL

    一.创建mysql用户与组,相关目录 useradd mysql -s /sbin/nologin mkdir /usr/local/mysql chown -R mysql.mysql mkdir ...

  3. centos 7 源码安装 mysql 5.6

    下载 mysql 安装包 $ wget https://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.44.tar.gz # or $ curl -O ht ...

  4. centos 6x系统下源码安装mysql操作记录

    在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配.可以通过源 ...

  5. CentOS 7下源码安装MySQL 5.7

    网上说linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有几十M左右,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点 ...

  6. CentOS 6.4 源码安装MySQL 5.6

    1.安装前准备工作 1.1 必备的包 gcc/g++ :MySQL 5.6开始,需要使用g++进行编译.cmake :MySQL 5.5开始,使用cmake进行工程管理,cmake需要2.8以上版本. ...

  7. Centos7源码安装mysql及读写分离,互为主从

       Linux服务器 -源码安装mysql 及读写分离,互为主从   一.环境介绍: Linux版本: CentOS 7 64位 mysq版本: mysql-5.6.26 这是我安装时所使用的版本, ...

  8. CentOS下源码安装Apache2.4+PHP5.4+MySQL5.5

    一.准备(把所有的源文件放在‘/home/yuanjun’目录下) apr http://mirror.bjtu.edu.cn/apache/apr/apr-1.4.6.tar.gz apr-util ...

  9. 源码安装mysql,及主从同步

    源码安装mysql [可选] 如果用源码安装cmake软件: cd /home/oldboy/tools/ tar xf cmake-.tar.gz cd cmake- ./configure #CM ...

随机推荐

  1. new FileInputStream(file)中file不能为文件夹

    今天闲来无事,写了如下程序: package com.xhj.test; import java.io.File; import java.io.FileFilter; import java.io. ...

  2. 高维数据降维 国家自然科学基金项目 2009-2013 NSFC Dimensionality Reduction

    2013 基于数据降维和压缩感知的图像哈希理论与方法 唐振军 广西师范大学 多元时间序列数据挖掘中的特征表示和相似性度量方法研究 李海林 华侨大学       基于标签和多特征融合的图像语义空间学习技 ...

  3. spring框架学习(八)spring管理事务方式之注解配置

    1.DAO AccountDao.java package cn.mf.dao; public interface AccountDao { //加钱 void increaseMoney(Integ ...

  4. Jekens Source Code Management None 源码管理没有Git

    jekens安装完成后,在配置中Source Code Management没有Git的选项,只有none,搞了大半天,一直安装插件报错,网上找的各种文章均未能解决我的问题,多次尝试后终于解决了这个问 ...

  5. spring-boot RestTemplate 连接池

    以前我们项目都是基于Apache HttpClient 连接池进行web 接口调用,后来用spring-boot, 发现 RestTemplate 挺好用. 简单介绍下: 什么是RestTemplat ...

  6. 11个实用的CSS学习工具[转载收藏]

    1. 盒子模型的幻灯片 通过3D转换效果产生的互动的幻灯片.按向左或向右箭头键切换,全屏观看会有更好的效果. 2. CSS Diner 通过一个简单的小游戏让你学习CSS selector,输入正确的 ...

  7. <P>标签小细节

    html标签对大小写不敏感. 注释:浏览器会自动地在段落的前后添加空行.(<p> 是块级元素) 提示:使用空的段落标记 <p></p> 去插入一个空行是个坏习惯.用 ...

  8. shell if判断中常用的a-z表达式含义

    shell if判断中常用的a-z表达式含义 可通过在在linux中man test命令查看下列参数的详细用法   [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 ...

  9. ASP.NET 应用生命周期19个事件简介

    下面是请求管道中的19个事件. (1)BeginRequest: 开始处理请求 (2)AuthenticateRequest授权验证请求,获取用户授权信息 (3):PostAuthenticateRe ...

  10. Linux内核触摸屏驱动--多点触摸 【转】

      转自:http://blog.chinaunix.net/uid-24227137-id-3127126.html 简介 为了使用功能强大的多点触控设备,就需要一种方案去上报用户层所需的详细的手指 ...