Mysql 是一个关系型数据库管理系统,运行于Linux 操作系统之上,Apache 和Nginx 作为 Web服务器,Mysql作为后台数据库,PHP /Perl /Python 作为脚本解释器。这四款都是免费或开源的。就能建立起一个稳定、高速的网站系统。Mysql 是一个真正的多线程、多用户的SQL 数据库服务,凭借其高性能、高可靠和易于使用的特性,成为服务器领域中最受欢迎的开源数据库系统。

        实验环境:在 centos 7 上手工编译安装Mysql 5.7.17   (使用NAT模式,在线加载yum源)

         实验所需的软件包:Mysql-5.7.17      和   boost_1_59_0   

链接:https://pan.baidu.com/s/11zp9-XAEEGnlC6ouQUe7Gw 密码:sn0l

1.准备工作,安装编译环境

Mysql 5.7 编译安装(附有软件包)_云计算

2.源码编译安装

(1)创建运行用户,为了加强数据库服务的权限控制,创建专门的运行用户,如mysql .此用户不能直接登录到系统,也不可以创建宿主文件夹。

[root@localhost ~]# useradd -s /sbin/nologin mysql

(2)解压mysql 源码包,释放到/opt/ 目录下。mysql 数据库需要boost 这个库,将 boost 源码包解压到 /usr/local/ 目录下。

Mysql 5.7 编译安装(附有软件包)_其他_02

(3)配置cmake,将默认使用的字符集设置为utf8 ,并添加其他字符集的支持。

Mysql 5.7 编译安装(附有软件包)_云计算_03

注意:如果在CMAKE的过程中有报错,当报错解决后,需要把源码目录中的CMakeCache.txt文件删除,然后再重新CMAKE,否则错误依旧--

(4)编译并安装。mysql 5.7 在make  && make install 的过程时间会很长,大约1小时,主要看CPU性能

Mysql 5.7 编译安装(附有软件包)_其他_04

3.安装后的其他调整

(1)。对数据库目录权限设定

chown -R mysql.mysql /usr/local/mysql/

(2).修改配置文件  vim /etc/my.cnf   添加以下内容

Mysql 5.7 编译安装(附有软件包)_云计算_05

(3)把配置文件 /etc/my.cnf   属主、属组 改为mysql

chown mysql:mysql /etc/my.cnf

(4)设置环境变量

Mysql 5.7 编译安装(附有软件包)_其他_06

(5)初始化数据库


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

(6)把mysql.service  复制到 /usr/lib/systemd/system/  便于管理,启动mysql

cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
systemctl daemon-reload
systemctl start mysqld

查看mysql运行状态,和3306端口是否开启

Mysql 5.7 编译安装(附有软件包)_其他_07

Mysql 5.7 编译安装(附有软件包)_云计算_08

(7)给root 账户设置密码为 abc123 提示输入的是原始密码

mysqladmin -u root -p password "abc123"

访问mysql 数据库

Mysql 5.7 编译安装(附有软件包)_云计算_09