MySQL-8.0.12源码安装实例

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介:

1、通过官网下载对应的版本后,通过FTP上传至云服务器的/usr/local/src 目录

2、解压缩文件

[root@JSH-01 src]# ls
mysql-boost-8.0.12.tar.gz
[root@JSH-01 src]# tar zxvf mysql-boost-8.0.12.tar.gz
[root@JSH-01 src]# ls
mysql-8.0.12  mysql-boost-8.0.12.tar.gz

3、重命名文件夹

[root@JSH-01 src]# mv mysql-8.0.12  mysql
[root@JSH-01 src]# ls
mysql  mysql-boost-8.0.12.tar.gz
[root@JSH-01 src]# cd mysql
[root@JSH-01 mysql]# ls
boost           config.h.cmake    Doxyfile.in        libbinlogevents      man         plugin             sql            testclients  win
client          configure.cmake   doxygen_resources  libbinlogstandalone  mysql-test  README             sql-common     unittest
cmake           dbug              extra              libmysql             mysys       run_doxygen.cmake  storage        utilities
CMakeLists.txt  Docs              include            libservices          mysys_ssl   scripts            strings        VERSION
components      Doxyfile-ignored  INSTALL            LICENSE              packaging   share              support-files  vio

4、安装cmake工具 yum install -y cmake

5、cmake构建编译环境

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/src/mysql  -DMYSQL_DATADIR=/usr/local/src/mysql/var  -DSYSCONFDIR=/usr/local/src/mysql/etc -DWITH_DEBUG=0  -DWITH_INNODB_MEMCACHED=1  -DWITH_PARTITION_STORAGE_ENGINE=1  -DENABLED_PROFILING=0  -DCMAKE_C_FLAGS="-O3"  -DCMAKE_CXX_FLAGS="-O3"

6、cmake报错汇总:

错误1、 CMake Warning at CMakeLists.txt:185 (MESSAGE):
  Could not find devtoolset gcc

解决方案:yum install -y gcc

再次执行cmake编译

错误2、**-- Could NOT find Git (missing:  GIT_EXECUTABLE) **

解决方案:yum install -y git

错误3、-- The CXX compiler identification is unknown
CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found.   Please set CMAKE_CXX_COMPILER to a valid compiler path or name.

解决方案:yum install -y gcc gcc-c++

再次执行cmake编译

错误4、CMake Error at cmake/boost.cmake:101 (MESSAGE):
  You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>

解决方案:编译选项中增加
-DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/src/mysql
回车后,系统会自动下载并解压缩该文件

错误5、Cannot find appropriate system libraries for WITH_SSL=system.
Make sure you have specified a supported SSL version. 
Valid options are : 
system (use the OS openssl library), 
yes (synonym for system), 
</path/to/custom/openssl/installation>, 
wolfssl (use wolfSSL. See extra/README-wolfssl.txt on how to set this up)

错误6、CMake Error at cmake/ssl.cmake:68 (MESSAGE):
  Please install the appropriate openssl developer package.

解决方案5:编译选项中增加 -DWITH_SSL=system

解决方案6:yum install ncurses-devel 和 yum install openssl-devel

7、执行编译 make -j N(N为线程数,一般为服务器中CPU的个数)

查看Linux系统CPU信息:

cat /proc/cpuinfo

查看Linux系统CPU物理个数:

cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

8、cmake -j 编译过程中的错误信息

[ 56%] Building CXX object storage/innobase/CMakeFiles/innobase.dir/handler/i_s.cc.o
错误  c++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://bugzilla.redhat.com/bugzilla> for instructions.
make[2]: *** [storage/innobase/CMakeFiles/innobase.dir/handler/handler0alter.cc.o] Error 4
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [storage/innobase/CMakeFiles/innobase.dir/all] Error 2
make: *** [all] Error 2

解决方案:根据错误信息提示 internal compiler error: Killed (program cc1plus) 判断为编译过程中内存耗尽, 导致了编译中断,解决办法就是增加一个交换分区:

[root@JSH-01 mysql]# dd if=/dev/zero of=/swapfile bs=1k count=2048000    //创建分区文件, 大小 2G
2048000+0 records in
2048000+0 records out
2097152000 bytes (2.1 GB) copied, 16.9483 s, 124 MB/s
[root@JSH-01 mysql]# mkswap /swapfile   //生成 swap 文件系统
Setting up swapspace version 1, size = 2047996 KiB
no label, UUID=5c0b0fa8-7396-4b89-998f-29b6b269a938
[root@JSH-01 mysql]# swapon /swapfile   //激活 swap 文件
swapon: /swapfile: insecure permissions 0644, 0600 suggested.
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
安全 关系型数据库 MySQL
轻松入门MySQL:MySQL8权限管理详解,角色和用户操作实例(18)
轻松入门MySQL:MySQL8权限管理详解,角色和用户操作实例(18)
|
2月前
|
存储 SQL 关系型数据库
创建并配置RDS实例
在阿里云上创建RDS实例涉及登录控制台、进入RDS管理页面、创建实例、选择数据库引擎和版本、配置实例规格与存储、设定网络与安全组、设置实例信息、确认订单并支付,最后初始化数据库。操作步骤可能因界面更新或数据库引擎不同略有差异。
23 1
|
4月前
|
弹性计算 关系型数据库 MySQL
快速上手阿里云RDS MySQL实例创建,轻松管理数据库
快速上手阿里云RDS MySQL实例创建,轻松管理数据库 在数字化时代,数据已成为企业的核心资产。如何高效、安全地存储和管理这些数据,成为企业在云计算时代亟待解决的问题。阿里云的RDS(关系型数据库服务)应运而生,为用户提供稳定、可靠的云上数据库解决方案。本文将详细介绍如何通过阿里云RDS管理控制台快速创建RDS MySQL实例,让您轻松上手,快速部署数据库。
179 2
|
4天前
|
Prometheus 监控 Cloud Native
使用mysqld_exporter监控所有MySQL实例
使用mysqld_exporter监控所有MySQL实例
33 2
|
2月前
|
弹性计算 网络协议 关系型数据库
ECS域名问题之国内实例能不能导入阿里云新加坡的ECS和RDS如何解决
ECS(Elastic Compute Service,弹性计算服务)是云计算服务提供商提供的一种基础云服务,允许用户在云端获取和配置虚拟服务器。以下是ECS服务使用中的一些常见问题及其解答的合集:
|
10天前
|
分布式计算 DataWorks 关系型数据库
DataWorks操作报错合集之DataWorks集成实例绑定到同一个vpc下面,也添加了RDS的IP白名单报错:数据源配置有误,请检查,该怎么处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
26 0
|
11天前
|
DataWorks NoSQL 关系型数据库
DataWorks操作报错合集之在使用 DataWorks 进行 MongoDB 同步时遇到了连通性测试失败,实例配置和 MongoDB 白名单配置均正确,且同 VPC 下 MySQL 可以成功连接并同步,但 MongoDB 却无法完成同样的操作如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
29 1
|
13天前
|
关系型数据库 MySQL
MySQL基础(二:常用数据类型及MySQL创建过程实例)
MySQL基础(二:常用数据类型及MySQL创建过程实例)
MySQL基础(二:常用数据类型及MySQL创建过程实例)
|
17天前
|
关系型数据库 MySQL 数据库
一台MySQL数据库启动多个实例
一台MySQL数据库启动多个实例
|
17天前
|
存储 SQL 关系型数据库
MySQL数据库:深入解析与应用实例
MySQL数据库:深入解析与应用实例
36 0