此次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. MATLAB一些常用的function

    在MATLAB中一些常用的算数符号与我们平时所用的不同,比如:根号,平方,e,以及对数函数等. (1)平方:a^2 意思为a的平方,亦可以写成a*a: (2)根号:sqrt(x)意思为对x开根号,x既 ...

  2. c++指针实例

    #include <iostream> using namespace std; int main () { ; // 实际变量的声明 int* ip; // 指针变量的声明 ip = & ...

  3. DSDT/SSDT

    版权说明:本文章参考tonymacx86的Patching LAPTOP DSDT/SSDTs这篇文章 如果需要转载,请注明原文地址:http://blog.csdn.net/wr132/articl ...

  4. Mysql中判断是否存在

    不能像sqlserver一样用if not exists或者exists,应该这样: DECLARE p_count int; set p_count=0; select 1 into p_count ...

  5. 2020ICPC 博弈题 纳新一百的石子游戏

    https://ac.nowcoder.com/acm/contest/4010/C 这道题为尼姆博弈的其中一种裸类型: 要求求出前(1~n)堆的必胜方案. 对于这种类型,假如我们现在就前k堆,那么我 ...

  6. 最大/最小de K个数/第K个数

    题目 在未排序的数组中找到第 k 个最大的元素.请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素. 思路 堆排序 收获 用优先队列实现最大最小堆 注意下列代码中优先队列 ...

  7. 【C语言】用C语言输出“心形”图案

    在你们的世界里,是不是觉得程序猿一点浪漫都不懂?其实不是的,程序猿的世界也是很浪漫滴! 傻瓜版 int main() { printf("❤"); ; } 高级版 //版本一:单个 ...

  8. 每天进步一点点------Allegro 蛇形走线

    对于高速数据总线,如果芯片内部没有延时调节功能,通常使用蛇形走线来调整延时以满足时序要求,也就是通常所说的等长线.蛇形走线的目的是调整延时,所以这一类网络都有延迟或相对延迟约束.所以在做蛇形走线调整时 ...

  9. maven一直加载2.0.0.M7 的 config server 失败

    之前学习的时候使用F版的SpringBoot管理项目依赖一直好好的,今天不知idea为何抽疯,一直加载失败,各种重启,清除,没用 只能像之前学习注册consul 时将F版的SpringBoot 改为G ...

  10. Python结束当前运行的代码

    import sys print(0) print(1) print(2) # 到此结束运行 sys.exit() # 已结束,以下不会执行 print(4) print(5)