mysql之mysql的安装

原文链接: http://www.cnblogs.com/RottenLeaf/p/9939662.html

此次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安装完毕!

 

转载于:https://www.cnblogs.com/RottenLeaf/p/9939662.html

你可能感兴趣的:(mysql之mysql的安装)