CentOS7 实战源码安装mysql5.7.17数据库服务器

一,准备工作

1.强烈建议
磁盘空间剩余量达到15GB
内存2G以上
步骤一致
确保依赖组件安装完毕
安装mysql5.7.17一致
centos 7

2.关闭selinux,关闭防火墙
2.1关闭防火墙
systemctl stop firewalld.service

2.2打开文件
vi /etc/selinux/config

2.3修改文件的配置
SELINUX=disabled

2.4安装cmake工具
yum -y install cmake

2.5下载boost路径(mysql5.7.17的必需依赖组件)
tar -xf boost_1_59_0.tar.gz

2.6yum安装其它依赖组件
yum -y install gcc gcc-c++ bzip2 bzip2-devel bzip2-libs python-devel ncurses
ncurses-devel openssl openssl-devel

2.7创建路径
mkdir -p /usr/local/mysql 安装的目录
mkdir -p /data/mydata 用来存放数据库文件

2.8创建mysql用户
useradd -M -s /sbin/nologin mysql

二,使用cmake工具对mysql5.7.17进行环境收集检验与配置相关模块
解压mysql源码包,并进入解压后的路径
tar -xf mysql-5.7.17.tar.gz
cd mysql-5.7.17
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mydata -
DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -
DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock
-DWITH_SSL=system -DWITH_ZLIB=system -DDEFAULT_CHARSET=utf8 -
DDEFAULT_COLLATION=utf8_general_ci -DDOWNLOAD_BOOST=1 -DWITH_BOOST=…/boost_1_59_0
-DENABLE_DOWNLOADS=1
参数详细信息解释:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定mysql数据库安装目录
-DMYSQL_DATADIR=/data/mydata \ #指定数据库文件路径
-DSYSCONFDIR=/etc \ #指定配置文件目录
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #安装INNOBASE存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \ #安装ARCHIVE存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ #安装BLACKHOLE存储引擎
-DWITH_READLINE=1 \ #使用readline功能
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ #连接文件位置
-DWITH_SSL=system \ #表示使用系统上的自带的SSL库
-DWITH_ZLIB=system \ #表示使用系统上的自带的ZLIB库
-DDEFAULT_CHARSET=utf8 \ #指定默认使用的字符集编码
-DDEFAULT_COLLATION=utf8_general_ci \ #指定默认使用的字符集校对规则
-DDOWNLOAD_BOOST=1
-DWITH_BOOST=…/boost_1_59_0 \ #指定Boost库的位置,mysql5.7必须添加该参数
-DENABLE_DOWNLOADS=1 #支持下载可选文件

三,编译并安装
make -j 4 && make install

如果第一次安装失败,第二次安装前需要删除CMakeCache.txt(在你解压的数据库文件中)

四,初始化mysql
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql -
-datadir=/data/mydata --socket=/tmp/mysql.sock

五,对mysql的相关路径进行更改权限
chown -R mysql:mysql /usr/local/mysql /data/mydata

六,修改配置文件
vi /etc/my.cnf
[mysqld]
datadir=/data/mydata
socket=/tmp/mysql.sock
symbolic-links=0
[mysqld_safe]
log-error=/usr/local/mysql/log/mysql.errlog
pid-file=/data/mydata/$hostname.pid

注意:datadir和socket要和初始化中的配置对应起来,log-error为错误日志,目录可以自定义,一般放在mysql中方便管理,

七,启停mysql
[root@localhost support-files]# ./mysql.server start
Starting MySQL.2019-08-03T14:19:37.028727Z mysqld_safe error: log-error set to
‘/usr/local/mysql/log/mysql.errlog’, however file don’t exists. Create writable for
user ‘mysql’.
ERROR! The server quit without updating PID file
(/data/mydata/localhost.localdomain.pid).
解决:
touch /usr/local/mysql/log/mysql.errlog
chown -R mysql:mysql /usr/local/mysql/log/mysql.errlog
启动:
/usr/local/mysql/support-files/mysql.server start
关闭:
/usr/local/mysql/support-files/mysql.server stop

八,登录mysql
/usr/local/mysql/bin/mysql -uroot -p

九,修改mysql密码
set password for ‘root’@‘localhost’=password(‘密码’);
mysql> flush privileges;
ERROR 1146 (42S02): Table ‘mysql.servers’ doesn’t exist
use mysql;
drop table if exists mysql.servers;
CREATE TABLE servers (
Server_name char(64) NOT NULL,
Host char(64) NOT NULL,Db char(64) NOT NULL,
Username char(64) NOT NULL,
Password char(64) NOT NULL,
Port int(4) DEFAULT NULL,
Socket char(64) DEFAULT NULL,
Wrapper char(64) NOT NULL,
Owner char(64) NOT NULL,
PRIMARY KEY (Server_name)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘MySQL Foreign Servers table’;

十,添加MySQL服务并设置mysql开机启动
cp -a /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysql
chkconfig --add mysql
chkconfig --list mysql(用于更新和查询系统服务的运行级别信息)
mysql 0:off 1:off 2:on 3:on 4:on 5:on 6:off
chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
使用mysql服务的方式操作启停mysql服务:
service mysql start #启动mysql服务器
service mysql stop #关闭mysql服务器
service mysql restart #重启mysql服务器

十一,设置mysql环境变量
执行软件连操作后就可以使用mysql命令进行重启关机等服务
ln -s /usr/local/mysql/bin/* /usr/sbin/

十二,成功使用 mysql -uroot -p 登录服务器

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

原克技术

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值