CentOS7.4 源码安装MySQL8.0
MySQL 8 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能!
以下为本人2018.4.23日安装过程的记录。整个过程大概需要一个小时,make && make install过程需要的时间较长。
一.环境
CentOS7.4 64位 最小化安装
二.准备工作
1.安装依赖
yum -y install wget cmake gcc gcc-c++ ncurses ncurses-devel libaio-devel openssl openssl-devel
2.下载源码包
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-boost-8.0.11.tar.gz (此版本带有boost)
3.创建mysql用户
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
4.创建安装目录和数据目录
mkdir -p /usr/local/mysql
mkdir -p /data/mysql
三.安装MySQL8.0.11
1.解压源码包
tar -zxf mysql-boost-8.0..tar.gz -C /usr/local
2.编译&安装
cd /usr/local/mysql-8.0.
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DMYSQL_TCP_PORT= -DWITH_BOOST=/usr/local/mysql-8.0./boost
make && make install
3.配置my.cnf文件
cat /etc/my.cnf
[mysqld]
server-id=
port=
basedir=/usr/local/mysql
datadir=/data/mysql
##请根据实际情况添加参数
4.目录权限修改
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /data/mysql
chmod /usr/local/mysql -R
chmod /data/mysql -R
5.初始化
bin/mysqld --initialize --user=mysql --datadir=/data/mysql/
bin/mysql_ssl_rsa_setup
6.启动mysql
bin/mysqld_safe --user=mysql &
7.修改账号密码
bin/mysql -uroot -p
mysql> alter user 'root'@'localhost' identified by "";
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
##添加远程特账号
mysql> create user root@'%' identified by '123456';
Query OK, 0 rows affected (0.08 sec)
mysql> grant all privileges on *.* to root@'%';
Query OK, 0 rows affected (0.04 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
8.创建软链接(非必要)
ln -s /usr/local/mysql/bin/* /usr/local/bin/
mysql -h 127.0.0.1 -P 3306 -uroot -p123456 -e "select version();"
mysql: [Warning] Using a password on the command line interface can be insecure.
+-----------+
| version() |
+-----------+
| 8.0.11 |
+-----------+
9.添加到启动(非必要)
cp support-files/mysql.server /etc/init.d/mysql.server
特此说明:MySQL官方推荐使用二进制安装的方式。(下图为官方文档截图)

CentOS7.4 源码安装MySQL8.0的更多相关文章
- Linux 6.8 源码安装MySQL8.0
搭建环境说明: 系统版本:Red Hat Enterprise Linux Server release 6.8 (Santiago) 内核版本:Linux 2.6.32-642.el6.x86_64 ...
- CentOS7源码安装Redis5.0.4非关系型数据库
源码安装redis-5.0.4 一. 下载redis 1. 需要连接网络 二. 案例(另一种安装方法) [root@localhost ~]# wget http://download.redis.i ...
- CentOS7 实战源码安装mysql5.7.17数据库服务器
CentOS7 实战源码安装mysql5.7.17数据库服务器 简介:实战演练mysql数据库服务器的搭建 mysql简介: mysql是一个开源的关系型数据库管理系统,现在是oracle公司旗下的 ...
- 源码安装 qemu-2.0.0 及其依赖 glib-2.12.12
源码安装qemu-2.0.0 下载源代码并解压 http://wiki.qemu-project.org/download/qemu-2.0.0.tar.bz2 .tar.gz 编译及安装: cd q ...
- CentOS7下源码安装mysql5.6
目录 准备工作 运行环境 确认你的安装版本 下载mysql 安装mysql 准备安装环境 编译和安装 配置mysql 单实例配置 单实例配置方法 添加防火墙 ...
- CentOS7 下源码安装 python3
CentOS 7 下源码安装 python3 在CentOS7下,默认安装的是python2.7:为满足项目要求,安装python3 的方法如下: 1. 首先安装python3.6可能使用的依 ...
- CentOS7下源码安装5.6.23
清理CentOS7下的MariaDB. [root@localhost ~]#rpm -qa | gremp mariadb [root@localhost ~]# rpm -e --node ...
- CentOS下源码安装vsftpd-3.0.0,并设置指定用户访问指定目录(附带完整配置文件)
1.卸载系统已经存在的ftp服务器 因为是源码安装,所以不能通过rpm -qa的方式查看是否已经安装ftp服务器,可以通过find / | grep vsftp*方式查看系统中存在哪些与vsftpd相 ...
- ubuntu16.04下源码安装onos1.0.2
由于工作需要,下载安装onos1.0.2的版本,大家看需求可以下载安装更高级的版本 参考链接:http://www.sdnlab.com/14650.html 1.系统环境 Ubuntu16.04 L ...
随机推荐
- linux系统增加开机启动服务/应用
操作 在/etc/init.d下新建示例脚本文件(customize.sh),该脚本会启动zookeeper服务.内容如下: #!/bin/sh /usr/local/zookeeper-/bin/z ...
- c# windows service 实现监控其他程序是否被关闭,关闭则报警
namespace MonitorService { public partial class MonitorSv : ServiceBase { string AppName = "&qu ...
- JAVA_SE基础——47.接口
如果一个抽象类中的所有方法都是抽象的,则可以将这个类用另一种方法来定义,即接口~ 在定义接口时,需要用interface关键字来声明,具体实例如code1 接口的定义格式:interface 接口名{ ...
- 我的PCB电路设计(一)
我的制板规则 过孔大小:14/24mil-(12/22-28/50) 一般过孔没必要太大.如果电流较大可以适当增大过孔,或者多加几个过孔 线宽大小:小信号线8mil,大电流线不等按1A电流30mil ...
- linux下安装redis和phpredis扩展
一.安装redis 1.下载redis-3.2.3.tar.gz wget http://download.redis.io/releases/redis-3.2.3.tar.gz 2.解压redis ...
- java Hibernate 处理 oracle xmltype类型
网上关于如何处理oracle xmltype类型的博客很多,我现在分享的是针对具体业务来的,我在oracle数据库entity表中detail插入了一条xmltype类型的数据 xml的详细内容如下: ...
- vue中的数据监听以及数据交互
现在我们来看一下vue中的数据监听事件$watch, js代码: new Vue({ el:"#div", data:{ arr:[,,] } }).$watch("ar ...
- enumerate给列表加索引
>>> list = ['a','b','c'] >>> for i,j in enumerate(list): print(i,j) 0 a 1 b 2 c &g ...
- Unity3D input.GetAxis
input.GetAxis用法:(GetAxis("Mouse X"),GetAxis("Mouse Y"),GetAxis("Mouse Scrol ...
- 基于Mysql 5.7 GTID 搭建双主Keepalived 高可用
实验环境 CentOS 6.9 MySQL 5.7.18 Keepalived v1.2.13 拓扑图 10.180.2.161 M1 10.180.2.162 M2 10.180.2.200 VIP ...