(1)官网下载地址:https://dev.mysql.com/downloads/mysql/

此处下载的是 mysql-boost-5.7..tar.gz

百度云下载地址:https://pan.baidu.com/s/1wDAJawz2hUEMbzOVte-bdQ

提取码:gfqo

(2)安装依赖包

yum -y install \
ncurses \
ncurses-devel \
bison \
cmake \
make \
gcc-c++

(3)解压源码包并配置

cd /usr/local/src
tar -zxf mysql-boost-5.7..tar.gz
cd mysql-5.7./
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/usr/local/mysql \
-DWITH_MYISAM_STORAGE_ENGINE= \
-DWITH_INNOBASE_STORAGE_ENGINE= \
-DWITH_MEMORY_STORAGE_ENGINE= \
-DWITH_READLINE= \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DMYSQL_TCP_PORT= \
-DENABLED_LOCAL_INFILE= \
-DWITH_PARTITION_STORAGE_ENGINE= \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_BOOST=boost

以下为上述配置的说明

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ 安装根目录
-DMYSQL_DATADIR=/data//data \ 数据存储目录
-DSYSCONFDIR=/data/ \ 配置文件(my.cnf)目录 (貌似没用,配置文件依然在/etc/my.cnf)
-DWITH_MYISAM_STORAGE_ENGINE= \ 编译myisam存储引擎,默认的存储引擎,不加也可以
-DWITH_INNOBASE_STORAGE_ENGINE= \ 支持InnoDB存储引擎,这个也是默认安装的
-DWITH_MEMORY_STORAGE_ENGINE= \ 支持MEMORY引擎
-DWITH_READLINE= \ 使用readline功能
-DMYSQL_UNIX_ADDR=/data//mysql.sock \ sock存放到/data/3306目录
-DMYSQL_TCP_PORT= \ 数据库端口
-DENABLED_LOCAL_INFILE= \ 可以使用load data infile命令从本地导入文件
-DWITH_PARTITION_STORAGE_ENGINE= \ 安装数据库分区
-DEXTRA_CHARSETS=all \ 支持所有字符集
-DDEFAULT_CHARSET=utf8 \ 默认字符集
-DDEFAULT_COLLATION=utf8_general_ci \ 设置默认效验字符集排序规则,要和DDEFAULT_CHARSET一起用
-DWITH_BOOST=boost 从MySQL 5.7.5开始Boost库是必需的

(4)编译及安装

make && make install

(5)添加用户和组

groupadd mysql
useradd -g mysql mysql
chown -R mysql:mysql /usr/local/mysql

(6)初始化

cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/

注意:初始化完了需要记住root密码

出现以下说明初始化成功
2018-11-12T01:25:29.316210Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-11-12T01:25:30.314274Z 0 [Warning] InnoDB: New log files created, LSN=45790
2018-11-12T01:25:30.441468Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2018-11-12T01:25:30.512508Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: d7df9433-e619-11e8-804b-00163e0851f0.
2018-11-12T01:25:30.517175Z 0 [Warning] Gtid table is not ready to be used. Table ‘mysql.gtid_executed’ cannot be opened.
2018-11-12T01:25:30.517899Z 1 [Note] A temporary password is generated for root@localhost: _1ahqhzYqtMd

(7)写入环境变量

echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile

(8)修改配置文件

vim /etc/my.cnf

配置如下:

[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /usr/local/mysql/mysql.sock
user = mysql
symbolic-links= [mysqld_safe]
log-error = /usr/local/mysql/log-error/mariadb.log
pid-file = /usr/local/mysql/mariadb.pid

(9)创建日志文件并赋予权限

mkdir -p /usr/local/mysql/log-error/
touch /usr/local/mysql/log-error/mariadb.log
chown -R mysql:mysql /usr/local/mysql/log-error/mariadb.log

(10)启动Mysql

/usr/local/mysql/support-files/mysql.server start

(11)设置用户密码及权限

登录mysql:

mysql -u root -p

修改root用户密码:

SET PASSWORD = PASSWORD('');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;

授权所有用户:

grant all privileges on *.* to 'root'@'%' identified by '' with grant option;  
flush privileges;

查询数据库的用户:

use mysql;
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
quit; #退出mysql命令行

(12)设置为开机自动启动Mysql

vim /etc/rc.d/rc.local

添加标准启动命令:

/usr/local/mysql/support-files/mysql.server start

给/etc/rc.d/rc.local添加可执行权限

chmod +x /etc/rc.d/rc.local

Centos 7下编译安装Mysql的更多相关文章

  1. CentOS Linux下编译安装MySQL

    本文参考张宴的Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)[原创]完成.所有操作命令都在CentOS 6.4 64位操作系统下实践 ...

  2. CentOS 6下编译安装MySQL 5.6

    一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...

  3. CentOS 下编译安装MySQL

    CnetOS 下编译安装 MySql 查看是否存在旧版本: rpm -qa | grep mysql 卸载旧版本: rpm -e mysql   #普通删除模式 rpm -e --nodeps mys ...

  4. CentOS源码编译安装MySQL 5.5.15

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

  5. CentOS下编译安装MySQL 5.6.21

    一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake:http://www.cnblog ...

  6. Linux CentOS6.5下编译安装MySQL 5.6.16【给力详细教程】

    一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake,从http://www.cmake ...

  7. Linux下编译安装MySQL

    一.环境准备yum install -y ncurses-devel libaio-develyum install -y cmake makeuseradd -s /sbin/nologin -M ...

  8. Linux CentOS6.5下编译安装MySQL 5.6

    检查:卸载掉原有MySql 因为mysql数据库在Linux上实在是太流行了,所以目前下载的主流Linux系统版本基本上都集成了mysql数据库在里面,我们可以通过如下命令来查看我们的操作系统上是否已 ...

  9. Linux(CentOS6.5)下编译安装MySQL Community Server 5.7.12

      组件 官方网站 直接下载地址 备注 mysql http://dev.mysql.com/downloads/mysql/ http://mirrors.sohu.com/mysql/MySQL- ...

随机推荐

  1. oracle如何实现自增?----用序列sequence的方法来实现

    将表t_user的字段ID设置为自增:(用序列sequence的方法来实现) ----创建表 Create  table  t_user( Id number(6),userid varchar2(2 ...

  2. JavaScript基础Curry化(021)

    时候我们希望函数可以分步接受参数,并在所有参数都到位后得到执行结果.为了实现这种机制,我们先了解函数在Javascript中的应用过程: 1. 函数的“应用”(Function Application ...

  3. Halcon斑点分析涉及算子及其高阶运用

    涉及算子 获取图像 使用ROI 对齐ROI或图像 校正图像 基础内容这里不再重述 预处理图像(过滤) 基础: mean_image(平均平滑过滤),gauss_filter(高斯滤波),binomia ...

  4. Taro 3 正式版发布:开放式跨端跨框架解决方案

    作者:凹凸曼 - yuche 从 Taro 第一个版本发布到现在,Taro 已经接受了来自于开源社区两年多的考验.今天我们很高兴地在党的生日发布 Taro 3(Taro Next)正式版,希望 Tar ...

  5. 前端笔记(创建顺序数组、取选中月最后一天日期、判断变量、git命令)

    创建一个从0开始的顺序数组 [...new Array(5).keys()] //[0,1,2,3,4] 数组反向 [0,1,2,3,4,5].reverse() //[4,3,2,1,0] 取选中月 ...

  6. node解压压缩包以及压缩图片

    node解压压缩包以及压缩图片 首先保证电脑安装node环境,下载地址:http://nodejs.cn //可以打开一个dos窗口输入node -v进行确认是否安装成功 C:\ > node ...

  7. MVC中model、dao、view、controlller、service之间的关系

    Model:是事物的模型,如Person.java,定义人的属性行为.pojo,OR maping,持久层 Dao:是持久化操作代码编写处,与数据库对接,如对Person进行增删改查. Service ...

  8. Git上传本地项目到远程仓库

    一.在gitee或其他仓库上创建工程,名称需要和本地工程名称一致. 二.找到本地项目工程,进入工程目录,如下图,然后依次执行下列命令: 1.git init //初始化本地仓库 2. git add ...

  9. centos7-解决vim无法找到问题

    vim编辑器是Linux中的强大组件,是vi编辑器的加强版 在Linux命令行输入vim时提示:-bash:vim:common not found,之后按着查询到的解决办法整好了:   解决步骤如下 ...

  10. kubernetes系列(十二) - 存储之Secret

    1. Secret简介 2. Secret类型 3. Service Account 4. Opaque 4.1 Opaque类型说明 4.2 Opaque创建方式 4.2.1 命令行创建 4.2.2 ...