mysql源码编译,安装 ,配置

在安装mysql8前,一些不可或缺的解决依赖性的包,由于版本的问题你的cmake…等包需要升级
在安装mysql的虚拟机中 添加阿里云的镜像库

#/etc/yum.repos.d/aliyun.repo
[base]
name=CentOS-os
baseurl=http://mirrors.aliyun.com/centos/7/os/x86_64/
gpgcheck=0


[centos-sclo-sclo]
name=CentOS-7 - SCLo sclo
baseurl=http://mirrors.aliyun.com/centos/7/sclo/x86_64/sclo/
gpgcheck=0

[centos-sclo-rh]
name=CentOS-7 - SCLo rh
baseurl=http://mirrors.aliyun.com/centos/7/sclo/x86_64/rh/
gpgcheck=0

如果虚拟机不能上网,在真实主机(针对电脑本来就为linux系统,vm虚拟机同样适用)

iptables -t nat -I POSTROUTING -s 172.25.14.0/24 -j MASQUERADE

刷新yum源
在这里插入图片描述

在这里插入图片描述

cmake升级


tar zxf cmake-3.18.1.tar.gz
cd cmake-3.18.1
./configure
make
make install
#tar包需要编译
yum install cmake3-* -y
#cmake3-3.6.1-2.el7.x86_64.rpm  cmake3-data-3.6.1-2.el7.noarch.rpm 
#下载rpm不需要编译 

gcc升级

#gcc升级:
#首先设置aliyun的centos源,再执行以下命令,上面有设置方法
 
yum install devtoolset-7-gcc*
cl enable devtoolset-7 bash
which gcc
gcc --version

安装jsoncpp

yum install jsoncpp-* -y
#jsoncpp-0.10.5-2.el7.x86_64.rpm jsoncpp-devel-0.10.5-2.el7.x86_64.rpm
#阿里开发者基本可以找到这些包

一些前置条件解决后,我们可以来编译mysql了。需要注意的是mysql需要:两个内核 内存>=3G 硬盘可用容量>=15G,不然在编译时容易不能编译

tar zxf mysql-boost-8.0.21.tar.gz
cd mysql-8.0.21/
 mkdir build
 cmake ../ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/mysql \
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DSYSCONFDIR=/etc \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_0900_ai_ci \
-DWITH_BOOST=/root/mysql-8.0.21/boost/boost_1_72_0/ 
make j2 #给两个内核 但是!对于普通计算机仍然需要40-60分钟的时间
make install 

mysql安装后配置数据库

#拷贝启动脚本:
 cd /usr/local/lnmp/mysql/support-files/
 cp mysql.server /etc/init.d/mysqld

#新建用户:
 useradd -M -d /usr/local/lnmp/mysql/ -s /sbin/nologin mysql

#创建数据目录:
 mkdir -p /data/mysql
 chown mysql.mysql /data/mysql

#初始化数据库:
 mysqld --initialize --user=mysql
 

修改路径

[root@server1 ~]# cat /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/data/mysql/mysql.sock
#skip-grant-tables 
#打开注释 进入数据库可不用密码

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
[root@server1 ~]# cat .bash_profile 
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
	. ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin:/usr/local/php/bin:/usr/local/mysql/bin

export PATH

source .bash_profile

初始化后修改密码

  vim /etc/my.cnf
skip-grant-tables		//添加参数
 /etc/init.d/mysqld restart
 mysql -p
mysql> update mysql.user set authentication_string='' where user='root';
vim /etc/my.cnf
skip-grant-tables	//注释或删除参数
 /etc/init.d/mysqld restart
 mysql -p
mysql> alter user root@localhost identified by 'Westos+007';
mysql> flush privileges;

在这里插入图片描述
安装完成

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值