一、添加用户和组

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. Android_scaleType属性

    这里我们重点理解ImageView的属性android:scaleType,即ImageView.setScaleType(ImageView.ScaleType).android:scaleType ...

  2. 对于一个刚入门的linux运维来说

    干 就完了~ 我觉得 人生的意义在于 不断地学习......

  3. [学习笔记]Javaweb开发视频教程之Tomcat9配置

    参考自北京动力节点的视频教程:https://www.bilibili.com/video/av14548279/?p=1 1.Java XE Java SE 是做电脑上运行的软件. Java EE ...

  4. linux小白成长之路6————安装Java+Apache(httpd)+Tomcat

    [内容指引] 安装Java环境: 查看JDK版本: 安装Apache(httpd); 安装Tomcat: 设置服务开机启动. 1.安装Java环境 指令: yum intall java-1.8.0* ...

  5. id 选择器

    id 选择器 1.id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式. (即也可以说,可以将已经预先定义的特定样式,通过id选择器,赋值指向HTML 元素) 2.HTML元素以id属性 ...

  6. 一个典型的kubernetes工作流程 - kubernetes

    1.准备好一个包含应用程序的Deployment的yml文件,然后通过kubectl客户端工具发送给ApiServer. 2.ApiServer接收到客户端的请求并将资源内容存储到数据库(etcd)中 ...

  7. Linux进程间通信-消息队列(mqueue)

    前面两篇文章分解介绍了匿名管道和命名管道方式的进程间通信,本文将介绍Linux消息队列(posix)的通信机制和特点. 1.消息队列 消息队列的实现分为两种,一种为System V的消息队列,一种是P ...

  8. C语言第六次博客作业--数据类型

    一.PTA实验作业 题目1:区位码输入法 1. 本题PTA提交列表 2. 设计思路 (1)定义整型变量code放区位码,areacode放区码,digitcode放位码,one放个位数,two放十位数 ...

  9. python 归并排序

    def merge_sort(alist): if len(alist) <= 1: return alist # 二分分解 num = len(alist)/2 left = merge_so ...

  10. css变化代码

    <!DOCTYPE html><html>    <head>        <meta charset="UTF-8">      ...