一、添加用户和组

1. 进入root:

su

2. 添加组:

groupadd mysql

3. 添加用户:

useradd -r -g mysql -s /bin/false mysql

二、安装

1. 首先到MySQL官网下载最新版的MySQL 5.7.14,进入http://dev.mysql.com/downloads/mysql/,选择Source Code下的Generic Linux。

2. 解压

tar zxvf mysql-5.7..tar.gz

3. 安装MySQL所需要的工具:

(1) CMake,一个跨平台的安装(编译)工具;

(2) gcc-c++, C++编译器;

(3) Boost库,C++语言标准库的扩展库(这里很可能会出现坑);

(4) perl,一种编程序言;

(5) bison, 一个语法分析器生成器;

(6) git,版本控制工具;

(7) curses,图形函数库。

yum install cmake gcc-c++ perl-Data-Dumper bison git ncurses-devel

4. 进入解压完的mysql-5.7.14目录,编译源码并生成makefile。

(1) 如果你的系统安装了Boost-1.59库,并且设置了环境变量,那么执行:

cmake .

(2) 如果你的系统安装了boost-1.59库,那么执行:

cmake . -DWITH_BOOST=path of boost

(3) 如果你的系统没有安装boost-1.59,那么执行:

cmake . DDOWNLOAD_BOOST= -DWITH_BOOST=/usr/local/boost

这条语句将会自动下载boost-1.59版本并安装。

(4) 如果系统提示Could NOT find Curses (missing:  CURSES_LIBRARY CURSES_INCLUDE_PATH),说明cmake的这两个参数的值不对,那么你在上面的基础上加上两个参数:

-DCURSES_LIBRARY=/usr/lib/libncurses.so -DCURSES_INCLUDE_PATH=/usr/include

5. 编译:

make

6. 安装:

make install

MySQL将会安装到/usr/local/mysql目录。

7. 进入安装目录:

cd /usr/local/mysql

8. 创建data目录:

mkdir -m  data

9. 创建MySQL配置文件并进行配置:

cp support-files/my-default.cnf /etc/my.cnf
gedit /etc/my.cnf

进入编辑器之后修改以下几行(注意去掉#号):

basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306

10. 权限设置:

chown -R mysql .
chgrp -R mysql .

11. 初始化数据库:

bin/mysqld --initialize --user=mysql

执行完这一句后mysql会分配一个初始的密码,这个密码得备份下来。

继续执行:

bin/mysql_ssl_rsa_setup
chown -R root .
chown -R mysql data

12. 启动MySQL:

bin/mysqld_safe --user=mysql &

13. 登录mysql:

bin/mysql -u root -p

14. 修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

15. 远程登录权限:

GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY 'passwd2015';
FLUSH PRIVILEGES;

CentOS 7 源码编译安装MySQL 5.7.14的更多相关文章

  1. centos下源码编译安装MySQL

    解压下载的软件压缩包  tar xzvf mysql-5.1.63.tar.gz 进入解压的目录  cd mysql-5.1.63/ 安装需要的依赖包  yum install gcc gcc-c++ ...

  2. CentOS 7 源码编译安装 Mysql 5.7

    1.创建 mysql 用户,用户组,以及相关目录 /usr/sbin/groupadd mysql /usr/sbin/useradd -g mysql mysql mkdir -p /opt/loc ...

  3. CentOS源码编译安装MySQL 5.5.15

    CentOS源码编译安装MySQL 5.5.15   文章目录 [隐藏] 安装编译工具 下载源码 安装cmake和bison 编译安装MySQL 一些相关设置 安装编译工具 yum install g ...

  4. CentOS 6.6 下源码编译安装MySQL 5.7.5

    版权声明:转自:http://www.linuxidc.com/Linux/2015-08/121667.htm 说明:CentOS 6.6 下源码编译安装MySQL 5.7.5 1. 安装相关工具# ...

  5. Centos 7源码编译安装 php7.1 之生产篇

    Centos 7源码编译安装 php7.1 之生产篇 Published 2017年4月30日 by Node Cloud 介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具 ...

  6. Shell脚本一键部署——源码编译安装MySQL及自动补全工具

    Shell脚本一键部署--源码编译安装MySQL及自动补全工具 编译安装MySQL 1.软件包 Mysql安装包 将安装包拖至/opt目录下,编辑一个脚本文件,将以下内容复制进去,然后source或者 ...

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

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

  8. 总结源码编译安装mysql

    最近在学习源码编译安装LAMP.LNMP时,一直遇到一个难题,就是就是mysql无论怎么源码编译安装,到最后启动服务都提示"Starting MySQL.The server quit wi ...

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

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

随机推荐

  1. Python中四种样式的99乘法表

    1.常规型. #常规型 i=1 while i<=9: j=1 while j<=i: print(''%d*%d=%2d''%(i,j,i*j),end='') i+=1 #等号只是用来 ...

  2. 深度学习之TensorFlow构建神经网络层

    深度学习之TensorFlow构建神经网络层 基本法 深度神经网络是一个多层次的网络模型,包含了:输入层,隐藏层和输出层,其中隐藏层是最重要也是深度最多的,通过TensorFlow,python代码可 ...

  3. Lucene 4.4.0中常用的几个分词器

    一.WhitespaceAnalyzer 以空格作为切词标准,不对语汇单元进行其他规范化处理.很明显这个实用英文,单词之间用空格. 二.SimpleAnalyzer 以非字母符来分割文本信息,并将语汇 ...

  4. USACO Humble Numbers

    USACO  Humble Numbers 这题主要是两种做法,第一种是比较常(jian)规(dan)的-------------用pq(priority_queue)维护,每次取堆中最小值(小根堆) ...

  5. Git详细教程(2)---多人协作开发

    Git可以完成两件事情: 1. 版本控制 2.多人协作开发 如今的项目,规模越来越大,功能越来越多,需要有一个团队进行开发. 如果有多个开发人员共同开发一个项目,如何进行协作的呢. Git提供了一个非 ...

  6. python 面向对象的程序设计

    一:什么是编程范式? 编程是程序员用特定的语法 + 数据结构 + 算法组成的代码来告诉计算机如何执行任务的过程. 如果把编程的过程比喻为练习武功,那么编程范式指的就是武林中的各种流派,而在编程的世界里 ...

  7. 《Language Implementation Patterns》之 强类型规则

    语句的语义取决于其语法结构和相关符号:前者说明了了要"做什么",后者说明了操作"什么对象".所以即使语法结构正确的,如果被操作的对象不合法,语句也是不合法的.语 ...

  8. python每日一函数 - divmod数字处理函数

    python每日一函数 - divmod数字处理函数 divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: ...

  9. Python 二分查找

    (非递归实现) def binary_search(alist, item): first = 0 last = len(alist)-1 while first<=last: midpoint ...

  10. 在Nginx上配置多个站点

    有时候你想在一台服务器上为不同的域名运行不同的站点.比如www.siteA.com作为博客,www.siteB.com作为论坛.你可以把两个域名的IP都解析到你的服务器上,但是没法在Nginx的根目录 ...