阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Arch Linux下源码编译安装MySQL 5.7.11

428次阅读
没有评论

共计 2759 个字符,预计需要花费 7 分钟才能阅读完成。

MySQL 版本:5.7.11

源码编译安装并使用 systemd 管理

由于种种原因,现住主流的 linux 发行版默认的 mysql 实现都采取了 MariaDB

Archlinux:
Note: MariaDB is now officially Arch Linux’s default implementation of MySQL. It is recommended for all users to upgrade to MariaDB.
Oracle MySQL was dropped to the AUR. See the announcement.

大致安装过程

# 下载源代码(源码有两个版本,一个是附带 boost 的,一个是不附带 boost 的,建议下载前者)
$ wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-boost-5.7.11.tar.gz

# 此时目录
$ pwd
/usr/local

# 增加用户组和用户
$ groupadd mysql
$ useradd -r -g mysql -s /bin/false mysql

# 解压缩
$ tar -zxvf mysql-boost-5.7.11.tar.gz

# 进入目录
$ cd mysql-boost-5.7.11
$ mkdir build
$ cd build

# configure the distribution
# 此处仅修改字符编码,WITH_BOOST 是知道 boost 目录(下载包附带的),WITH_SYSTEMD 是安装 systemd 支持脚本
# -DWITH_SYSTEMD=bool
# Whether to enable installation of systemd support files. By default, this option is disabled. When enabled,
# systemd support files are installed, and scripts such as mysqld_safe and the System V initialization script
# are not installed. On platforms where systemd is not available, enabling WITH_SYSTEMD results in an error
# from CMake.
$ cmake .. -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=/usr/local/mysql-5.7.11/boost -DWITH_SYSTEMD=ON

# 编译安装
$ make -j 4 && make install

# 进入目录
$ cd /usr/local/mysql

# 更改权限
$ chown -R mysql .
$ chgrp -R mysql .

# 初始化(此处会随机生成一个 root 用户的密码,要记录)
$ bin/mysqld –initialize –user=mysql

# SSH 连接
$ bin/mysql_ssl_rsa_setup

$ chown -R root .
$ chown -R mysql data

# 复制当前目录下的 mysqld.service 到 /usr/lib/systemd/system
$ cp ./mysqld.service /usr/lib/systemd/system/

# systemd 启动 mysql
$ systemctl start mysqld
Job for mysqld.service failed because the control process exited with error code. See “systemctl status mysqld.service” and “journalctl -xe” for details.

# 查看错误原因(自己挑重点看,大致原因是找不到 /var/run/mysqld 这个目录)
$ journalctl -xe
Apr 11 15:08:07 localhost mysqld[15304]: 2016-04-11T07:08:07.435947Z 0 [ERROR] /usr/local/mysql/bin/mysqld: Can’t create/write to file ‘/var/run/mysqld/mysqld.pid’ (Errcode: 2 – No such file or directo
Apr 11 15:08:07 localhost mysqld[15304]: 2016-04-11T07:08:07.435959Z 0 [ERROR] Can’t start server: can’t create PID file: No such file or directory

# 新建一个
$ mkdir /var/run/mysqld

# 更改权限
$ chown -R mysql /var/run/mysqld

# 启动和开机启动
$ systemctl start mysqld
$ systemctl enable mysqld

# 使用 mysql(密码为 mysql 初始化时自动生成的)
$ ./bin/mysql -uroot -p

相关链接

MySQL 源码安装文档:
http://dev.mysql.com/doc/refman/5.7/en/installing-source-distribution.html

MySQL 文档 cmake 选项:
http://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html

# 第一次进入 mysql 是要求更改密码的
mysql> ALTER USER USER() IDENTIFIED BY ‘123456’;

# 授权 root 用户,任意主机远程连接
mysql> GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;

# 建立链接,方便使用(可以修改 profile 文件的 PATH 环境变量)
$ ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql

# mysqld.pid 文件所在目录,/var/run/mysqld 在每次系统重启的时候都会自动删除,导致每次重启系统,自动启动失败
# 方案:每次系统启动的时候,自动建立文件夹
# 修改~/.bash_profile 文件,添加下面内容
# MYSQLD_DIR=/var/run/mysqld
# if [! -d “$MYSQLD_DIR”]; then
#    mkdir “$MYSQLD_DIR”
#    chown -R mysql:mysql “$MYSQLD_DIR”
# fi

$ vim ~/.bash_profile

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-05/144082.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计2759字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19348
评论数
4
阅读量
7800593
文章搜索
热门文章
开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板 1Panel:小白轻松构建 Web 服务与面板加固指南 哈喽,我是星哥,经常有人问我不...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
终于收到了以女儿为原型打印的3D玩偶了

终于收到了以女儿为原型打印的3D玩偶了

终于收到了以女儿为原型打印的 3D 玩偶了 前些日子参加某网站活动,获得一次实物 3D 打印的机会,于是从众多...
星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛 NAS-12:开源笔记的进化之路,效率玩家的新选择 前言 如何高效管理知识与笔记,已经成为技术...
自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个 AI 智能体 — 跟创业大佬对话 前言 智能体(Agent)已经成为创业者和技术人绕...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装 Black 群晖 DSM7.2 系统安装教程(在 Vmware 虚拟机中、实体机均可)! 前言 大家好,...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比 星哥玩云,带你从小白到上云高手。今天咱们就来聊聊——什...
每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站 - 手机博物馆 -CHAZ 3D Experience 一句话介绍:一个用 3D 方式重温...
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸 前言 作为天天跟架构图、拓扑图死磕的...
星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛 NAS-7:手把手教你免费内网穿透 -Cloudflare tunnel 前言 大家好,我是星...