编译所需软件地址

http://mysql.mirror.kangaroot.net/Downloads/  -- 下载需要的mysql版本例如mysql-5.5.39.tar.gz    目前还不太理解mysql那么多的安装包都是干嘛用的,先mark一下。下载的时候注意要下mysql-版本号.tar.gz的包。
http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz

开始安装

1,安装cmake

1)下载Cmake

[root@test1 software]# wget http://www.cmake.org/files/v2.8/cmake-2.8.3.tar.gz

2)解压

[root@test1 software]# tar -zvxf cmake-2.8.3.tar.gz

3)进入解压后的文件夹

[root@test1 software]# cd cmake-2.8.3

4)生成安装文件

[root@test1 cmake-2.8.3]# ./configure

5)编译

[root@test1 cmake-2.8.3]# make

6)安装

[root@test1 cmake-2.8.3]# make install

2,安装mysql

2,安装mysql

1)下载mysql

[root@test1 software]# wget http://mysql.mirror.kangaroot.net/Downloads/MySQL-5.5/mysql-5.5.39.tar.gz

2)解压

[root@test1 software]# tar -zvxf mysql-5.5.39.tar.gz

3)创建mysql的安装目录及数据库存放目录

[root@test1 software]# mkdir -p /usr/local/mysql          //安装mysql

[root@test1 software]# mkdir -p /usr/local/mysql/data  //存放数据库

4)创建mysql用户及用户组

[root@test1 software]# groupadd mysql 
[root@test1 software]# useradd -r -g mysql mysql

 

5)进入到mysql的文件夹

[root@test1 software]# cd mysql-5.5.39

6)生成安装文件

[root@test1 mysql-5.5.39]#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306

7)编译

[root@test1 mysql-5.5.39]# make

8)安装

[root@test1 mysql-5.5.39]# make install

配置mysql

9)设置mysql目录权限 mysql/mysql

 

[root@test1 mysql]#cd /usr/local/mysql //把当前目录中所有文件的所有者设为root,所属组为mysql

[root@test1 mysql]# chown -R mysql:mysql /usr/local/mysql

10)将mysql的启动服务添加到系统服务中并设置开机启动

[root@test1 mysql]# cp support-files/my-small.cnf /etc/my.cnf 
cp: overwrite `/etc/my.cnf'? y 
[root@test1 mysql]# cp support-files/mysql.server /etc/init.d/mysqld

[root@test1 mysql]#cd /etc/init.d/

[root@test1 init.d]#chkconfig --add mysqld

[root@test1 init.d]#chkconfig --level 2345 mysqld on 

11)创建系统数据库表

[root@test1 mysql]# scripts/mysql_install_db --user=mysql

12)设置系统环境变量

[root@test1 mysql]# vi /root/.bash_profile

[root@test1 mysql]# source /root/.bash_profile

14)启动mysql

[root@test1 mysql]# service mysqld start 
Starting MySQL.. SUCCESS!

--------------------------------------------------------------------------------------------------------------

遇到问题

[root@test1 cmake-2.8.]# ./configure
---------------------------------------------
CMake 2.8., Copyright - Kitware, Inc.
---------------------------------------------
Error when bootstrapping CMake:
Cannot find appropriate C compiler on this system.
Please specify one using environment variable CC.
See cmake_bootstrap.log for compilers attempted. ---------------------------------------------
Log of errors: /home/software/cmake-2.8./Bootstrap.cmk/cmake_bootstrap.log

缺少C的编译环境

[root@test1 cmake-2.8.3]# yum install gcc

[root@test1 cmake-2.8.]# ./configure
---------------------------------------------
CMake 2.8., Copyright - Kitware, Inc.
C compiler on this system is: cc
---------------------------------------------
Error when bootstrapping CMake:
Cannot find appropriate C++ compiler on this system.
Please specify one using environment variable CXX.
See cmake_bootstrap.log for compilers attempted.
---------------------------------------------
Log of errors: /home/software/cmake-2.8./Bootstrap.cmk/cmake_bootstrap.log

缺少C++编译器

[root@test1 cmake-2.8.3]# yum install gcc-c++

注:yum安装需要root权限

远程连接mysql的服务器的时候,出现2003 - Can't connect to MySQL server on '192.168.1.80'(10038)。

mysql服务器的防火墙没有关闭。

查看防火墙的状态

service iptable status

关闭防火墙的办法

1) 重启后生效 
开启: chkconfig iptables on 
关闭: chkconfig iptables off

2) 即时生效,重启后失效 
开启: service iptables start 
关闭: service iptables stop

-------------------------------------------------------------------------------------------------------------------------

在安装了N遍之后终于安装成功了。里面的很多原理还不甚清楚。安装过程中也参考可很多网友的博客,在此一一谢过。

 

linux下安装mysql(编译mysql源码)的更多相关文章

  1. Linux下安装方法总结(源码安装)

    很久之前安装过windows下以及Mac下的node,感觉还是很方便的,不成想今天安装Linux下的坑了老半天,特此记录. 首先去官网下载代码,这里一定要注意安装分两种,一种是Source Code源 ...

  2. MySQL入门——在Linux下安装和卸载MySQL

    MySQL入门——在Linux下安装和卸载MySQL 摘要:本文主要学习了如何在Linux系统中安装和卸载MySQL数据库. 查看有没有安装过MySQL 使用命令查看有没有安装过: [root@loc ...

  3. 在linux下安装并配置mysql数据库

    在linux下安装并配置mysql数据库 工具/原料   MySql5.6 CentOS 方法/步骤   1 查找以前是否安装有mysql,使用下面命令: rpm -qa|grep -i mysql ...

  4. linux下使用gdb对php源码调试

    title: linux下使用gdb对php源码调试 date: 2018-02-11 17:59:08 tags: --- linux下使用gdb进行php调试 调试了一些php的漏洞,记录一下大概 ...

  5. 在Linux下安装和使用MySQL

    [简 介] 想使用Linux已经很长时间了,由于没有硬性任务一直也没有系统学习,近日由于工作需要必须使用Linux下的MySQL.本以为有Windows下使用SQL Server的经验,觉得在Linu ...

  6. Ubuntu12.04编译Android4.0.1源码全过程-----附wubi安装ubuntu编译android源码硬盘空间不够的问题解决

    昨晚在编译源码,make一段时间之后报错如下: # A fatal error has been detected by the Java Runtime Environment: # # SIGSE ...

  7. linux下安装nginx+php+mysql环境 详细教程

    话不多说上代码 linux环境:centos 7.0 64位 nginx:nginx-1.8.0.tar.gz php: php-7.1.1.tar.gz mysql: mysql-5.6.21.ta ...

  8. 【Lamp】 Linux 下安装PHP+Apache+Mysql 手记

    [0]写在最前 由于准备实习原因,今天又重温了Lamp的搭建过程,之前一直是看燕十八老师2012年的教程学习,因此今天也是拿了十八哥的lamp搭建笔记作参考.但这次按照笔记重新搭建,发现了很多问题,由 ...

  9. linux下安装和卸载mysql

      卸载: 1 . rpm -qa | grep -i mysql命令查看已经安装过的组件.   2. 使用yum -y remove命令卸载已经安装的MySQL组件,使用下面的命令,对于上面已经安装 ...

  10. Linux下安装以及使用MySQL数据库

    1.官网下载mysql数据库:https://dev.mysql.com/downloads/mysql/ 2.linux 下可直接下载:wget https://cdn.mysql.com//Dow ...

随机推荐

  1. 帝国CMS系统结合项图文教程

    为了使信息列表可实现按多种条件输出数据,帝国CMS独创可设置无限条件的模型结合项功能.帝国CMS的结合项功能是指按模型多个字段内容来结合显示对应的信息. 二.结合项的语法说明 结合项访问地址: /e/ ...

  2. mysql 远程连接不上 %用户已经添加了

    修改mysql的配置文件/etc/mysql/my.conf,将bind-address后面增加远程访问IP地址或者禁掉这句话就可以让远程机登陆访问了. 记得要重启mysql服务哦 service m ...

  3. ubuntu系统使用SSH免密码登陆

    ubuntu系统使用SSH免密码登陆 | 浏览:5160 | 更新:2014-02-13 19:15 1 2 3 4 5 6 7 分步阅读 百度经验:jingyan.baidu.com 我们通常使用U ...

  4. 认识和选用常用的几种 GPRS 模块(转)

    源:http://blog.sina.com.cn/s/blog_4d80055a0100e8kr.html 我在这里把常见的GPRS模块分成3种: (1)GPRS DTU(GPRS数传单元,常称GP ...

  5. 实例:SSH结合Easyui实现Datagrid的新增功能和Validatebox的验证功能

    在我前面一篇分页的基础上,新增了添加功能和添加过程中的Ajax与Validate的验证功能.其他的功能在后面的博客写来,如果对您有帮助,敬请关注. 先看一下实现的效果: (1)点击添加学生信息按键后跳 ...

  6. 直接拿来用!最火的iOS开源项目(一)

    直接拿来用!最火的iOS开源项目(一) 发表于2013-06-05 10:17| 39373次阅读| 来源CSDN| 100 条评论| 作者唐小引 iOS开源项目GitHub移动开发最受欢迎的开源项目 ...

  7. Struts2.3.16日志(中)

    Result Configuration --Result 配置 当一个操作类方法完成后,它将返回一个字符串.字符串的值是用来选择一个元素的结果.一个操作映射的结果往往会有一组代表不同的可能的结果.一 ...

  8. zepto的源代码注释(转)

    /* Zepto v1.0-1-ga3cab6c - polyfill zepto detect event ajax form fx - zeptojs.com/license */ ;(funct ...

  9. CvvImage类

    从OpenCV 2.2.0开始,OpenCV取消了CvvImage这个类.可是今天要用到,可以自己加入到工程中. 首先,找到CvvImage的原代码.我在网上已经找到了,具体代码如下. 这是CvvIm ...

  10. js原型对象,每个new出来的新对象都有独立的原型对象__proto__

    刚才看一篇博文的时候, 动手测试了一下 JavaScript的原型链, 原型对象,发现每个构造器(赋给了某个 prototype ) new 出来的对象都有各自独立的原型对象 __proto__. p ...