Linux下mysql编译安装教程

#查看linux发行版本

cat /etc/issue

#查看linux内核版本号

uname -r

本文測试环境centOS6.6

一、Linux下编译安装MySQL前的准备工作

在线安装编译源代码所需的工具和库(无法联网的话要事先准备软件,或者系统盘)

yum install gcc gcc-c++ ncurses-devel perl

从mysql5.5起源代码编译须要借助cmake这款编译工具。从http://www.cmake.org下载cmake源代码并编译安装。

wget  http://www.cmake.org/files/v3.3/cmake-3.3.0.tar.gz

tar -xzvf cmake-3.3.0.tar.gz

cd cmake-3.3.0

./bootstrap ; make ; make install

cd ~

二、设置MySQL用户和组

新增mysql用户组,新增mysql用户

groupadd mysql

useradd -r -g mysql mysql

三、新建MySQL所须要的文件夹

mkdir -p /usr/local/mysql

mkdir -p /data/mysqldb

四、下载MySQL源代码包并解压

能够事先从http://dev.mysql.com/downloads/mirrors.html选择一个镜像去下载源代码文件。也能够直接在线下载。

wget  ftp://mirror.csclub.uwaterloo.ca/mysql/Downloads/MySQL-5.6/mysql-5.6.25.tar.gz

(下载源能够自己设置)

tar -zxv -f mysql-5.6.25.tar.gz

cd mysql-5.6.25

五、编译安装MySQL

从mysql5.5起。mysql源代码安装開始使用cmake了,设置源代码编译配置脚本。

进入解压好的mysql文件夹运行

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock  -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/data/mysqldb -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1

注:如要又一次执行配置,须要删除CMakeCache.txt文件(rm CMakeCache.txt)

接着执行命令

make

make instal

附编译參数简单介绍:

-DCMAKE_INSTALL_PREFIX=dir_name 设置mysql安装文件夹

-DMYSQL_UNIX_ADDR=file_name 设置监听套接字路径,这必须是一个绝对路径名。

默觉得/tmp/mysql.sock

-DDEFAULT_CHARSET=charset_name 设置server的字符集。

缺省情况下,MySQL使用latin1的(CP1252西欧)字符集。cmake/character_sets.cmake文件包括同意的字符集名称列表。

-DDEFAULT_COLLATION=collation_name 设置server的排序规则。

下面是存储引擎选项:

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1

MyISAM,MERGE,MEMORY,和CSV引擎是默认编译到server中。并不须要明白地安装。静态编译一个存储引擎到server,使用-DWITH_engine_STORAGE_ENGINE= 1

可用的存储引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB), PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)

-DMYSQL_DATADIR=dir_name 设置mysql数据库文件文件夹

-DMYSQL_TCP_PORT=port_num 设置mysqlserver监听端口,默觉得3306

-DENABLE_DOWNLOADS=bool 是否要下载可选的文件。比如,启用此选项(设置为1),cmake将下载谷歌所使用的測试套件执行单元測试。

六、改动mysql文件夹全部者和组

改动mysql安装文件夹

cd /usr/local/mysql

chown -R mysql:mysql .

改动mysql数据库文件文件夹

cd /data/mysqldb

chown -R mysql:mysql .

七、初始化mysql数据库

cd /usr/local/mysql

scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb

八、复制mysql服务启动配置文件

cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

九、复制mysql服务启动脚本及增加PATH路径

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

vim /etc/profile

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

export PATH

source /etc/profile

十、启动mysql服务并增加开机自启动(可选这个步骤,以后能够自己启动的)

service mysql start

chkconfig --level 35 mysql on

能够查看mysql是否启动

netstat -tulnp | grep 3306

mysql -u root -p

第一次登录password为空,假设能登陆上,则成功安装。

设置用户root的password

mysqladmin -u root password '123456'

再次进行登录測试

mysql -uroot -p123456

參考文献:

http://blog.csdn.net/wendi_0506/article/details/39478369

http://blog.csdn.net/hellozpc/article/details/47030415

Linux(centos)下mysql编译安装教程的更多相关文章

  1. Linux CentOS下MySQL的安装配置之浅谈

    前期必备安装:VMware虚拟机,CentOS镜像[注意:Linux下使用CentOS   MySQL是不用在官网下载的,只需要配置就OK了] 下面开始正式操作: //CentOS安装MySQL之浅谈 ...

  2. Linux下nginx编译安装教程和编译参数详解

    这篇文章主要介绍了Linux下nginx编译安装教程和编译参数详解,需要的朋友可以参考下 一.必要软件准备1.安装pcre 为了支持rewrite功能,我们需要安装pcre 复制代码代码如下: # y ...

  3. CentOS下Eclipse的安装教程

    CentOS下Eclipse的安装教程 据了解,在Linux下的Java开发很多时候都比较喜欢使用vim + 插件,反而很少使用Eclipse,但是我是第一次使用Linux来进行Java编程,就什么都 ...

  4. PCL库在Linux环境下的编译安装

    PCL库在Linux环境下的编译安装 PCL库的源码库:https://github.com/PointCloudLibrary/pcl 下载完了之后解压下来 编译库的几个步骤 mkdir build ...

  5. Linux Centos下软件的安装与卸载方法

    转载于: http://blog.csdn.net/zolalad/article/details/11368879 Linux下软件的安装与卸载   第一章   linux下安装软件,如何知道软件安 ...

  6. Linux(Ubuntu)下MySQL的安装与配置

    转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...

  7. GO语言教程(一)Linux( Centos)下Go的安装, 以及HelloWorld

    写在前面: 目前,Go语言已经发布了1.5的版本,已经有不少Go语言相关的书籍和教程了,但是看了一些后,觉得还是应该自己写一套Go语言的教程.给广大学习Go语言的朋友多一种选择.因为,咱写的教程,向来 ...

  8. Linux系统CentOS下mysql的安装日志

    今天自己捣鼓了一下,在linux系统CentOs6.5下使用源码方式安装和配置mysql,这里记录一下步骤. a) 下载mysql,source版本.Mysql-5.6.20.tar.gz b) 安装 ...

  9. Linux下Java开发环境搭建—CentOS下Eclipse的安装教程

    据了解,在Linux下的Java开发很多时候都比较喜欢使用vim + 插件,反而很少使用Eclipse,但是我是第一次使用Linux来进行Java编程,就什么都体验下啦,好啦,废话不多说,直接开始啦. ...

随机推荐

  1. Python内存分配器(如何产生一个对象的过程)

    目录 内存分配器 Python分配器分层 第零层--通用的基础分配器 第一层--低级内存分配器 内存结构 arena pool new arena usable_arenas和unused_arena ...

  2. Test-我喜欢LInux

    测试发帖流程 哈哈 习惯一下先.

  3. OpenJDK源码研究笔记(八)-详细解析如何读取Java字节码文件(.class)

    在上一篇OpenJDK源码研究笔记(七)–Java字节码文件(.class)的结构中,我们大致了解了Java字节码文件的结构. 本篇详细地介绍了如何读取.class文件的大部分细节. 1.构造文件  ...

  4. shiro整合thymeleaf

    1.引入依赖 <!--thymeleaf中使用shiro--> <dependency> <groupId>com.github.theborakompanioni ...

  5. Java基础学习总结(10)——static关键字

    一.static关键字 原来一个类里面的成员变量,每new一个对象,这个对象就有一份自己的成员变量,因为这些成员变量都不是静态成员变量.对于static成员变量来说,这个成员变量只有一份,而且这一份是 ...

  6. 第六课 Struts的视图组件

    Struts框架的视图负责为客户提供动态网页内容. Struts的视图主要由JSP网页构成.此外还包含客户化的标签和ActionForm Bean.这些组件提供了 对国际化.接收用户输入的表单数据.表 ...

  7. Effective C++ 条款13

    以对象管理资源 资源的种类非常多,动态分配的内存.文件描写叙述器.相互排斥锁.图像界面中画刷.数据库连接.网络socket等. 资源通常是有限的.当你不用时,必须释放.不然就会造成资源浪费.更严重的情 ...

  8. poj--1637--Sightseeing tour(网络流,最大流判断混合图是否存在欧拉图)

    Sightseeing tour Time Limit: 1000MS   Memory Limit: 10000KB   64bit IO Format: %I64d & %I64u Sub ...

  9. quartz-misfire 错失、补偿执行

    调度(scheduleJob)或恢复调度(resumeTrigger,resumeJob)后不同的misfire对应的处理规则 misfire产生的条件是:到了该触发执行时上一个执行还未完成,且线程池 ...

  10. Perl初学笔记

    标量数据 标量:数字和字符串. 数字:Perl不存在整形,全部是double类型.整形常量会被自动转换为浮点型. Perl数字字面量(直接量):+-和小数点是非必须的,e代表10的多少次方.例如:-1 ...