源码安装!!!

经过了三个晚上的试验+面向百度、CSDN,最终总结出来的,期间遇到各种错误,创了3个虚拟机,最终总结出来的,经过两次测试没有问题
二改,发现之前写的还不是通俗易懂

0.首先准备工作,源码包

 mysql-boost-5.7.14.tar.gz

下载链接https://downloads.mysql.com/archives/community/,找到自己所要的版本
在这里插入图片描述

1.先创建一个存放这个包的目录
mkdir /soft
将包传输到Linux中的根下soft中
利用xfpt传输,在xshell中也可以直接快捷键ctrl+alt+f

mysql-boost-5.7.14.tar.gz 文件拖入虚拟机/soft/目录中,然后进入/soft目录


2.安装开发工具和开发包

yum install -y cmake gcc-c++* make ncurses-devel
yum install libaio libaio-devel openssl-devel -y
yum install perl-Data-Dumper -y
yum install net-tools vim -y

都安装完,且没有报错,执行下一步


3.之后解压文件
此时所在的目录一定要是源码文件在的目录/soft,也就是刚刚存放文件的目录/soft
cd /soft/
tar zvxf mysql-boost-5.7.14.tar.gz -C /usr/local/src/


4.为mysql创建用户和组

groupadd -r -g 306 mysql
useradd -g 306 -r -u 306 mysql

5.cmake编译源码安装MySQL数据库
!!!!!!!
一定先进入文件解压所到的目录
cd /usr/local/src/mysql-5.7.14/
然后再依次执行下面代码

yum install libarchive


下面代码很长,不要少复制了
========   多行都要复制,\是换行符

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL-USER=mysql \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=./boost

=========================================================================================
等待上面执行完
=========================================================================================
make -j 4 && make install

代码长度,一定不要少复制了
\

这个等待时间要挺长的,如果卡住了,请关掉虚拟机,然后把配置给到4G+4核(比这多更好)
然后重启

===!!!重新执行就行了!!!但是一定要记得切换目录,要不然会报错===
cd /usr/local/src/mysql-5.7.14/
make -j 4 && make install   

安装完成且没有报错进行下一步


6.更改文件夹属主和属组

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

7.初始化mysql,初始化结束会给出随机密码

初始化代码

=========多行都要复制,\是换行符
/usr/local/mysql/bin/mysqld --initialize \
--user=mysql --datadir=/usr/local/mysql/data \
--basedir=/usr/local/mysql/
=========

随机密码类似下面这样,在最后一行

root@localhost: FhvqcGRy9W#8

8.为mysql提供主配置文件

cd /usr/local/mysql/
\cp support-files/my-default.cnf /etc/my.cnf
================================
vim /etc/my.cnf
添加如下行指定mysql数据文件的存放位置

[mysqld]
datadir = /usr/local/mysql/data

改成图片上这样就行了
该城图片这样


9.为mysql提供sysv服务脚本

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld  --添加为系统服务
chkconfig mysqld on     --添加为系统服务

10.修改PATH环境变量,让系统可以直接使用mysql的相关命令

vim /etc/profile.d/mysql.sh
=========将下面这段内容写入保存
	export PATH=$PATH:/usr/local/mysql/bin
=========
!!!!!!!!!一定要做下面这步
source /etc/profile.d/mysql.sh  这个是为了现在应用环境

在这里插入图片描述


启动MySQL

systemctl start mysqld

=========================================================================================

查看MySQL运行状态

systemctl status mysqld.service  --如果为active则表示MySQL已经运行了
或者
systemctl is-active mysql.service   --显示为active也是启动了

至此就全部安装完成了


11.如果不记得随机密码了可以用下面方法查看,如果查看不到,大概率是没初始化成功,建议重装

默认有个随机密码:
more /var/log/mysql.log
也可以使用grep命令查询密码:
grep 'temporary password' /var/log/mysqld.log

12.登录修改密码

mysql -u root -p   登录,输入之前记录的随机密码
========进入MySQL终端:
修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

如果报错,说明密码太短,MySQL没有认证成功,可以修改认证规则:
set global validate_password_policy=0;
set global validate_password_length=1;
再次修改就OK了

如果不记得随机密码了可以用下面方法查看,如果查看不到,大概率是没初始化成功,建议重装

默认有个随机密码:
more /var/log/mysql.log
也可以使用grep命令查询密码:
grep 'temporary password' /var/log/mysqld.log
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐