centos7编译mysql 5.7 源码

允我心安 提交于 2020-03-19 18:36:59

3 月,跳不动了?>>>

首先需要根据mysql的编译文档进行执行。mysql文档

  1. 需要些啥

    1. cmake 官网

      cmake的编译安装脚本
      	wget https://github.com/Kitware/CMake/releases/download/v3.16.5/cmake-3.16.5.tar.gz
      	tar zxvf cmake-3.16.5.tar.gz
      	cd cmake-3.16.5
      	./bootstrap --prefix=/usr/local
      	make -j4
      	make install
      
    2. make 程序 官网

      版本需要高于3.75,可以通过make --version查看
    3. 编译器版本

      编译需要的编译器需要支持起码 C++14 GCC 5.3 (Linux) Clang 4.0 (FreeBSD) XCode 9 (macOS) Developer Studio 12.6 (Solaris) Visual Studio 2017 (Windows)

    4. mysql C 语言的API

      需要编译器 C++ 或者 C99
    5. open ssl 库

      一个SSL库
      	#centos
      	yum install openssl-devel
      	#ubuntu
      	sudo apt-get install libssl-dev
      	#mac os
      	brew install openssl
      
    6. boost库 官网

      一般下载源码的时候会自带,而且不同版本对应的boost库可能不同 需要用来编译mysql但是一般不会用到。 cmake的时候需要声明boost库的位置

      	cmake . -DWITH_BOOST=/usr/local/boost_version_number
      
      下载mysql的时候最好下载对应有boost库的版本。 在这里插入图片描述
      	cmake . -DWITH_BOOST=/root/mysql-5.7.29/boost
      
    7. ncurses 库 官网

      	#centos
      	sudo yum install ncurses-devel
      	# ubuntu
      	sudo apt-get install libncurses5-dev libncursesw5-dev
      
    8. 足够多的剩余空间

    9. 可选测试工具 Perl

    完整版

    	# Preconfiguration setup
    	shell> groupadd mysql
    	shell> useradd -r -g mysql -s /bin/false mysql
    	# Beginning of source-build specific instructions
    	shell> tar zxvf mysql-VERSION.tar.gz
    	shell> cd mysql-VERSION
    	shell> mkdir bld
    	shell> cd bld
    	shell> cmake ..
    	shell> make
    	shell> make install
    	# End of source-build specific instructions
    	# Postinstallation setup
    	shell> cd /usr/local/mysql
    	shell> mkdir mysql-files
    	shell> chown mysql:mysql mysql-files
    	shell> chmod 750 mysql-files
    	shell> bin/mysqld --initialize --user=mysql
    	shell> bin/mysql_ssl_rsa_setup
    	shell> bin/mysqld_safe --user=mysql &
    	# Next command is optional
    	shell> cp support-files/mysql.server /etc/init.d/mysql.server
    
  2. 切换GCC版本到7

    	sudo yum install centos-release-scl
    	sudo yum install devtoolset-7
    	scl enable devtoolset-7 bash
    	gcc --version
    
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!