在CentOS 7问题(很多)中编译MySQL 5.7.20

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在CentOS 7问题(很多)中编译MySQL 5.7.20相关的知识,希望对你有一定的参考价值。

我正在尝试使用CentOS(无GUI)设置mysql服务器,我需要切换到OpenSSL而不是YaSSL才能访问加密工具。

运行cmake时会出现问题。起初我得到了cmake无法找到提升的错误,我修复了这个添加参数-DWITH_BOOST。

cmake线如下。

cmake . -DWITH_READLINE=ON -DWITH_SSL=system -DWITH_BOOST=/usr/local/src/mysql-5.7.20/boost/

调整后,我又跑了CMAKE,我收到了几个错误。

  1. SSL错误,cmake无法找到OpenSSL文件。我检查了库是否已安装,我还下载了tar.gz文件并将其解压缩并将cmake指向该文件夹,但这些都没有效果。
  2. 找不到NUMA库,我再次检查并安装它,此时我运行了系统更新以检查所有内容,但这并没有解决问题。
  3. 找不到ncurses,同样的事情,是在系统上但由于某种原因cmake无法找到那些。
  4. 找不到libaio,我没有安装这个,我安装了,再次使用ram cmake,再次cmake无法找到它。

我一直在四处寻找,试图找出所有这些问题,我一直在加入来自不同网站的信息,但仍然无法弄清楚这一点。

感谢大家的帮助。

答案

也许尝试make clean; cmake clean; ldconfig然后运行你的cmake命令。有时系统找不到共享库,ldconfig刷新库搜索路径。当我编译某些东西(emscripten?)时,这有点帮助了,因为编译错误的出现需要很多库。

make clean; cmake clean将确保编译器在重新编译时不会查看旧的库搜索路径。

另一答案

你正面临着与MySQL的依赖关系。如果你真的不需要从源代码编译,你仍然可以使用RPM安装更容易。 RPM方法在这里描述:https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/

当你从源头询问一个现成的安装时,这就是我刚才做的,并且在新的CentOS 7.4 minimal,2 vcpus 3Gb上工作了:

yum group install -y 'Development Tools'
yum install -y cmake ncurses-devel curl

curl -Ovk https://cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.20.tar.gz
tar zxf mysql-5.7.20.tar.gz
cd mysql-5.7.20

cmake . -DDOWNLOAD_BOOST=1 -DWITH_BOOST=$HOME/boost -DENABLE_DOWNLOADS=1
make -j2
make install

之后,您需要配置它,添加启动脚本,当然还要保护它。这里有一些额外的文档:http://howtolamp.com/lamp/mysql/5.6/installing/ https://dev.mysql.com/doc/refman/5.7/en/mysql-secure-installation.html

以上是关于在CentOS 7问题(很多)中编译MySQL 5.7.20的主要内容,如果未能解决你的问题,请参考以下文章

CentOS 7.4 使用源码包编译安装MySQL 5.7.20

CentOS MySQL 5.7编译安装

在CentOS7.4上手动编译安装Mysql-5.7.20

centos6.5编译调试mysql-5.7.18

Centos7 mysql-community-5.7.11编译安装

centos 7 编译安装mysql 5.6