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

创建mysql用户

$ useradd -g mysql mysql

4、创建安装目录和数据目录

mkdir  -p /usr/local/mysql

5、解压源码包

tar  -zxvf mysql-boost-8.0.11.tar.gz -C /usr/local

6、编译安装(这里需要一点时间,还需要一定的内存!!我的虚拟机是3个G的内存)

cd  /usr/local/mysql-8.0.11

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DMYSQL_TCP_PORT=3306 -DWITH_BOOST=/usr/local/mysql-8.0.11/boost

make  && make install

7、配置my.cnf文件

>/etc/my.cnf

vi  /etc/my.cnf

多次踩坑之后,我的my.cnf内容是

[mysqld]

socket=/tmp/mysql.sock

symbolic-links=0

server-id=1

port=3306

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

default_authentication_plugin=mysql_native_password

[mysqld_safe]

err-log=/var/log/mysqld.log

pid-file=/var/lib/mysql/mysqld.pid

!includedir/etc/my.cnf.d

8、创建目录,并修改权限信息

mkdir  -p /var/run/mysqld

chown  mysql:mysql /var/run/mysqld

mkdir   /var/lib/mysql

mkdir /var/log/mariadb

touch  /var/log/mariadb/mariadb.log

chown  -R mysql:mysql /var/log/mariadb/

chown  -R mysql:mysql /var/lib/mysql/

chown  -R mysql:mysql /usr/local/mysql

chmod  755 /usr/local/mysql -R

9、初始化

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

此处会出现mysql登陆root密码  一定要记住密码

bin/mysql_ssl_rsa_setup

10、启动mysql

scripts/mysqld_safe--user=mysql &

11、使用root用户登录,注意原始密码的位置
bin/mysql  -uroot -p

12、修改密码,设置远程登录,创建数据库实例(这里是mysql里语句操作)

--修改root密码

alter user 'root'@'localhost' identified by '123456';

-- 刷新系统权限表

FLUSH PRIVILEGES;

alter user 'root'@'localhost' identified with mysql_native_password by "123456";

-- 刷新系统权限表

FLUSH PRIVILEGES;

alter user 'root'@'localhost' identified with caching_sha2_password by "123456";

-- 刷新系统权限表

FLUSH PRIVILEGES;

--设置远程登陆权限

CREATE USER 'root'@'%' IDENTIFIED BY '123456';

-- 刷新系统权限表

FLUSH PRIVILEGES;

-- 授权

GRANT ALL PRIVILEGES ON *.*  TO 'root'@'localhost' WITH GRANT OPTIO

GRANT select,insert,update,delete,create,drop,index,alter ON *.* TO 'root'@'%' WITH GRANT OPTION;

GRANT show databases,create temporary tables,create view,show view ON *.* TO 'root'@'%' WITH GRANT OPTION;

-- 刷新系统权限表

FLUSH PRIVILEGES;

创建数据库实例TEST

create database TEST DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

13、然后使用navicat或者toad for mysql连接一下,看一下防火墙是否关闭

14、设为开机自动启动

将服务文件拷贝到init.d下,并重命名为mysql

cp  /usr/local/mysql/support-files/mysql.server   /etc/init.d/mysqld

赋予可执行权限

chmod  +x   /etc/init.d/mysqld

添加服务

chkconfig--add mysqld

显示服务列表

chkconfig–list

15、mysql用户下重启mysql服务

root用户下,找到刚才启动的mysql进程

ps  -ef | grep mysqld

切换到mysql用户,启动服务

---------------------
作者:pk972703678
来源:CSDN
原文:https://blog.csdn.net/pk972703678/article/details/80469096
版权声明:本文为博主原创文章,转载请附上博文链接!

msyql8.0编译安装的更多相关文章

  1. CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14

    准备篇: CentOS 7.0系统安装配置图解教程 http://www.osyunwei.com/archives/7829.html 一.配置防火墙,开启80端口.3306端口 CentOS 7. ...

  2. centos 7.0 编译安装php 7.0.3

    php下载页面 http://cn2.php.net/downloads.php 7.0.3多地区下载页面 http://cn2.php.net/get/php-7.0.3.tar.gz/from/a ...

  3. Valgrind 3.11.0编译安装

    Valgrind 3.11.0编译安装 Valgrind是一款用于内存调试.内存泄漏检测以及性能分析的软件开发工具. Valgrind遵守GNU通用公共许可证条款,是一款自由软件. 到3.3.0版本为 ...

  4. CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14方法分享

    一.配置防火墙,开启80端口.3306端口 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop fi ...

  5. Redis 3.0 编译安装

    Redis 3.0 编译安装 http://www.xuchanggang.cn/archives/991.html

  6. centos 7.0 编译安装php 5.6.7

    编译安装php参考资料 MySQL PHP API http://dev.mysql.com/doc/apis-php/en/index.html nginx + php +mysql 最简单安装 官 ...

  7. centos 7.0 编译安装mysql 5.6.22 再次总结 成功编译安装~ 越来越熟练了~

    查找php.ini文件所在位置 [root@localhost /]# find -name php.ini ./usr/etc/php/etc/php.ini mysql官网的安装说明http:// ...

  8. hadoop2.1.0编译安装教程

    由于现在hadoop2.0还处于beta版本,在apache官方网站上发布的beta版本中只有编译好的32bit可用,如果你直接下载安装在64bit的linux系统的机器上,运行会报一个INFO ut ...

  9. hadoop2.1.0和hadoop2.2.0编译安装教程

    由于现在hadoop2.0还处于beta版本,在apache官方网站上发布的beta版本中只有编译好的32bit可用,如果你直接下载安装在64bit的linux系统的机器上,运行会报一个INFO ut ...

随机推荐

  1. 【转载】C#中List集合使用GetRange方法获取指定索引范围内的所有值

    在C#的List集合中有时候需要获取指定索引位置范围的元素对象来组成一个新的List集合,此时就可使用到List集合的扩展方法GetRange方法,GetRange方法专门用于获取List集合指定范围 ...

  2. vue+element 通过ref修改一切硬核样式~

    今天的需求是这样的,点击按钮,弹出一个Popover 弹出框 然后老大说,把弹出框往下移移,box-shadow值设的大一些... 然后就查看elenent的Popover文档,并没有方法,而且这个组 ...

  3. Java使用JsonPatch

    老规矩,概念的东西不再此处体现,baidu即可自行解决,直入主题,动手第一. 导入所需的jar文件 pom.xml     <dependencies>        <depend ...

  4. 8.7 —— 排序函数及 splice 插入

    .排序,按自己的逻辑 nid_item_vec.sort([](const NID_PBDATA &l, const NID_PBDATA &r) -> bool { retur ...

  5. Parity game(带权并查集+离散化)

    题目链接  //kuangbin 题意: 现在你和你的朋友正在玩一种游戏. 你的朋友写下一串0和1的序列,然后你选择其中一串子序列(如[3,5])并且问他这个序列是包含奇数个1还是偶数个1(和是奇数还 ...

  6. python的tkinter,能画什么图?

    今天从下午忙到现在,睡觉. 这个能绘点图的. import json import tkinter as tk from tkinter import filedialog from tkinter ...

  7. Product Oriented Recurrence(Codeforces Round #566 (Div. 2)E+矩阵快速幂+欧拉降幂)

    传送门 题目 \[ \begin{aligned} &f_n=c^{2*n-6}f_{n-1}f_{n-2}f_{n-3}&\\ \end{aligned} \] 思路 我们通过迭代发 ...

  8. windows 上运行 sslocal 提示 libcrypto(OpenSSL) not found 解决办法

    1.下载最新版ss客户端,使用pip安装的并不是最新版,去github下载最新版安装 2.安装openssl客户端 OpenSSL for Windows:https://wiki.openssl.o ...

  9. java怎么比较两个实体类的属性值

    分享一下比较两个实体类的工具包 package cn.mollie.utils; import java.beans.Introspector; import java.beans.PropertyD ...

  10. .NET Core项目修改project.json来引用其他目录下的源码等文件的办法 & 解决多框架时 project.json 与 app.config冲突的问题

    作者: zyl910 一.缘由 项目规模大了后,经常会出现源码文件分布在不同目录的情况,但.NET Core项目默认只有项目目录下的源码文件,且不支持“Add As Link”方式引入文件.这时需要手 ...