此次MySQL安装的版本为:MySQL8.0

系统为:centos6.9 64位

一、利用yum仓库安装

wget https://repo.mysql.com//mysql80-community-release-el6-1.noarch.rpm 下载仓库文件的rpm包

rpm -ihv mysql80-community-release-el6-1.noarch.rpm   安装yum仓库包

yum install mysql-community-server -y  用yum安装

初始化:

service mysqld start

grep 'temporary password' /var/log/mysqld.log   查看初始密码

alter user 'root'@'localhost' identified by 'MySQLtest123'; 修改初始密码

二、编译安装

rpm包安装没有什么难度,只要去官网下载rpm包,就可以了。

之所以要用编译安装,主要是为了隐藏版本号。因为各种中间件或多或少都是有一些漏洞的,黑客可以通过扫描你中间件的版本号从而有针对的攻击你的系统

比如用telnet ip 3306,就能看到mysql的版本信息,为了隐藏版本信息,最好还是使用编译安装。

安装前的准备:

yum install -y autoconf automake m4 libtool make cmake bison gcc ncurses-devel libaio glibc-devel.i686 glibc-devel gcc-c++       安装依赖包

编译安装gcc

MySQL8.0编译安装需要用gcc的版本为 4.8.3以上,如果是centos6,需要编译安装更高版本的gcc,如果是centos7 可以略过这一步:

gcc全版本下载地址:http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/

我这里是编译安装的gcc-6.1.0

wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-6.1.0/gcc-6.1.0.tar.gz

tar xf gcc-6.1.0.tar.gz

cd  gcc-6.1.0

# 载编译需要的依赖包:./contrib/download_prerequisites

./configure --prefix=/usr/local/gcc-6.1.0/   --enable-bootstrap --enable-threads=posix --enable-languages=c,c++,objc,obj-c++

make &&make install

用先新安装的高版本gcc替换之前的gcc环境:

ln -s /usr/local/gcc-6.1.0/bin/gcc /usr/bin/gcc

ln -s /usr/local/gcc-6.1.0/bin/g++ /usr/bin/g++

ln -s /usr/local/gcc-6.1.0/bin/c++ /usr/bin/c++

ln -s /usr/local/gcc-6.1.0/bin/gcc /usr/bin/cc 将新版本的gcc软连接到/usr/bin下面使系统能够识别

mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak

ln -s /usr/local/gcc-6.1.0/lib64/libstdc++.so.6.0.18 /usr/lib64/libstdc++.so.6

友情提示:编译gcc耗时非常长

安装boost库:(下载二进制包解压到指定目录即可)

wget https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.tar.gz

tar -xf boost_1_66_0.tar.gz

mv boost_1_66_0 /usr/local/boost

编译安装mysql8.0

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.13.tar.gz

tar -xf mysql-8.0.13.tar.gz

cd mysql-8.0.13

修改版本信息:

当切换到源码目录之后,其中有一个VERSION文件保存了mysql的版本信息,

执行cmake:

cmake -DWITH_DEBUG=1 \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_DATADIR=/var/lib/mysql \

-DWITH_BOOST=/usr/local/boost \

-DSYSCONFDIR=/etc \

-DEFAULT_CHARSET=utf8mb4 \

-DDEFAULT_COLLATION=utf8mb4_general_ci \

-DENABLED_LOCAL_INFILE=1 \

-DEXTRA_CHARSETS=all \

-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock

关于cmake:

网上很多教程都是直接贴上cmake操作命令,但是我觉得还是需要理解这些cmake参数到底是什么意思,这样也好方便自己做一些个性化定制。

cmake各项参数意义,请参见:https://blog.csdn.net/sanbingyutuoniao123/article/details/74544634

执行完cmake之后进行编译安装:make && make install

提供新的服务脚本:

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

chmod +x  /etc/init.d/mysqld

创建pid文件目录:

mkdir /var/run/mysqld

chown -R mysql:mysql /var/run/mysqld

将mysql的二进制文件,导入环境变量:

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

. /etc/profile

初始化数据库:

mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/var/lib/mysql

service mysqld start   启动数据库

grep 'temporary password' /var/log/mysqld.log   查看初始密码

根据初始密码进入数据库并修改root用户的密码:

alter user 'root'@'localhost' identified by 'Mysql^123321$';

至此mysql8.0安装完毕!

mysql之mysql的安装的更多相关文章

  1. mysql 5.6.24安装实例

    安装前准备工作: 1)编辑PATH路径 vim /etc/profile PATH=/home/mysql/bin:/home/mysql/lib:$PATH export PATH 2)生效PATH ...

  2. yum安装mysql和mysql源,配置mysql

    申明,不要用root安装 1. 下载mysql的repo源 $ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm ...

  3. MySQL 5.5编译安装

    MYSQL数据库安装方法 yum/rpm方式安装mysql 只要执行yum install mysql-server即可. yum/rpm方式安装mysql应用场景:yum/rpm安装适用对数据库要求 ...

  4. mysql解压版安装

    1.下载MySQL解压版(32位) http://dev.mysql.com/downloads/mysql/

  5. MySQL(无GUI) Windows安装和启动

    1.在官网http://dev.mysql.com/downloads/下载 MySQL Community Server 2.解压后是这个样子: 3.找到cmd,并且用管理员权限启动,必须!不然那没 ...

  6. MySQL的下载与安装 和 navicat for mysql 安装使用

    新手上路-MySQL安装 目录结构 Windows平台 MySQL安装 示例数据导入 Linux平台 CentOS系统 Ubuntu系统 FAQ 密码生成工具-keepass 修改提示符 图形工具 删 ...

  7. mysql 5.0.46安装配置

    http://os.chinaunix.net/a2008/0801/986/000000986346.shtml RPM包和源码包存放位置 /usr/local/src 源码包编译安装位置(pref ...

  8. Mysql 5.7 Linux安装详细步骤

    版权声明:本文为博主原创文章,未经博主允许不得转载. 1.下载安装包 http://dev.mysql.com/downloads/mysql/#downloads 推荐下载通用安装方法的TAR包(h ...

  9. mysql 5.7.16安装与给远程连接权限

    ZIP Archive版是免安装的.只要解压就行了.不需要安装.我的放在d盘啦. 1.配置: 也就是my.ini文件的由来. 把my-default.ini(此文件是解压之后,自带的)这个文件复制一下 ...

  10. MySQL绿色版的安装(mysql-5.6.22-win32.zip)

    1.数据库下载 Mysql官方网站:http://www.mysql.com/,数据库下载地址:http://www.mysql.com/downloads/.从官方网站可以找到两种文件包,一种是ex ...

随机推荐

  1. tomcat集群搭建集成nginx负载均衡

    软件基础+版本: 1.3台centos7系统,其中都已经配置完成了jdk环境,jdk的版本为 [root@node03 bin]# java -version java version "1 ...

  2. 【转载】各种SQL在PIG中实现

    转自:http://guoyunsky.iteye.com/blog/1317084 我这里以Mysql 5.1.x为例,Pig的版本是0.8 同时我将数据放在了两个文件,存放在/tmp/data_f ...

  3. 记manjaro图形驱动删除后的一次补救

    #一.前言 众所周知,NVIDIA的闭源驱动在Linux上的兼容性不是很好,再加上我不玩游戏,于是我就想卸载独显只留核显.我以为我装了独显和核显两种驱动,原本想直接删除独显驱动,没想到删除的是bumb ...

  4. TCP/IP协议-为什么说TCP是可靠连接

    我们平常经常说UDP是不可靠连接,TCP是可靠连接,然而TCP为什么是可靠的呢 1. TCP和UDP的优缺点TCP 缺点: [1] 三次握手四次挥手,传输更多包,浪费一些带宽[2] 为了进行可靠通信, ...

  5. 1025 PAT Ranking (25分)

    1025 PAT Ranking (25分) 1. 题目 2. 思路 设置结构体, 先对每一个local排序,再整合后排序 3. 注意点 整体排序时注意如果分数相同的情况下还要按照编号排序 4. 代码 ...

  6. Android开发实战——记账本(3)

    开发日志(3)——适配器 昨天将bean类还有DatabaseHelper类写完.为了在MainActivity中调用,将数据保存到数据库中并显示出来.所以要先编写适配器CostListAdapter ...

  7. 【14】N的二进制中1的个数

    class Solution { public int findKthLargest(int[] nums, int k) { PriorityQueue<Integer> h = new ...

  8. 使用pdf.js显示pdf文件

    <script type="text/javascript" src="build/pdf.min.js"></script> < ...

  9. MyBatis(5)——解决属性名与列名不一致的问题

    解决属性名与列名不一致的问题 问题描述: 当实体类的属性与数据库的列名不对应时取不到该列数据 说明:MyBatis会根据查询的列名设值(列名的setter方法),然后以此列名为做查询等操作,在此过程中 ...

  10. C++转换构造函数和隐式转换函数

    今天是第一次听到C++还有个转换构造函数,之前经常见到默认构造函数.拷贝构造函数.析构函数,但是从没听说过转换构造函数,隐式转换函数也是一样,C++的确是够博大精深的,再次叹服!          其 ...